summaryrefslogtreecommitdiff
path: root/tools/perf/util/hist.c
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2010-05-14 17:36:42 +0400
committerArnaldo Carvalho de Melo <acme@redhat.com>2010-05-14 17:36:42 +0400
commitc8446b9bdabcb0caa61bb341bd73c58f7104b503 (patch)
treeb2530bfbbd893017e9515bd48f2ffa8845860759 /tools/perf/util/hist.c
parent5d2be7cb198a0a6bc6088d3806fb7261b184ad89 (diff)
downloadlinux-c8446b9bdabcb0caa61bb341bd73c58f7104b503.tar.xz
perf hist: Make event__totals per hists
This is one more thing that started global but are more useful per hist or per session. Cc: Frédéric Weisbecker <fweisbec@gmail.com> Cc: Mike Galbraith <efault@gmx.de> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Tom Zanussi <tzanussi@gmail.com> LKML-Reference: <new-submission> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/hist.c')
-rw-r--r--tools/perf/util/hist.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/tools/perf/util/hist.c b/tools/perf/util/hist.c
index 5dc4f8429eda..1614ad710046 100644
--- a/tools/perf/util/hist.c
+++ b/tools/perf/util/hist.c
@@ -1028,3 +1028,24 @@ int hist_entry__annotate(struct hist_entry *self, struct list_head *head)
pclose(file);
return 0;
}
+
+void hists__inc_nr_events(struct hists *self, u32 type)
+{
+ ++self->hists.stats.nr_events[0];
+ ++self->hists.stats.nr_events[type];
+}
+
+size_t hists__fprintf_nr_events(struct hists *self, FILE *fp)
+{
+ int i;
+ size_t ret = 0;
+
+ for (i = 0; i < PERF_RECORD_HEADER_MAX; ++i) {
+ if (!event__name[i])
+ continue;
+ ret += fprintf(fp, "%10s events: %10d\n",
+ event__name[i], self->stats.nr_events[i]);
+ }
+
+ return ret;
+}