From 4071c718555d955a35e9651f77086096ad87d498 Mon Sep 17 00:00:00 2001 From: Nick Piggin Date: Sat, 13 Oct 2007 03:06:55 +0200 Subject: x86: fix IO write barrier wmb() on x86 must always include a barrier, because stores can go out of order in many cases when dealing with devices (eg. WC memory). Signed-off-by: Nick Piggin Signed-off-by: Linus Torvalds --- include/asm-x86/system_64.h | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'include/asm-x86/system_64.h') diff --git a/include/asm-x86/system_64.h b/include/asm-x86/system_64.h index 02175aa1d16a..eff730b11926 100644 --- a/include/asm-x86/system_64.h +++ b/include/asm-x86/system_64.h @@ -159,12 +159,8 @@ static inline void write_cr8(unsigned long val) */ #define mb() asm volatile("mfence":::"memory") #define rmb() asm volatile("lfence":::"memory") - -#ifdef CONFIG_UNORDERED_IO #define wmb() asm volatile("sfence" ::: "memory") -#else -#define wmb() asm volatile("" ::: "memory") -#endif + #define read_barrier_depends() do {} while(0) #define set_mb(var, value) do { (void) xchg(&var, value); } while (0) -- cgit v1.2.3