perf pmu: List kernel supplied event aliases for arm64
authorJohn Garry <john.garry@huawei.com>
Wed, 17 Jun 2020 09:01:53 +0000 (17:01 +0800)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Mon, 22 Jun 2020 19:28:09 +0000 (16:28 -0300)
In commit dc098b35b56f ("perf list: List kernel supplied event aliases"),
the aliases for events are supplied in addition to CPU event in perf list.

This relies on the name of the core PMU being "cpu", which is not the case
for arm64, so arm64 has always missed this. Use generic is_pmu_core()
helper which takes account of arm64 to make this feature work for arm64
(and possibly other archs).

Sample, before:

  armv8_pmuv3_0/br_mis_pred/          [Kernel PMU event]

after:

  br_mis_pred OR armv8_pmuv3_0/br_mis_pred/          [Kernel PMU event]

Signed-off-by: John Garry <john.garry@huawei.com>
Acked-by: Jiri Olsa <jolsa@redhat.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Ian Rogers <irogers@google.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Will Deacon <will@kernel.org>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linuxarm@huawei.com
Link: http://lore.kernel.org/lkml/1592384514-119954-2-git-send-email-john.garry@huawei.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/pmu.c

index 6d51042..d039879 100644 (file)
@@ -1477,7 +1477,7 @@ void print_pmu_events(const char *event_glob, bool name_only, bool quiet_flag,
                list_for_each_entry(alias, &pmu->aliases, list) {
                        char *name = alias->desc ? alias->name :
                                format_alias(buf, sizeof(buf), pmu, alias);
-                       bool is_cpu = !strcmp(pmu->name, "cpu");
+                       bool is_cpu = is_pmu_core(pmu->name);
 
                        if (alias->deprecated && !deprecated)
                                continue;