diff options
Diffstat (limited to 'arch/s390')
-rw-r--r-- | arch/s390/include/asm/barrier.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/s390/include/asm/barrier.h b/arch/s390/include/asm/barrier.h index 6993b20d64fb..10a508802940 100644 --- a/arch/s390/include/asm/barrier.h +++ b/arch/s390/include/asm/barrier.h @@ -15,7 +15,12 @@ static inline void mb(void) { +#ifdef CONFIG_HAVE_MARCH_Z196_FEATURES + /* Fast-BCR without checkpoint synchronization */ + asm volatile("bcr 14,0" : : : "memory"); +#else asm volatile("bcr 15,0" : : : "memory"); +#endif } #define rmb() mb() |