[PATCH 3/4] perf trace: Fix summary percentage when processing files
From: David Ahern
Date: Wed Dec 04 2013 - 21:42:52 EST
Getting a divide by 0 when events are processed from a file:
perf trace -i perf.data -s
...
dnsmasq (1684), 10 events, inf%, 0.000 msec
The problem is that the event count is not incremented as events are
processed. With this patch:
perf trace -i perf.data -s
...
dnsmasq (1684), 10 events, 8.9%, 0.000 msec
Signed-off-by: David Ahern <dsahern@xxxxxxxxx>
---
tools/perf/builtin-trace.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c
index 8f47eaae2f34..0203324fe585 100644
--- a/tools/perf/builtin-trace.c
+++ b/tools/perf/builtin-trace.c
@@ -1770,8 +1770,10 @@ static int trace__process_sample(struct perf_tool *tool,
if (!trace->full_time && trace->base_time == 0)
trace->base_time = sample->time;
- if (handler)
+ if (handler) {
+ ++trace->nr_events;
handler(trace, evsel, sample);
+ }
return err;
}
--
1.8.3.4 (Apple Git-47)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/