]> xenbits.xensource.com Git - qemu-upstream-4.6-testing.git/commitdiff
atomic: fix position of volatile qualifier
authorPaolo Bonzini <pbonzini@redhat.com>
Tue, 4 Nov 2014 13:35:28 +0000 (14:35 +0100)
committerMichael Roth <mdroth@linux.vnet.ibm.com>
Sun, 22 Feb 2015 18:27:56 +0000 (12:27 -0600)
What needs to be volatile is not the pointer, but the pointed-to
value!

Cc: qemu-stable@nongnu.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit 2cbcfb281afa041a41f6e4c4da0f5c9314084604)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
include/qemu/atomic.h

index 492bce1c1b6886b558bf54e2450f5e44ffc44eb3..93c2ae2f37748cd572d4e24c501fc0aa0a2faf4b 100644 (file)
 #endif
 
 #ifndef atomic_read
-#define atomic_read(ptr)       (*(__typeof__(*ptr) *volatile) (ptr))
+#define atomic_read(ptr)       (*(__typeof__(*ptr) volatile*) (ptr))
 #endif
 
 #ifndef atomic_set
-#define atomic_set(ptr, i)     ((*(__typeof__(*ptr) *volatile) (ptr)) = (i))
+#define atomic_set(ptr, i)     ((*(__typeof__(*ptr) volatile*) (ptr)) = (i))
 #endif
 
 /* These have the same semantics as Java volatile variables.