From: Heiko Carstens Date: Wed, 6 Nov 2024 10:03:12 +0000 (+0100) Subject: s390/cmpxchg: Use arch_cmpxchg() instead of __atomic_cmpxchg() X-Git-Tag: v6.13-rc1~206^2~32 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f99d670e31b960562fcd34587e9f824b6f05a144;p=thirdparty%2Fkernel%2Flinux.git s390/cmpxchg: Use arch_cmpxchg() instead of __atomic_cmpxchg() Use arch_cmpxchg() instead of __atomic_cmpxchg() for the arch_atomic_cmpxchg() implementations. arch_cmpxchg() generates the same code and doesn't need a cast like it is required for arch_atomic64_cmpxchg(). Reviewed-by: Juergen Christ Signed-off-by: Heiko Carstens --- diff --git a/arch/s390/include/asm/atomic.h b/arch/s390/include/asm/atomic.h index fcedb01c7fe08..38e81fb7e066b 100644 --- a/arch/s390/include/asm/atomic.h +++ b/arch/s390/include/asm/atomic.h @@ -80,7 +80,7 @@ static __always_inline int arch_atomic_xchg(atomic_t *v, int new) static __always_inline int arch_atomic_cmpxchg(atomic_t *v, int old, int new) { - return __atomic_cmpxchg(&v->counter, old, new); + return arch_cmpxchg(&v->counter, old, new); } #define arch_atomic_cmpxchg arch_atomic_cmpxchg @@ -124,7 +124,7 @@ static __always_inline s64 arch_atomic64_xchg(atomic64_t *v, s64 new) static __always_inline s64 arch_atomic64_cmpxchg(atomic64_t *v, s64 old, s64 new) { - return __atomic64_cmpxchg((long *)&v->counter, old, new); + return arch_cmpxchg(&v->counter, old, new); } #define arch_atomic64_cmpxchg arch_atomic64_cmpxchg