From: Leo Yan Date: Sat, 6 Jul 2024 15:20:34 +0000 (+0100) Subject: perf arm-spe: Support multiple Arm SPE PMUs X-Git-Tag: v6.11-rc1~130^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e6b4da6759334bfdead28f9ad32323cbdbf9f670;p=thirdparty%2Fkernel%2Flinux.git perf arm-spe: Support multiple Arm SPE PMUs A platform can have more than one Arm SPE PMU. For example, a system with multiple clusters may have each cluster enabled with its own Arm SPE instance. In such case, the PMU devices will be named 'arm_spe_0', 'arm_spe_1', and so on. Currently, the tool only supports 'arm_spe_0'. This commit extends support to multiple Arm SPE PMUs by detecting the substring 'arm_spe_'. Signed-off-by: Leo Yan Reviewed-by: James Clark Cc: Suzuki K Poulose Cc: Will Deacon Cc: Mike Leach Cc: Kajol Jain Cc: John Garry Cc: linux-arm-kernel@lists.infradead.org Cc: coresight@lists.linaro.org Link: https://lore.kernel.org/r/20240706152035.86983-2-leo.yan@arm.com Signed-off-by: Namhyung Kim --- diff --git a/tools/perf/arch/arm/util/pmu.c b/tools/perf/arch/arm/util/pmu.c index 6b544edbd3f63..1c9541d01722f 100644 --- a/tools/perf/arch/arm/util/pmu.c +++ b/tools/perf/arch/arm/util/pmu.c @@ -30,7 +30,7 @@ void perf_pmu__arch_init(struct perf_pmu *pmu) pmu->selectable = true; pmu->is_uncore = false; pmu->perf_event_attr_init_default = arm_spe_pmu_default_config; - if (!strcmp(pmu->name, "arm_spe_0")) + if (strstarts(pmu->name, "arm_spe_")) pmu->mem_events = perf_mem_events_arm; } else if (strstarts(pmu->name, HISI_PTT_PMU_NAME)) { pmu->selectable = true;