[PATCH v2 0/8] Refactor cpuid and metric table lookup code
Ian Rogers
irogers at google.com
Thu Nov 7 08:20:27 PST 2024
Xu Yang <xu.yang_2 at nxp.com> reported issues with the system metric
lookup:
https://lore.kernel.org/linux-perf-users/20241106085441.3945502-1-xu.yang_2@nxp.com/
These patches remove a lot of the logic relating CPUIDs to PMUs so
that the PMU isn't part of the question when finding a metric table.
For time reasons, it doesn't go as far as allowing system metrics
without a metric table as a metric table is needed for metrics to
refer to other metrics, and the refactoring of that resolution is a
hassle.
Ian Rogers (7):
perf header: Move is_cpu_online to numa bench
perf header: Refactor get_cpuid to take a CPU for ARM
perf arm64 header: Use cpu argument in get_cpuid
perf header: Avoid transitive PMU includes
perf header: Pass a perf_cpu rather than a PMU to get_cpuid_str
perf jevents: Add map_for_cpu
perf pmu: Move pmu_metrics_table__find and remove ARM override
Xu Yang (1):
perf jevents: fix breakage when do perf stat on system metric
tools/perf/arch/arm64/util/arm-spe.c | 14 +---
tools/perf/arch/arm64/util/header.c | 73 ++++++++++-----------
tools/perf/arch/arm64/util/pmu.c | 20 ------
tools/perf/arch/loongarch/util/header.c | 4 +-
tools/perf/arch/powerpc/util/header.c | 4 +-
tools/perf/arch/riscv/util/header.c | 4 +-
tools/perf/arch/s390/util/header.c | 6 +-
tools/perf/arch/x86/util/auxtrace.c | 3 +-
tools/perf/arch/x86/util/header.c | 5 +-
tools/perf/bench/numa.c | 53 +++++++++++++++
tools/perf/builtin-kvm.c | 4 +-
tools/perf/pmu-events/empty-pmu-events.c | 39 ++++++-----
tools/perf/pmu-events/jevents.py | 39 ++++++-----
tools/perf/pmu-events/pmu-events.h | 2 +-
tools/perf/tests/expr.c | 5 +-
tools/perf/util/env.c | 4 +-
tools/perf/util/expr.c | 6 +-
tools/perf/util/header.c | 82 ++++++++----------------
tools/perf/util/header.h | 23 +++----
tools/perf/util/pmu.c | 25 --------
tools/perf/util/pmu.h | 2 -
tools/perf/util/probe-event.c | 1 +
22 files changed, 189 insertions(+), 229 deletions(-)
--
2.47.0.199.ga7371fff76-goog
More information about the linux-riscv
mailing list