summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoman Zippel <zippel@linux-m68k.org>2006-10-06 00:43:56 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-10-06 08:53:41 -0700
commit9ef308946fa8390136130a886b0d9a57867a747a (patch)
treef6a14e8639ae5b749a530fd2ce92ee66d9e69072
parent6c04c28a656c1717fbe617efc40edabca3a85ca3 (diff)
[PATCH] m68k: small system.h cleanup
avoid unnecessary xchg() use in set_mb() Signed-off-by: Roman Zippel <zippel@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--include/asm-m68k/system.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/include/asm-m68k/system.h b/include/asm-m68k/system.h
index 131a0cb0f49..243dd13e6bf 100644
--- a/include/asm-m68k/system.h
+++ b/include/asm-m68k/system.h
@@ -78,13 +78,13 @@ static inline int irqs_disabled(void)
#define mb() barrier()
#define rmb() barrier()
#define wmb() barrier()
-#define read_barrier_depends() do { } while(0)
-#define set_mb(var, value) do { xchg(&var, value); } while (0)
+#define read_barrier_depends() ((void)0)
+#define set_mb(var, value) ({ (var) = (value); wmb(); })
#define smp_mb() barrier()
#define smp_rmb() barrier()
#define smp_wmb() barrier()
-#define smp_read_barrier_depends() do { } while(0)
+#define smp_read_barrier_depends() ((void)0)
#define xchg(ptr,x) ((__typeof__(*(ptr)))__xchg((unsigned long)(x),(ptr),sizeof(*(ptr))))