aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/include
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2012-05-29 00:54:32 -0400
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2012-05-30 03:07:55 -0400
commit0c44ca71f59447a5e602c45728829d1cb6a1b4b5 (patch)
treebc0747b925c799ae7193b0e670e5e208bb1d7da8 /arch/s390/include
parentb9e3f776c811cc0647c7360844714b6a9b5fd0ef (diff)
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 <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/include')
-rw-r--r--arch/s390/include/asm/cmpxchg.h2
1 files changed, 1 insertions, 1 deletions
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,
181 " cds %0,%2,%1" 181 " cds %0,%2,%1"
182 : "+&d" (rp_old), "=Q" (ptr) 182 : "+&d" (rp_old), "=Q" (ptr)
183 : "d" (rp_new), "Q" (ptr) 183 : "d" (rp_new), "Q" (ptr)
184 : "cc"); 184 : "memory", "cc");
185 return rp_old.pair; 185 return rp_old.pair;
186} 186}
187#define cmpxchg64(ptr, o, n) \ 187#define cmpxchg64(ptr, o, n) \