perf evlist: Allow multiple read formats

Tools find the correct evsel, and therefore read format, using the event
ID, so it isn't necessary for all read formats to be the same. In the
case of leader-sampling of AUX area events, dummy tracking events will
have a different read format, so relax the validation to become a debug
message only.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: http://lore.kernel.org/lkml/20200401101613.6201-16-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Adrian Hunter 2020-04-01 13:16:12 +03:00 committed by Arnaldo Carvalho de Melo
parent 3713eb371c
commit 94d3820f2e

View file

@ -1131,8 +1131,10 @@ bool perf_evlist__valid_read_format(struct evlist *evlist)
u64 sample_type = first->core.attr.sample_type; u64 sample_type = first->core.attr.sample_type;
evlist__for_each_entry(evlist, pos) { evlist__for_each_entry(evlist, pos) {
if (read_format != pos->core.attr.read_format) if (read_format != pos->core.attr.read_format) {
return false; pr_debug("Read format differs %#" PRIx64 " vs %#" PRIx64 "\n",
read_format, (u64)pos->core.attr.read_format);
}
} }
/* PERF_SAMPLE_READ imples PERF_FORMAT_ID. */ /* PERF_SAMPLE_READ imples PERF_FORMAT_ID. */