[PATCH] drivers/perf: Enable PID_IN_CONTEXTIDR with SPE

James Clark james.clark at arm.com
Mon Nov 30 11:24:54 EST 2020


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 <will at kernel.org>
Cc: Mark Rutland <mark.rutland at arm.com>
Cc: Al Grant <al.grant at arm.com>
Cc: Leo Yan <leo.yan at linaro.org>
Cc: John Garry <john.garry at huawei.com>
Cc: Suzuki K Poulose <suzuki.poulose at arm.com>
Signed-off-by: James Clark <james.clark at 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




More information about the linux-arm-kernel mailing list