[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20181009100049.GF6499@krava>
Date: Tue, 9 Oct 2018 12:00:49 +0200
From: Jiri Olsa <jolsa@...hat.com>
To: John Garry <john.garry@...wei.com>
Cc: Andi Kleen <ak@...ux.intel.com>, Ingo Molnar <mingo@...hat.com>,
Peter Zijlstra <peterz@...radead.org>,
Arnaldo Carvalho de Melo <acme@...nel.org>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Linuxarm <linuxarm@...wei.com>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Namhyung Kim <namhyung@...nel.org>,
Will Deacon <will.deacon@....com>,
Mark Rutland <mark.rutland@....com>
Subject: Re: [PATCH] perf tools: Store ids for events with their own cpus
perf_event__synthesize_event_update_cpus
On Thu, Oct 04, 2018 at 10:20:39AM +0100, John Garry wrote:
SNIP
> > We synthesize an update event that needs to touch the evsel
> > id array, which is not defined at that time. Fixing this by
> > forcing the id allocation for events with theeir own cpus.
> >
> > Reported-by: John Garry <john.garry@...wei.com>
> > Link: http://lkml.kernel.org/n/tip-8x4n7o34yheigoxm1jibflm6@git.kernel.org
>
> Tested-by: John Garry <john.garry@...wei.com>
>
> In terms of adding to stable, LT v4.14 is not affected, but 4.18.x is.
>
> Thanks,
> John
Arnaldo, could you please pick up this one
thanks,
jirka
>
> > Signed-off-by: Jiri Olsa <jolsa@...nel.org>
> > ---
> > tools/perf/builtin-report.c | 1 +
> > tools/perf/util/evsel.c | 3 +++
> > 2 files changed, 4 insertions(+)
> >
> > diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
> > index c0703979c51d..257c9c18cb7e 100644
> > --- a/tools/perf/builtin-report.c
> > +++ b/tools/perf/builtin-report.c
> > @@ -980,6 +980,7 @@ int cmd_report(int argc, const char **argv)
> > .id_index = perf_event__process_id_index,
> > .auxtrace_info = perf_event__process_auxtrace_info,
> > .auxtrace = perf_event__process_auxtrace,
> > + .event_update = perf_event__process_event_update,
> > .feature = process_feature_event,
> > .ordered_events = true,
> > .ordering_requires_timestamps = true,
> > diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
> > index ac6cfb8b085e..7a0d5fbaf3c1 100644
> > --- a/tools/perf/util/evsel.c
> > +++ b/tools/perf/util/evsel.c
> > @@ -1088,6 +1088,9 @@ void perf_evsel__config(struct perf_evsel *evsel, struct record_opts *opts,
> > attr->exclude_user = 1;
> > }
> >
> > + if (evsel->own_cpus)
> > + evsel->attr.read_format |= PERF_FORMAT_ID;
> > +
> > /*
> > * Apply event specific term settings,
> > * it overloads any global configuration.
> >
>
>
Powered by blists - more mailing lists