[PATCH 00/11] perf test: Improve pmu-events support

From: John Garry
Date: Thu Jul 29 2021 - 10:12:12 EST


Recently it has been shown that the pmu-events tests do not always catch
broken uncore PMU alias support.

The main problem is that the alias matching only tests uncore PMUs which
are present in the host system, so pretty useless.

This series improves that by using fake uncore PMUs, and verifying aliases
generated for those PMUs match known expected values.

This means that even if one arch does not have PMUs which support some
special aliasing, like multiple tokens, we can still have a fake uncore
PMU test on that arch.

Support is also added to test system PMUs alias matching.

Based on 5.14-rc1 + "perf pmu: Fix alias matching".

John Garry (11):
perf test: Factor out pmu-events event comparison
perf jevents: Relocate test events to cpu folder
perf test: Declare pmu-events test events separately
perf test: Factor out pmu-events alias comparison
perf test: Test pmu-events core aliases separately
perf pmu: Check .is_uncore field in pmu_add_cpu_aliases_map()
perf test: Re-add pmu-event uncore PMU alias test
perf test: Add more pmu-events uncore aliases
perf pmu: Make pmu_add_sys_aliases() public
perf jevents: Print SoC name per system event table
perf test: Add pmu-events sys event support

.../{test_cpu => test_soc/cpu}/branch.json | 0
.../{test_cpu => test_soc/cpu}/cache.json | 0
.../{test_cpu => test_soc/cpu}/other.json | 0
.../{test_cpu => test_soc/cpu}/uncore.json | 23 +-
.../arch/test/test_soc/sys/uncore.json | 9 +
tools/perf/pmu-events/jevents.c | 5 +-
tools/perf/pmu-events/pmu-events.h | 1 +
tools/perf/tests/pmu-events.c | 699 +++++++++++++-----
tools/perf/util/pmu.c | 5 +-
tools/perf/util/pmu.h | 1 +
10 files changed, 533 insertions(+), 210 deletions(-)
rename tools/perf/pmu-events/arch/test/{test_cpu => test_soc/cpu}/branch.json (100%)
rename tools/perf/pmu-events/arch/test/{test_cpu => test_soc/cpu}/cache.json (100%)
rename tools/perf/pmu-events/arch/test/{test_cpu => test_soc/cpu}/other.json (100%)
rename tools/perf/pmu-events/arch/test/{test_cpu => test_soc/cpu}/uncore.json (51%)
create mode 100644 tools/perf/pmu-events/arch/test/test_soc/sys/uncore.json

--
2.26.2