[PATCH v3 1/1] perf: arm_pmuv3: Don't use PMCCNTR_EL0 on SMT cores

Will Deacon will at kernel.org
Mon Nov 3 06:57:50 PST 2025


On Mon, 22 Sep 2025 11:30:10 +0800, Yicong Yang wrote:
> CPU_CYCLES is expected to count the logical CPU (PE) clock. Currently it's
> preferred to use PMCCNTR_EL0 for counting CPU_CYCLES, but it'll count
> processor clock rather than the PE clock (ARM DDI0487 L.b D13.1.3) if
> one of the SMT siblings is not idle on a multi-threaded implementation.
> So don't use it on SMT cores.
> 
> Introduce topology_core_has_smt() for knowing the SMT implementation and
> cached it in arm_pmu::has_smt during allocation.
> 
> [...]

Applied to will (for-next/perf), thanks!

[1/1] perf: arm_pmuv3: Don't use PMCCNTR_EL0 on SMT cores
      https://git.kernel.org/will/c/c3d78c34ad00

Cheers,
-- 
Will

https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev



More information about the linux-arm-kernel mailing list