Merge tag 'iwlwifi-next-for-kalle-2014-12-30' of https://git.kernel.org/pub/scm/linux...
[cascardo/linux.git] / arch / x86 / um / asm / barrier.h
index cc04e67..2d7d9a1 100644 (file)
 
 #endif /* CONFIG_X86_32 */
 
-#define read_barrier_depends() do { } while (0)
-
-#ifdef CONFIG_SMP
-
-#define smp_mb()       mb()
 #ifdef CONFIG_X86_PPRO_FENCE
-#define smp_rmb()      rmb()
+#define dma_rmb()      rmb()
 #else /* CONFIG_X86_PPRO_FENCE */
-#define smp_rmb()      barrier()
+#define dma_rmb()      barrier()
 #endif /* CONFIG_X86_PPRO_FENCE */
+#define dma_wmb()      barrier()
 
-#define smp_wmb()      barrier()
+#ifdef CONFIG_SMP
 
-#define smp_read_barrier_depends()     read_barrier_depends()
+#define smp_mb()       mb()
+#define smp_rmb()      dma_rmb()
+#define smp_wmb()      barrier()
 #define set_mb(var, value) do { (void)xchg(&var, value); } while (0)
 
 #else /* CONFIG_SMP */
 #define smp_mb()       barrier()
 #define smp_rmb()      barrier()
 #define smp_wmb()      barrier()
-#define smp_read_barrier_depends()     do { } while (0)
 #define set_mb(var, value) do { var = value; barrier(); } while (0)
 
 #endif /* CONFIG_SMP */
 
+#define read_barrier_depends()         do { } while (0)
+#define smp_read_barrier_depends()     do { } while (0)
+
 /*
  * Stop RDTSC speculation. This is needed when you need to use RDTSC
  * (or get_cycles or vread that possibly accesses the TSC) in a defined