[tip: perf/core] perf evsel: Rearrange perf_evsel__config_leader_sampling()
From: tip-bot2 for Adrian Hunter
Date: Wed Apr 22 2020 - 08:20:50 EST
The following commit has been merged into the perf/core branch of tip:
Commit-ID: 3713eb371c873e6bed713d78f1bdd5e8be0764a3
Gitweb: https://git.kernel.org/tip/3713eb371c873e6bed713d78f1bdd5e8be0764a3
Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
AuthorDate: Wed, 01 Apr 2020 13:16:11 +03:00
Committer: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
CommitterDate: Sat, 18 Apr 2020 09:05:00 -03:00
perf evsel: Rearrange perf_evsel__config_leader_sampling()
In preparation for adding support for leader sampling with AUX area events.
Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
Link: http://lore.kernel.org/lkml/20200401101613.6201-15-adrian.hunter@xxxxxxxxx
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
---
tools/perf/util/record.c | 26 +++++++++++++-------------
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/tools/perf/util/record.c b/tools/perf/util/record.c
index 8870ae4..32aeeb8 100644
--- a/tools/perf/util/record.c
+++ b/tools/perf/util/record.c
@@ -172,24 +172,24 @@ static void perf_evsel__config_leader_sampling(struct evsel *evsel)
struct perf_event_attr *attr = &evsel->core.attr;
struct evsel *leader = evsel->leader;
+ if (leader == evsel || !leader->sample_read)
+ return;
+
/*
* Disable sampling for all group members other
* than leader in case leader 'leads' the sampling.
*/
- if (leader != evsel && leader->sample_read) {
- attr->freq = 0;
- attr->sample_freq = 0;
- attr->sample_period = 0;
- attr->write_backward = 0;
+ attr->freq = 0;
+ attr->sample_freq = 0;
+ attr->sample_period = 0;
+ attr->write_backward = 0;
- /*
- * We don't get sample for slave events, we make them
- * when delivering group leader sample. Set the slave
- * event to follow the master sample_type to ease up
- * report.
- */
- attr->sample_type = leader->core.attr.sample_type;
- }
+ /*
+ * We don't get a sample for slave events, we make them when delivering
+ * the group leader sample. Set the slave event to follow the master
+ * sample_type to ease up reporting.
+ */
+ attr->sample_type = leader->core.attr.sample_type;
}
void perf_evlist__config(struct evlist *evlist, struct record_opts *opts,