[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