Messages in this thread | | | Date | Wed, 19 May 2021 14:24:28 -0300 | From | Arnaldo Carvalho de Melo <> | Subject | Re: [PATCH v3 3/3] perf tools: Add 'cgroup-switches' software event |
| |
Em Wed, May 05, 2021 at 10:53:16PM -0700, Namhyung Kim escreveu: > On Mon, Apr 19, 2021 at 11:02 AM Namhyung Kim <namhyung@kernel.org> wrote: > > > > Hi Arnaldo, > > > > Could you please pick this up? The kernel part is landed in the > > tip.git already. > > Ping!
Finally applied, will go via perf/urgent.
- Arnaldo
> Thanks, > Namhyung > > > > On Wed, Feb 10, 2021 at 5:33 PM Namhyung Kim <namhyung@kernel.org> wrote: > > > > > > It counts how often cgroups are changed actually during the context > > > switches. > > > > > > # perf stat -a -e context-switches,cgroup-switches -a sleep 1 > > > > > > Performance counter stats for 'system wide': > > > > > > 11,267 context-switches > > > 10,950 cgroup-switches > > > > > > 1.015634369 seconds time elapsed > > > > > > Signed-off-by: Namhyung Kim <namhyung@kernel.org> > > > --- > > > tools/include/uapi/linux/perf_event.h | 1 + > > > tools/perf/util/parse-events.c | 4 ++++ > > > tools/perf/util/parse-events.l | 1 + > > > 3 files changed, 6 insertions(+) > > > > > > diff --git a/tools/include/uapi/linux/perf_event.h b/tools/include/uapi/linux/perf_event.h > > > index b15e3447cd9f..16b9538ad89b 100644 > > > --- a/tools/include/uapi/linux/perf_event.h > > > +++ b/tools/include/uapi/linux/perf_event.h > > > @@ -112,6 +112,7 @@ enum perf_sw_ids { > > > PERF_COUNT_SW_EMULATION_FAULTS = 8, > > > PERF_COUNT_SW_DUMMY = 9, > > > PERF_COUNT_SW_BPF_OUTPUT = 10, > > > + PERF_COUNT_SW_CGROUP_SWITCHES = 11, > > > > > > PERF_COUNT_SW_MAX, /* non-ABI */ > > > }; > > > diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c > > > index 42c84adeb2fb..09ff678519f3 100644 > > > --- a/tools/perf/util/parse-events.c > > > +++ b/tools/perf/util/parse-events.c > > > @@ -145,6 +145,10 @@ struct event_symbol event_symbols_sw[PERF_COUNT_SW_MAX] = { > > > .symbol = "bpf-output", > > > .alias = "", > > > }, > > > + [PERF_COUNT_SW_CGROUP_SWITCHES] = { > > > + .symbol = "cgroup-switches", > > > + .alias = "", > > > + }, > > > }; > > > > > > #define __PERF_EVENT_FIELD(config, name) \ > > > diff --git a/tools/perf/util/parse-events.l b/tools/perf/util/parse-events.l > > > index 9db5097317f4..88f203bb6fab 100644 > > > --- a/tools/perf/util/parse-events.l > > > +++ b/tools/perf/util/parse-events.l > > > @@ -347,6 +347,7 @@ emulation-faults { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_EM > > > dummy { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_DUMMY); } > > > duration_time { return tool(yyscanner, PERF_TOOL_DURATION_TIME); } > > > bpf-output { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_BPF_OUTPUT); } > > > +cgroup-switches { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_CGROUP_SWITCHES); } > > > > > > /* > > > * We have to handle the kernel PMU event cycles-ct/cycles-t/mem-loads/mem-stores separately. > > > -- > > > 2.30.0.478.g8a0d178c01-goog > > >
--
- Arnaldo
| |