Skip to contentSkip to conversation

make atomic_read() behave consistently on i386

PATCH In review Chris Snook 1 participant 1 message Aug 9, 2007

Subsystems (4)
lore
Share & tools
lore
#0 lore raw

PATCH 8/24 make atomic_read() behave consistently on i386

From: Chris Snook <[email protected]>

Make atomic_read() volatile on i386, to ensure memory is actually read each time.

include/asm-i386/atomic.h +1 -1
@@ -25,7 +25,7 @@ typedef struct { int counter; } atomic_t
  * 
  * Atomically reads the value of @v.
  */ 
-#define atomic_read(v)		((v)->counter)
+#define atomic_read(v)		(*(volatile int *)&(v)->counter)
 
 /**
  * atomic_set - set atomic variable