m68k: Add missing cmpxchg64() if CONFIG_RMW_INSNS=y
authorGeert Uytterhoeven <geert@linux-m68k.org>
Thu, 14 Mar 2013 19:25:28 +0000 (20:25 +0100)
committerGeert Uytterhoeven <geert@linux-m68k.org>
Tue, 16 Apr 2013 19:08:09 +0000 (21:08 +0200)
If CONFIG_RMW_INSNS=y:

drivers/block/blockconsole.c: In function ‘bcon_advance_console_bytes’:
drivers/block/blockconsole.c:164: error: implicit declaration of function ‘cmpxchg64’

Map cmpxchg64 to cmpxchg64_local, which is already mapped to
__cmpxchg64_local_generic, just like for the CONFIG_RMW_INSNS=n case.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
arch/m68k/include/asm/cmpxchg.h

index 5c81d0e..bc755bc 100644 (file)
@@ -124,6 +124,9 @@ static inline unsigned long __cmpxchg(volatile void *p, unsigned long old,
 #define cmpxchg_local(ptr, o, n)                                           \
        ((__typeof__(*(ptr)))__cmpxchg((ptr), (unsigned long)(o),           \
                        (unsigned long)(n), sizeof(*(ptr))))
+
+#define cmpxchg64(ptr, o, n)   cmpxchg64_local((ptr), (o), (n))
+
 #else
 
 /*