From patchwork Tue May 25 10:24:11 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [2/7] trace: Support disabled events in trace-events Date: Tue, 25 May 2010 00:24:11 -0000 From: Stefan Hajnoczi X-Patchwork-Id: 53526 Message-Id: <1274783056-14759-3-git-send-email-stefanha@linux.vnet.ibm.com> To: , Cc: Jan Kiszka , Anthony Liguori , Avi Kivity , Stefan Hajnoczi , Prerna Saxena Sometimes it is useful to disable a trace event. Removing the event from trace-events is not enough since source code will call the trace_*() function for the event. This patch makes it easy to build without specific trace events by marking them disabled in trace-events: disable multiwrite_cb(void *mcb, int ret) "mcb %p ret %d" This builds without the multiwrite_cb trace event. Signed-off-by: Stefan Hajnoczi --- v2: * This patch is new in v2 trace-events | 4 +++- tracetool | 10 ++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/trace-events b/trace-events index a37d3cc..5efaa86 100644 --- a/trace-events +++ b/trace-events @@ -12,10 +12,12 @@ # # Format of a trace event: # -# ( [, ] ...) "" +# [disable] ( [, ] ...) "" # # Example: qemu_malloc(size_t size) "size %zu" # +# The "disable" keyword will build without the trace event. +# # The must be a valid as a C function name. # # Types should be standard C types. Use void * for pointers because the trace diff --git a/tracetool b/tracetool index 766a9ba..53d3612 100755 --- a/tracetool +++ b/tracetool @@ -110,7 +110,7 @@ linetoc_end_nop() # Process stdin by calling begin, line, and end functions for the backend convert() { - local begin process_line end + local begin process_line end str disable begin="lineto$1_begin_$backend" process_line="lineto$1_$backend" end="lineto$1_end_$backend" @@ -123,8 +123,14 @@ convert() str=${str%%#*} test -z "$str" && continue + # Process the line. The nop backend handles disabled lines. + disable=${str%%disable*} echo - "$process_line" "$str" + if test -z "$disable"; then + "lineto$1_nop" "${str##disable}" + else + "$process_line" "$str" + fi done echo