]> git.baikalelectronics.ru Git - kernel.git/commit
arm64: prefetch: don't provide spin_lock_prefetch with LSE
authorWill Deacon <will.deacon@arm.com>
Tue, 2 Feb 2016 12:46:23 +0000 (12:46 +0000)
committerCatalin Marinas <catalin.marinas@arm.com>
Tue, 16 Feb 2016 15:12:32 +0000 (15:12 +0000)
commita3af142e8f0f19bd93ba17e9cef00b82bfb82623
treeabd2021f1a71890e66081aed15650f400bf770b4
parentded6a1cb7aca8107daa9ecd359a2725a1a80ed24
arm64: prefetch: don't provide spin_lock_prefetch with LSE

The LSE atomics rely on us not dirtying data at L1 if we can avoid it,
otherwise many of the potential scalability benefits are lost.

This patch replaces spin_lock_prefetch with a nop when the LSE atomics
are in use, so that users don't shoot themselves in the foot by causing
needless coherence traffic at L1.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Tested-by: Andrew Pinski <apinski@cavium.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/include/asm/processor.h