[PATCH 01/21] perf trace: Only insert blank duration bracket when tracing syscalls

Arnaldo Carvalho de Melo
2015-02-25T21:47:19Z

When printing just events, i.e. '--no-sys --ev some:events' it makes no
sense to waste screen space.

Before:

# trace --no-sys --ev probe:*
84481.704 ( ): probe:vfs_getname:(ffffffff811ed023) pathname="/etc/services")
84481.892 ( ): probe:vfs_getname:(ffffffff811ed023) pathname="/etc/services")
84482.230 ( ): probe:vfs_getname:(ffffffff811ed023) pathname="/etc/resolv.conf")
84482.481 ( ): probe:vfs_getname:(ffffffff811ed023) pathname="/etc/hosts")
85097.725 ( ): probe:vfs_getname:(ffffffff811ed023) pathname="/root"
#

After:

# trace --no-sys --ev probe:*
0.000 probe:vfs_getname:(ffffffff811ed023) pathname="/root")
1.711 probe:vfs_getname:(ffffffff811ed023) pathname="/etc/localtime")
2.103 probe:vfs_getname:(ffffffff811ed023) pathname="/etc/localtime")
^C#

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Borislav Petkov <bp@suse.de>
Cc: David Ahern <dsahern@gmail.com>
Cc: Don Zickus <dzickus@redhat.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/n/tip-jhryxgnam8zecq0q0wsy6pyb@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/builtin-trace.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c
index b1c1df9bfb26..3a696aa70630 100644
--- a/tools/perf/builtin-trace.c
+++ b/tools/perf/builtin-trace.c
@@ -1840,7 +1840,11 @@ static int trace__event_handler(struct trace *trace, struct perf_evsel *evsel,
{
trace__printf_interrupted_entry(trace, sample);
trace__fprintf_tstamp(trace, sample->time, trace->output);
- fprintf(trace->output, "(%9.9s): %s:", " ", evsel->name);
+
+ if (trace->trace_syscalls)
+ fprintf(trace->output, "( ): ");
+
+ fprintf(trace->output, "%s:", evsel->name);

if (evsel->tp_format) {
event_format__fprintf(evsel->tp_format, sample->cpu,
--
1.9.3