summaryrefslogtreecommitdiff
path: root/arch/openrisc/include/asm/cmpxchg.h
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2017-04-03 17:36:32 +0300
committerIngo Molnar <mingo@kernel.org>2017-04-03 17:36:32 +0300
commit7f75540ff2ca84dbac26cf9deeb620cbf5646f5e (patch)
tree1eb54748074d3a91f3dd70fb5d4b23bf713f0bd5 /arch/openrisc/include/asm/cmpxchg.h
parent474aeffd88b87746a75583f356183d5c6caa4213 (diff)
parenta71c9a1c779f2499fb2afc0553e543f18aff6edf (diff)
downloadlinux-7f75540ff2ca84dbac26cf9deeb620cbf5646f5e.tar.xz
Merge tag 'v4.11-rc5' into x86/mm, to refresh the branch
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/openrisc/include/asm/cmpxchg.h')
-rw-r--r--arch/openrisc/include/asm/cmpxchg.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/arch/openrisc/include/asm/cmpxchg.h b/arch/openrisc/include/asm/cmpxchg.h
index 5fcb9ac72693..f0a5d8b844d6 100644
--- a/arch/openrisc/include/asm/cmpxchg.h
+++ b/arch/openrisc/include/asm/cmpxchg.h
@@ -77,7 +77,11 @@ static inline unsigned long __xchg(unsigned long val, volatile void *ptr,
return val;
}
-#define xchg(ptr, with) \
- ((typeof(*(ptr)))__xchg((unsigned long)(with), (ptr), sizeof(*(ptr))))
+#define xchg(ptr, with) \
+ ({ \
+ (__typeof__(*(ptr))) __xchg((unsigned long)(with), \
+ (ptr), \
+ sizeof(*(ptr))); \
+ })
#endif /* __ASM_OPENRISC_CMPXCHG_H */