From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=60957 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PwIUJ-0002OE-EO for qemu-devel@nongnu.org; Sun, 06 Mar 2011 13:15:30 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PwIR0-0005mg-CK for qemu-devel@nongnu.org; Sun, 06 Mar 2011 13:12:03 -0500 Received: from hall.aurel32.net ([88.191.126.93]:44799) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PwIR0-0005mI-7A for qemu-devel@nongnu.org; Sun, 06 Mar 2011 13:12:02 -0500 Date: Sun, 6 Mar 2011 19:12:00 +0100 From: Aurelien Jarno Subject: Re: [Qemu-devel] [PATCH] docs: Update stderr and simple backend, add systemtap backend Message-ID: <20110306181200.GE32068@volta.aurel32.net> References: <1298469621-23393-1-git-send-email-stefanha@linux.vnet.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Content-Disposition: inline In-Reply-To: <1298469621-23393-1-git-send-email-stefanha@linux.vnet.ibm.com> List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefan Hajnoczi Cc: qemu-devel@nongnu.org On Wed, Feb 23, 2011 at 02:00:21PM +0000, Stefan Hajnoczi wrote: > The following additions to the tracing documentation are included: > > 1. Move "stderr" backend documentation to top-level and out of "simple" > backend. Include hints on when this backend is useful. > > 2. Document the "simple" backend thread-safety limitation. > > 3. Document the "dtrace" backend for SystemTap. > > Signed-off-by: Stefan Hajnoczi > --- > docs/tracing.txt | 30 ++++++++++++++++++++++++++---- > 1 files changed, 26 insertions(+), 4 deletions(-) Thanks, applied. > diff --git a/docs/tracing.txt b/docs/tracing.txt > index 21183f9..a6cc56f 100644 > --- a/docs/tracing.txt > +++ b/docs/tracing.txt > @@ -126,6 +126,14 @@ The "nop" backend generates empty trace event functions so that the compiler > can optimize out trace events completely. This is the default and imposes no > performance penalty. > > +=== Stderr === > + > +The "stderr" backend sends trace events directly to standard error. This > +effectively turns trace events into debug printfs. > + > +This is the simplest backend and can be used together with existing code that > +uses DPRINTF(). > + > === Simpletrace === > > The "simple" backend supports common use cases and comes as part of the QEMU > @@ -133,10 +141,10 @@ source tree. It may not be as powerful as platform-specific or third-party > trace backends but it is portable. This is the recommended trace backend > unless you have specific needs for more advanced backends. > > -=== Stderr === > - > -The "stderr" backend sends trace events directly to standard error output > -during emulation. > +Warning: the "simple" backend is not thread-safe so only enable trace events > +that are executed while the global mutex is held. Much of QEMU meets this > +requirement but some utility functions like qemu_malloc() or thread-related > +code cannot be safely traced using the "simple" backend. > > ==== Monitor commands ==== > > @@ -187,3 +195,17 @@ consistent. > The "ust" backend uses the LTTng Userspace Tracer library. There are no > monitor commands built into QEMU, instead UST utilities should be used to list, > enable/disable, and dump traces. > + > +=== SystemTap === > + > +The "dtrace" backend uses DTrace sdt probes but has only been tested with > +SystemTap. When SystemTap support is detected a .stp file with wrapper probes > +is generated to make use in scripts more convenient. This step can also be > +performed manually after a build in order to change the binary name in the .stp > +probes: > + > + scripts/tracetool --dtrace --stap \ > + --binary path/to/qemu-binary \ > + --target-type system \ > + --target-arch x86_64 \ > + qemu.stp > -- > 1.7.2.3 > > > -- Aurelien Jarno GPG: 1024D/F1BCDB73 aurelien@aurel32.net http://www.aurel32.net