Fix barrier for sh4a
authorJens Axboe <jens.axboe@oracle.com>
Tue, 22 Dec 2009 08:06:43 +0000 (09:06 +0100)
committerJens Axboe <jens.axboe@oracle.com>
Tue, 22 Dec 2009 08:06:43 +0000 (09:06 +0100)
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
arch/arch-sh.h

index 23e6ca0..08c5fb3 100644 (file)
 #endif
 
 #define nop             __asm__ __volatile__ ("nop": : :"memory")
-#define read_barrier()  __asm__ __volatile__ (" " : : : "memory")
-#define write_barrier() __asm__ __volatile__ (" " : : : "memory")
+
+#if defined(__SH4A__)
+#define        mb()            __asm__ __volatile__ ("synco": : :"memory")
+#else
+#define mb()           __asm__ __volatile__ (" " : : : "memory")
+#endif
+
+#define read_barrier() mb()
+#define write_barrier()        mb()
 
 #endif