Thread (1 message) 1 message, 1 author, 2012-07-24

Re: Re: [RFC PATCH 0/6] virtio-trace: Support virtio-trace

From: Stefan Hajnoczi <hidden>
Date: 2012-07-24 13:43:45
Also in: lkml, qemu-devel

On Tue, Jul 24, 2012 at 12:03 PM, Masami Hiramatsu
[off-list ref] wrote:
(2012/07/24 19:02), Stefan Hajnoczi wrote:
quoted
On Tue, Jul 24, 2012 at 3:36 AM, Yoshihiro YUNOMAE
[off-list ref] wrote:
quoted
The performance of each method is compared as follows:
 [1] Native
     - only recording trace data to ring-buffer on a guest
 [2] Virtio-trace
     - running a trace agent on a guest
     - a reader on a host opens FIFO using cat command
 [3] IVRing
     - A SystemTap script in a guest records trace data to IVRing.
       -- probe points are same as ftrace.
 [4] Virtio-serial(normal)
     - A reader(using cat) on a guest output trace data to a host using
       standard output via virtio-serial.
The first time I read this I thought you are adding a new virtio-trace
device.  But it looks like this series really add splice support to
virtio-console and that yields a big performance improvement when
sending trace_pipe_raw.
Yes, sorry for the confusion. Actually this is an enhancement of
virtio-serial. I'm working with Yoshihiro on this feature.
quoted
Guest ftrace is useful and I like this.  Have you thought about
controlling ftrace from the host?  Perhaps a command could be added to
the QEMU guest agent which basically invokes trace-cmd/perf.
As you can see, guest trace-agent can be controlled via a
control channel. In our scenario, host tools can control that
instead of guest one.

We are considering that exporting the tracing part of guest's
debugfs to host via another virtio-serial channel by using
9pfs, so that the host tools can refer that.

(In this scenario, guest trace-agent will also provide 9pfs server.
Since it means that the agent can handle writing a special file,
trace-agent can be controlled via the special file on exported
debugfs.)

Of course, this also requires modifying trace-cmd/perf to accept
some options like guest-debugfs mount point, guest's serial
channel pipe (or unix socket?), etc. However, it will be a small
change.
Okay, thanks for explaining some of the ideas you have.  I won't ask
more because it's out of scope for this patch series :).

Stefan
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help