Add ACCESS_ONCE to _STORE_SHARED
authorMathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Sat, 9 May 2009 14:48:38 +0000 (10:48 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Sat, 9 May 2009 14:48:38 +0000 (10:48 -0400)
We assume that the compiler does not reorder _STORE_SHARED across each other
and wrt _READ_SHARED. We therefore need to mark this access as volatile. The
compiler cannot reorder volatile accesses.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
urcu.h

diff --git a/urcu.h b/urcu.h
index 819555e862bfad7e026272016a86704f58b06809..b43b280e8b697a3c83d56af3425fda00dc87f7e7 100644 (file)
--- a/urcu.h
+++ b/urcu.h
@@ -87,7 +87,7 @@
  */
 #define _STORE_SHARED(x, v) \
        do { \
-               (x) = (v); \
+               ACCESS_ONCE(x) = (v); \
        } while (0)
 
 /*
This page took 0.025273 seconds and 4 git commands to generate.