From: Jisheng Zhang Date: Mon, 25 Mar 2024 11:10:37 +0000 (+0800) Subject: riscv: select ARCH_USE_CMPXCHG_LOCKREF X-Git-Tag: v6.10-rc1~52^2~3^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=eb1e5037294652ddf1437f62292c0727183f11ae;p=thirdparty%2Fkernel%2Flinux.git riscv: select ARCH_USE_CMPXCHG_LOCKREF Select ARCH_USE_CMPXCHG_LOCKREF to enable the cmpxchg-based lockless lockref implementation for riscv. Using Linus' test case[1] on TH1520 platform, I see a 11.2% improvement. On JH7110 platform, I see 12.0% improvement. Link: http://marc.info/?l=linux-fsdevel&m=137782380714721&w=4 [1] Signed-off-by: Jisheng Zhang Reviewed-by: Andrea Parri Link: https://lore.kernel.org/r/20240325111038.1700-2-jszhang@kernel.org Signed-off-by: Palmer Dabbelt --- diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig index bffbd869a0682..b8b96baad0587 100644 --- a/arch/riscv/Kconfig +++ b/arch/riscv/Kconfig @@ -50,6 +50,7 @@ config RISCV select ARCH_SUPPORTS_PAGE_TABLE_CHECK if MMU select ARCH_SUPPORTS_PER_VMA_LOCK if MMU select ARCH_SUPPORTS_SHADOW_CALL_STACK if HAVE_SHADOW_CALL_STACK + select ARCH_USE_CMPXCHG_LOCKREF if 64BIT select ARCH_USE_MEMTEST select ARCH_USE_QUEUED_RWLOCKS select ARCH_USES_CFI_TRAPS if CFI_CLANG