[tip:perf/core] perf session: Don't report zero period samples for slave events

From: tip-bot for Jiri Olsa
Date: Thu Feb 28 2019 - 02:44:50 EST


Commit-ID: 529c1a9e18c3b470d2eff7879923eda40b1431db
Gitweb: https://git.kernel.org/tip/529c1a9e18c3b470d2eff7879923eda40b1431db
Author: Jiri Olsa <jolsa@xxxxxxxxxx>
AuthorDate: Wed, 20 Feb 2019 13:27:55 +0100
Committer: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
CommitDate: Wed, 20 Feb 2019 16:07:51 -0300

perf session: Don't report zero period samples for slave events

There's no reason to deliver a sample with zero period. It means there
was no value for slave event since its last group leader sample.

Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
Cc: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>
Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Link: http://lkml.kernel.org/r/20190220122800.864-2-jolsa@xxxxxxxxxx
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
---
tools/perf/util/session.c | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
index 18fb9c8cbf9c..c764bbc91009 100644
--- a/tools/perf/util/session.c
+++ b/tools/perf/util/session.c
@@ -1202,6 +1202,13 @@ static int deliver_sample_value(struct perf_evlist *evlist,
return 0;
}

+ /*
+ * There's no reason to deliver sample
+ * for zero period, bail out.
+ */
+ if (!sample->period)
+ return 0;
+
return tool->sample(tool, event, sample, sid->evsel, machine);
}