Re: [RFC PATCH v8 13/13] trace-cmd: Add VM tracing over FIFOs transport

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 22 Feb 2019 20:05:39 +0200
Slavomir Kaslev <kaslevs@xxxxxxxxxx> wrote:

> FIFOs offer ~3x the throughput of vsockets. This patch adds support for using
> FIFOs to stream tracing data back to the host when tracing VMs.
> 
> Signed-off-by: Slavomir Kaslev <kaslevs@xxxxxxxxxx>
> ---
>  include/trace-cmd/trace-cmd.h  |  8 ++--
>  tracecmd/include/trace-local.h |  4 +-
>  tracecmd/trace-agent.c         | 40 ++++++++++++++--
>  tracecmd/trace-msg.c           | 26 ++++++----
>  tracecmd/trace-record.c        | 87 ++++++++++++++++++++++++++++++----
>  5 files changed, 137 insertions(+), 28 deletions(-)
> 
> diff --git a/include/trace-cmd/trace-cmd.h b/include/trace-cmd/trace-cmd.h
> index 52962e9..27ba89d 100644
> --- a/include/trace-cmd/trace-cmd.h
> +++ b/include/trace-cmd/trace-cmd.h
> @@ -333,16 +333,16 @@ bool tracecmd_msg_done(struct tracecmd_msg_handle *msg_handle);
>  void tracecmd_msg_set_done(struct tracecmd_msg_handle *msg_handle);
>  
>  int tracecmd_msg_send_trace_req(struct tracecmd_msg_handle *msg_handle,
> -				int argc, char **argv);
> +				int argc, char **argv, bool use_fifos);
>  int tracecmd_msg_recv_trace_req(struct tracecmd_msg_handle *msg_handle,
> -				int *argc, char ***argv);
> +				int *argc, char ***argv, bool *use_fifos);
>  
>  int tracecmd_msg_send_trace_resp(struct tracecmd_msg_handle *msg_handle,
>  				 int nr_cpus, int page_size,
> -				 unsigned int *ports);
> +				 unsigned int *ports, bool use_fifos);
>  int tracecmd_msg_recv_trace_resp(struct tracecmd_msg_handle *msg_handle,
>  				 int *nr_cpus, int *page_size,
> -				 unsigned int **ports);
> +				 unsigned int **ports, bool *use_fifos);

Hmm, maybe flags would be good to keep. We can put "use_fifos" in the
flags field of the ports being passed across.

-- Steve

>  
>  /* --- Plugin handling --- */
>  extern struct tep_plugin_option trace_ftrace_options[];
> diff --git a/tracecmd/include/trace-local.h b/tracecmd/include/trace-local.h
> index d32ba88..d7bdb1f 100644




[Index of Archives]     [Linux USB Development]     [Linux USB Development]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux