]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
perf: arm_spe: Add support for FEAT_SPE_EFT extended filtering
authorJames Clark <james.clark@linaro.org>
Mon, 1 Sep 2025 12:40:33 +0000 (13:40 +0100)
committerWill Deacon <will@kernel.org>
Thu, 18 Sep 2025 13:17:02 +0000 (14:17 +0100)
commitdad9603c5ea308a7b26af66ff4824dccd438af5d
treeb94d317bd2e577704068183794ebad786d0817d1
parent51b9f16697cda2229aacc10bbb0216b6900cbca1
perf: arm_spe: Add support for FEAT_SPE_EFT extended filtering

FEAT_SPE_EFT (optional from Armv9.4) adds mask bits for the existing
load, store and branch filters. It also adds two new filter bits for
SIMD and floating point with their own associated mask bits. The current
filters only allow OR filtering on samples that are load OR store etc,
and the new mask bits allow setting part of the filter to an AND, for
example filtering samples that are store AND SIMD. With mask bits set to
0, the OR behavior is preserved, so the unless any masks are explicitly
set old filters will behave the same.

Add them all and make them behave the same way as existing format bits,
hidden and return EOPNOTSUPP if set when the feature doesn't exist.

Reviewed-by: Leo Yan <leo.yan@arm.com>
Tested-by: Leo Yan <leo.yan@arm.com>
Signed-off-by: James Clark <james.clark@linaro.org>
Signed-off-by: Will Deacon <will@kernel.org>
drivers/perf/arm_spe_pmu.c