Messages in this thread Patch in this message | | | Date | Wed, 16 Nov 2016 04:09:59 -0800 | From | tip-bot for Christian Borntraeger <> | Subject | [tip:locking/core] locking/core, s390: Make cpu_relax() a barrier again |
| |
Commit-ID: 22b6430d36659b37ed139b7fd87fcc7237fb0cfd Gitweb: http://git.kernel.org/tip/22b6430d36659b37ed139b7fd87fcc7237fb0cfd Author: Christian Borntraeger <borntraeger@de.ibm.com> AuthorDate: Tue, 25 Oct 2016 11:03:13 +0200 Committer: Ingo Molnar <mingo@kernel.org> CommitDate: Wed, 16 Nov 2016 10:15:10 +0100
locking/core, s390: Make cpu_relax() a barrier again
stop_machine() seemed 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 on s390, making s390 identical to all other architectures.
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Heiko Carstens <heiko.carstens@de.ibm.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Nicholas Piggin <npiggin@gmail.com> Cc: Noam Camus <noamc@ezchip.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Russell King <linux@armlinux.org.uk> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Will Deacon <will.deacon@arm.com> Cc: linuxppc-dev@lists.ozlabs.org Cc: virtualization@lists.linux-foundation.org Cc: xen-devel@lists.xenproject.org Link: http://lkml.kernel.org/r/1477386195-32736-4-git-send-email-borntraeger@de.ibm.com Signed-off-by: Ingo Molnar <mingo@kernel.org> --- 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 5bb4433..79343e3 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
| |