perf arm-spe: Move PMU initialization from default config code
authorIan Rogers <irogers@google.com>
Thu, 12 Oct 2023 17:56:41 +0000 (10:56 -0700)
committerNamhyung Kim <namhyung@kernel.org>
Tue, 17 Oct 2023 19:40:50 +0000 (12:40 -0700)
Avoid setting PMU values in arm_spe_pmu_default_config, move to
perf_pmu__arch_init.

Signed-off-by: Ian Rogers <irogers@google.com>
Reviewed-by: Adrian Hunter <adrian.hunter@intel.com>
Tested-by: Leo Yan <leo.yan@linaro.org>
Cc: Ravi Bangoria <ravi.bangoria@amd.com>
Cc: James Clark <james.clark@arm.com>
Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
Cc: Yang Jihong <yangjihong1@huawei.com>
Cc: Will Deacon <will@kernel.org>
Cc: Mike Leach <mike.leach@linaro.org>
Cc: Jing Zhang <renyu.zj@linux.alibaba.com>
Cc: Kajol Jain <kjain@linux.ibm.com>
Cc: Thomas Richter <tmricht@linux.ibm.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: John Garry <john.g.garry@oracle.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: coresight@lists.linaro.org
Link: https://lore.kernel.org/r/20231012175645.1849503-4-irogers@google.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
tools/perf/arch/arm/util/pmu.c
tools/perf/arch/arm64/util/arm-spe.c

index d55d2b15f2e692189714526d5f039d1fe6330ac0..f25f68f84a949aa1182c325ac25eab8bfc34b8ca 100644 (file)
@@ -23,6 +23,8 @@ void perf_pmu__arch_init(struct perf_pmu *pmu __maybe_unused)
                pmu->default_config = cs_etm_get_default_config(pmu);
 #if defined(__aarch64__)
        } else if (strstarts(pmu->name, ARM_SPE_PMU_NAME)) {
+               pmu->selectable = true;
+               pmu->is_uncore = false;
                pmu->default_config = arm_spe_pmu_default_config(pmu);
        } else if (strstarts(pmu->name, HISI_PTT_PMU_NAME)) {
                pmu->selectable = true;
index 9cc3d6dcb849f397972f221525c96267142ef45e..08a76734ccd2ddb37e1d77e74aca5c756a659335 100644 (file)
@@ -516,8 +516,5 @@ struct perf_event_attr
                attr->sample_period = 4096;
        }
 
-       arm_spe_pmu->selectable = true;
-       arm_spe_pmu->is_uncore = false;
-
        return attr;
 }