OSDN Git Service

trace: allow PRI*64 at beginning and ending of format string
authorStefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Tue, 13 Sep 2011 12:34:35 +0000 (13:34 +0100)
committerBlue Swirl <blauwirbel@gmail.com>
Sat, 17 Sep 2011 15:14:05 +0000 (15:14 +0000)
commit913540a376f01569227b9a6480a2e96ae9d1d406
treec085aed1587380ad7d94d3d47e1e5f78a38f3746
parent2f4a725b94289250b7fd570f059117b4595d89e7
trace: allow PRI*64 at beginning and ending of format string

The tracetool parser only picks up PRI*64 and other format string macros
when enclosed between double quoted strings.  Lift this restriction by
extracting everything after the closing ')' as the format string:

  cpu_set_apic_base(uint64_t val) "%016"PRIx64
                                  ^^        ^^

One trick here: it turns out that backslashes in the format string like
"\n" were being interpreted by echo(1).  Fix this by using the POSIX
printf(1) command instead.  Although it normally does not make sense to
include backslashes in trace event format strings, an injected newline
causes tracetool to emit a broken header file and I want to eliminate
cases where broken output is emitted, even if the input was bad.

Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
docs/tracing.txt
scripts/tracetool