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

Christian Borntraeger
2016-10-21T11:59:22Z

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@de.ibm.com>
---
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