qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Static tracepoint control via trace-event


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] Static tracepoint control via trace-event
Date: Tue, 19 Oct 2010 14:52:34 +0100

On Tue, Oct 19, 2010 at 2:36 PM, Daniel P. Berrange <address@hidden> wrote:
> On Tue, Oct 19, 2010 at 03:08:08PM +0200, Jan Kiszka wrote:
>> Hi Stefan,
>>
>> just had a closer look at qemu's new tracing framework. Looks cool,
>> though it leaves a bit room for improvements. ;)
>>
>> One quirk I stumbled over quickly was the "disable" tag in trace-events.
>> It confused me first as qemu starts without any tracepoint enabled by
>> default and I thought I had to hack the file. Then I read the doc and
>> wondered which exiting or future backend would come without sufficiently
>> fast dynamic tracepoint control. Do you have any in mind?
>>
>> Instead of making it a compile-time switch (except for simpletrace), I
>> would vote for declaring the simpletrace usage as the only one: disable
>> sets the default state of the dynamic tracepoint. That way we could use
>> trace-events to define a useful set of standard, moderate-impact
>> tracepoints that shall be on. Others will still be available once a
>> backend is configured, but remain off until enabled during runtime.
>> Anything else looks like overkill to me.
>
> FYI with the DTrace/SystemTAP backend I posted yesterday, the 'disable'
> keyword is effectively completely ignored. All tracepoints are disabled
> when QEMU is running normally. Only when a end user runs a dtrace script
> that references a QEMU tracepoint, is that specific tracepoint enabled.

I think that makes sense for external trace backends.  DTrace can
launch a process for you with the probes you want enabled from the
start.  The simpletrace backend can't really do this so probes can be
enabled/disabled at compile-time (e.g. early startup tracing).

Stefan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]