summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael S. Tsirkin <mst@redhat.com>2016-01-10 13:19:38 +0200
committerMichael S. Tsirkin <mst@redhat.com>2016-01-12 20:47:05 +0200
commit779a6a36961b50cd154da5705d9e6508f819cc4e (patch)
treee36f7c676eecb14d47d633a95e3c547d4c3f58c2
parenta677f4869576eb177570ffee68598d2202de030f (diff)
s390: more efficient smp barriers
As per: lkml.kernel.org/r/20150921112252.3c2937e1@mschwide atomics imply a barrier on s390, so s390 should change smp_mb__before_atomic and smp_mb__after_atomic to barrier() instead of smp_mb() and hence should not use the generic versions. Suggested-by: Peter Zijlstra <peterz@infradead.org> Suggested-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
-rw-r--r--arch/s390/include/asm/barrier.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/s390/include/asm/barrier.h b/arch/s390/include/asm/barrier.h
index 4d26fa43ec90..5c8db3ce61c8 100644
--- a/arch/s390/include/asm/barrier.h
+++ b/arch/s390/include/asm/barrier.h
@@ -45,6 +45,9 @@ do { \
___p1; \
})
+#define __smp_mb__before_atomic() barrier()
+#define __smp_mb__after_atomic() barrier()
+
#include <asm-generic/barrier.h>
#endif /* __ASM_BARRIER_H */