mbox series

[v3,0/7,POC] trace-cmd: Timetamps sync using PTP-like algorithm, relying on vsock events.

Message ID 20190208134918.5618-1-tstoyanov@vmware.com (mailing list archive)
Headers show
Series trace-cmd: Timetamps sync using PTP-like algorithm, relying on vsock events. | expand

Message

Tzvetomir Stoyanov Feb. 8, 2019, 1:49 p.m. UTC
[ V3 changes: 
 - Removed any magic constants, used in the PTP-like algorithm, 
   as Slavomir Kaslev suggested.
 - Implemented new algorithm, based on mapping kvm_exit events 
   in host context to vsock_send events in guest context, 
   suggested by Steven Rostedt. 
]

This patch series is a POC for timestamps sync between guest and host machines.
It implelents two algorithms: 
    - PTP-like algorithm, using vsock events for getting the current time.
    - algorithm based on mapping kvm_exit events in host context to vsock_send 
      events in guest context.
Both algorithms run simultaneously, so the results can be easily compared.
The "#if" directive at the end of tracecmd_msg_snd_time_sync() can be used 
to swith between the results of the both algorithms - which one of them to be 
written in the trace file.

The patch series depends on Slavomir's changes, introduced by the patch series
"Add VM kernel tracing over vsockets and FIFOs"


Tzvetomir Stoyanov (7):
  trace-cmd: Implemented new lib API: tracecmd_local_events_system()
  trace-cmd: Added support for negative time offsets in trace.dat file
  trace-cmd: Fixed logic in tracecmd_read_page_record()
  trace-cmd: Added implementation of htonll() and ntohll()
  trace-cmd: Refactored make_instances() and tracecmd_remove_instances()
  trace-cmd: Find and store pids of tasks, which run virtual CPUs of
    given VM
  trace-cmd [POC]: Implemented timestamps synch PTP-like algorithm,
    using vsock events.

 include/trace-cmd/trace-cmd.h  |   8 +-
 lib/trace-cmd/trace-input.c    |  18 +-
 lib/trace-cmd/trace-util.c     |  99 ++++--
 tracecmd/include/trace-local.h |   9 +
 tracecmd/include/trace-msg.h   |  10 +
 tracecmd/trace-listen.c        |   3 +
 tracecmd/trace-msg.c           | 543 ++++++++++++++++++++++++++++++++-
 tracecmd/trace-read.c          |   4 +-
 tracecmd/trace-record.c        | 465 ++++++++++++++++++++++------
 9 files changed, 1020 insertions(+), 139 deletions(-)