[PATCH RFC 0/2] Add optimization support for implementations using near atomics
Yicong Yang
yangyicong at huawei.com
Fri Sep 19 02:17:45 PDT 2025
From: Yicong Yang <yangyicong at hisilicon.com>
Add optimization support for implementations using near atomics, in prior
reimplement __xchg* with __lse_ll_sc_body() since currently kernel doesn't
support recursive alternatives. Though patch 1/2 is a preparation for the
optimization in patch 2/2, it's a pure refactor and should be standalone
to improve the code.
A previous discussion could be found in:
https://lore.kernel.org/linux-arm-kernel/aJXhHVEIdafxcLP_@willie-the-truck/t/#u
For basic principles for near-atomics and far-atomics:
https://developer.arm.com/documentation/102714/0100/Atomic-fundamentals
Yicong Yang (2):
arm64: atomics: reimplement __xchg* with __lse_ll_sc_body()
arm64: atomics: add optimization support for implementations using
near atomics
arch/arm64/Kconfig | 18 +++++++
arch/arm64/include/asm/atomic_ll_sc.h | 40 ++++++++++++++++
arch/arm64/include/asm/atomic_lse.h | 68 +++++++++++++++++++++++++++
arch/arm64/include/asm/cmpxchg.h | 63 ++++++++-----------------
arch/arm64/kernel/cpufeature.c | 26 ++++++++++
arch/arm64/tools/cpucaps | 1 +
6 files changed, 173 insertions(+), 43 deletions(-)
--
2.24.0
More information about the linux-arm-kernel
mailing list