This patchset adds support for tracing guest kernels to trace-cmd. Changes in v5: - add FIFOs transport for tracing data - fixed a bug in tracecmd_msg_wait_close Changes in v4: - detect and use splice(2) on vsock sockets if possible - switch port numbers to unsigned int - trace-cmd record --date flag is now set for all guests if provided by the user - removed grow_cap and exponential buffer size growth Changes in v3: - addressed Steven's feedback - detect and disable guest tracing if <linux/vm_sockets.h> is not available - the --date flag is now treated as global for all guest instances - fixed a bug that caused --date to be ignored for host tracing data when tracing guests Changes in v2: - rebased on top of protocol V3 - fixed system clock timestamps with the --date flag Slavomir Kaslev (10): trace-cmd: Add tracecmd_create_recorder_virt function trace-cmd: Add TRACE_REQ and TRACE_RESP messages trace-cmd: Add buffer instance flags for tracing in guest and agent context trace-cmd: Add VM kernel tracing over vsockets transport trace-cmd: Use splice(2) for vsockets if available trace-cmd: Add `trace-cmd setup-guest` command trace-cmd: Try to autodetect number of guest CPUs in setup-guest if not specified trace-cmd: Make setup-guest auto attach FIFOs to the guest VM config trace-cmd: Set both input and output to non-blocking when recording is stopped trace-cmd: Add VM tracing over FIFOs transport Steven Rostedt (VMware) (1): trace-cmd: Detect if vsockets are available Makefile | 7 + include/trace-cmd/trace-cmd.h | 17 +- lib/trace-cmd/trace-recorder.c | 69 ++- tracecmd/Makefile | 7 +- tracecmd/include/trace-local.h | 26 ++ tracecmd/trace-agent.c | 257 +++++++++++ tracecmd/trace-cmd.c | 4 + tracecmd/trace-msg.c | 222 +++++++++- tracecmd/trace-record.c | 759 +++++++++++++++++++++++++++++++-- tracecmd/trace-setup-guest.c | 243 +++++++++++ tracecmd/trace-usage.c | 21 +- 11 files changed, 1557 insertions(+), 75 deletions(-) create mode 100644 tracecmd/trace-agent.c create mode 100644 tracecmd/trace-setup-guest.c -- 2.19.1