From: Heiko Carstens Date: Tue, 29 May 2012 04:54:32 +0000 (+0200) Subject: s390/cmpxchg: add missing memory barrier to cmpxchg64 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=0c44ca71f59447a5e602c45728829d1cb6a1b4b5;p=linux-beck.git s390/cmpxchg: add missing memory barrier to cmpxchg64 All cmpxchg functions imply a memory barrier. cmpxch64 did not have one for 31 bit code, so add it. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky --- diff --git a/arch/s390/include/asm/cmpxchg.h b/arch/s390/include/asm/cmpxchg.h index 81d7908416cf..ebd31481f1d2 100644 --- a/arch/s390/include/asm/cmpxchg.h +++ b/arch/s390/include/asm/cmpxchg.h @@ -181,7 +181,7 @@ static inline unsigned long long __cmpxchg64(void *ptr, " cds %0,%2,%1" : "+&d" (rp_old), "=Q" (ptr) : "d" (rp_new), "Q" (ptr) - : "cc"); + : "memory", "cc"); return rp_old.pair; } #define cmpxchg64(ptr, o, n) \