[PATCH 3/5] s390: make cpu_relax a barrier again

From: Christian Borntraeger
Date: Fri Oct 21 2016 - 07:59:24 EST


stop_machine seems to be the only important place for yielding during
cpu_relax. This was fixed by using cpu_relax_yield. Therefore, we can
now redefine cpu_relax to be a barrier instead. (With the option to do
some SMT tuning later on)

Signed-off-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>
---
arch/s390/include/asm/processor.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/s390/include/asm/processor.h b/arch/s390/include/asm/processor.h
index d05965b..5d262cf 100644
--- a/arch/s390/include/asm/processor.h
+++ b/arch/s390/include/asm/processor.h
@@ -236,7 +236,7 @@ static inline unsigned short stap(void)
*/
void cpu_relax_yield(void);

-#define cpu_relax() cpu_relax_yield()
+#define cpu_relax() barrier()
#define cpu_relax_lowlatency() barrier()

#define ECAG_CACHE_ATTRIBUTE 0
--
2.5.5