Merge tag 'arc-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc
[pandora-kernel.git] / include / asm-generic / barrier.h
index e6a83d7..55e3abc 100644 (file)
 #endif
 
 #ifdef CONFIG_SMP
+
+#ifndef smp_mb
 #define smp_mb()       mb()
+#endif
+
+#ifndef smp_rmb
 #define smp_rmb()      rmb()
+#endif
+
+#ifndef smp_wmb
 #define smp_wmb()      wmb()
+#endif
+
+#ifndef smp_read_barrier_depends
 #define smp_read_barrier_depends()     read_barrier_depends()
-#else
+#endif
+
+#else  /* !CONFIG_SMP */
+
+#ifndef smp_mb
 #define smp_mb()       barrier()
+#endif
+
+#ifndef smp_rmb
 #define smp_rmb()      barrier()
+#endif
+
+#ifndef smp_wmb
 #define smp_wmb()      barrier()
+#endif
+
+#ifndef smp_read_barrier_depends
 #define smp_read_barrier_depends()     do { } while (0)
 #endif
 
+#endif /* CONFIG_SMP */
+
 #ifndef smp_store_mb
 #define smp_store_mb(var, value)  do { WRITE_ONCE(var, value); mb(); } while (0)
 #endif