arch: xtensa: include: asm: compiling issue, need cmpxchg64() defined.
authorChen Gang <gang.chen@asianux.com>
Mon, 27 May 2013 11:57:01 +0000 (19:57 +0800)
committerChris Zankel <chris@zankel.net>
Wed, 5 Jun 2013 17:14:21 +0000 (10:14 -0700)
When compiling with 'allmodconfig', some of drivers need cmpxchg64(),
xtensa does not supply 64-bit implementation for 'xchg', so use the
'generic' implementation.

e.g. (for next-20130527 tree):
  drivers/block/blockconsole.c:164:2: error: implicit declaration of function ‘cmpxchg64’ [-Werror=implicit-function-declaration]

Signed-off-by: Chen Gang <gang.chen@asianux.com>
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Chris Zankel <chris@zankel.net>
arch/xtensa/include/asm/cmpxchg.h

index d9ab131bc1aa8c8cefa243f97bb6e9d5e8561161..370b26f38414d9e33af67244a96bc7c9a8a96622 100644 (file)
@@ -93,6 +93,7 @@ static inline unsigned long __cmpxchg_local(volatile void *ptr,
        ((__typeof__(*(ptr)))__cmpxchg_local_generic((ptr), (unsigned long)(o),\
                        (unsigned long)(n), sizeof(*(ptr))))
 #define cmpxchg64_local(ptr, o, n) __cmpxchg64_local_generic((ptr), (o), (n))
+#define cmpxchg64(ptr, o, n)    cmpxchg64_local((ptr), (o), (n))
 
 /*
  * xchg_u32