Enable PID_IN_CONTEXTIDR by default when Arm SPE is enabled. This flag is required to get PID data in the SPE trace. Without it the perf tool will report 0 for PID which isn't very useful, especially when doing system wide profiling or profiling applications that fork.
There is a small performance overhead when enabling PID_IN_CONTEXTIDR, but SPE itself is optional and not enabled by default so the impact is minimised. Cc: Will Deacon <w...@kernel.org> Cc: Mark Rutland <mark.rutl...@arm.com> Cc: Al Grant <al.gr...@arm.com> Cc: Leo Yan <leo....@linaro.org> Cc: John Garry <john.ga...@huawei.com> Cc: Suzuki K Poulose <suzuki.poul...@arm.com> Signed-off-by: James Clark <james.cl...@arm.com> --- drivers/perf/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/perf/Kconfig b/drivers/perf/Kconfig index 130327ff0b0e..47ede46c3d57 100644 --- a/drivers/perf/Kconfig +++ b/drivers/perf/Kconfig @@ -125,6 +125,7 @@ config XGENE_PMU config ARM_SPE_PMU tristate "Enable support for the ARMv8.2 Statistical Profiling Extension" depends on ARM64 + select PID_IN_CONTEXTIDR help Enable perf support for the ARMv8.2 Statistical Profiling Extension, which provides periodic sampling of operations in -- 2.28.0