[PATCH] arm64: remove HAVE_CMPXCHG_LOCAL

Christoph Lameter (Ampere) cl at gentwo.org
Tue Feb 17 09:19:22 PST 2026


On Mon, 16 Feb 2026, Dev Jain wrote:

> By coincidence, Yang Shi has been discussing the this_cpu_* overhead
> at [2].


Yang Shi is on vacation but we have a patchset that removes
preempt_enable/disable from this_cpu operations on ARM64.

The performance of cmpxchg varies by platform in use and with the kernel
config. The measurements that I did 2 years ago indicated that the cmpxchg
use with Ampere processors did not cause a regression.

Note that distro kernels often do not enable PREEMPT_FULL and therefore
preempt_disable/enable overhead is not incurred in production systems.

PREEMPT_VOLUNTARY does not use preemption for this_cpu ops.




More information about the linux-arm-kernel mailing list