s390/barrier: convert mb() to define again
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Wed, 30 Jan 2013 12:56:14 +0000 (13:56 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Thu, 14 Feb 2013 14:55:11 +0000 (15:55 +0100)
Some of the now available common code drivers only compile if mb() is a define.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/include/asm/barrier.h

index 10a5088..16760ee 100644 (file)
  * to devices.
  */
 
-static inline void mb(void)
-{
 #ifdef CONFIG_HAVE_MARCH_Z196_FEATURES
-       /* Fast-BCR without checkpoint synchronization */
-       asm volatile("bcr 14,0" : : : "memory");
+/* Fast-BCR without checkpoint synchronization */
+#define mb() do {  asm volatile("bcr 14,0" : : : "memory"); } while (0)
 #else
-       asm volatile("bcr 15,0" : : : "memory");
+#define mb() do {  asm volatile("bcr 15,0" : : : "memory"); } while (0)
 #endif
-}
 
 #define rmb()                          mb()
 #define wmb()                          mb()