Em Fri, May 06, 2022 at 01:16:24PM -0700, Namhyung Kim escreveu: > Currently evsel__new_idx() sets more sample_type bits when it finds a > BPF-output event. But it should honor what's recorded in the perf > data file rather than blindly sets the bits. Otherwise it could lead > to a parse error when it recorded with a modified sample_type. Can you please try to provide a Fixes: tag for this? This way reviewing gets simpler by looking at who introduced this, if there was some reason or if it was a plain oversight. It also helps to get this fix propabated to the stable trees. - Arnaldo > Signed-off-by: Namhyung Kim <namhyung@xxxxxxxxxx> > --- > tools/perf/util/evsel.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c > index d38722560e80..63a8b832b822 100644 > --- a/tools/perf/util/evsel.c > +++ b/tools/perf/util/evsel.c > @@ -269,8 +269,8 @@ struct evsel *evsel__new_idx(struct perf_event_attr *attr, int idx) > return NULL; > evsel__init(evsel, attr, idx); > > - if (evsel__is_bpf_output(evsel)) { > - evsel->core.attr.sample_type |= (PERF_SAMPLE_RAW | PERF_SAMPLE_TIME | > + if (evsel__is_bpf_output(evsel) && !attr->sample_type) { > + evsel->core.attr.sample_type = (PERF_SAMPLE_RAW | PERF_SAMPLE_TIME | > PERF_SAMPLE_CPU | PERF_SAMPLE_PERIOD), > evsel->core.attr.sample_period = 1; > } > -- > 2.36.0.512.ge40c2bad7a-goog -- - Arnaldo