Re: [External] [PATCH] locking/atomic: sh: Use generic_cmpxchg_local for arch_cmpxchg_local()

From: wuqiang.matt
Date: Wed Oct 25 2023 - 07:26:51 EST


On 2023/10/24 22:52, Masami Hiramatsu (Google) wrote:
From: Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>

Use generic_cmpxchg_local() for arch_cmpxchg_local() implementation
in SH architecture because it does not implement arch_cmpxchg_local().

Reported-by: kernel test robot <lkp@xxxxxxxxx>
Closes: https://lore.kernel.org/oe-kbuild-all/202310241310.Ir5uukOG-lkp@xxxxxxxxx/
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>
---
arch/sh/include/asm/cmpxchg.h | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/sh/include/asm/cmpxchg.h b/arch/sh/include/asm/cmpxchg.h
index 288f6f38d98f..e920e61fb817 100644
--- a/arch/sh/include/asm/cmpxchg.h
+++ b/arch/sh/include/asm/cmpxchg.h
@@ -71,4 +71,6 @@ static inline unsigned long __cmpxchg(volatile void * ptr, unsigned long old,
(unsigned long)_n_, sizeof(*(ptr))); \
})
+#include <asm-generic/cmpxchg-local.h>
+

asm-generic/cmpxchg-local.h defines only 2 routines: __generic_cmpxchg_local
and __generic_cmpxchg64_local.

Shall add the definition of arch_cmpxchg_local into arch/sh/include/asm/cmpxchg.h, or group arch_cmpxchg_local and arch_cmpxchg64_local into
asm-generic/cmpxchg-local.h ?

#endif /* __ASM_SH_CMPXCHG_H */