linux-stable/arch/arm64
Will Deacon 202fb4ef81 arm64: spinlock: Fix theoretical trylock() A-B-A with LSE atomics
If the spinlock "next" ticket wraps around between the initial LDR
and the cmpxchg in the LSE version of spin_trylock, then we can erroneously
think that we have successfuly acquired the lock because we only check
whether the next ticket return by the cmpxchg is equal to the owner ticket
in our updated lock word.

This patch fixes the issue by performing a full 32-bit check of the lock
word when trying to determine whether or not the CASA instruction updated
memory.

Reported-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2018-02-06 22:53:11 +00:00
..
boot Amlogic fixes for v4.15-rc 2017-12-09 20:23:29 -08:00
configs arm64: defconfig: enable CONFIG_GPIO_UNIPHIER 2017-10-30 14:41:54 +01:00
crypto License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
include arm64: spinlock: Fix theoretical trylock() A-B-A with LSE atomics 2018-02-06 22:53:11 +00:00
kernel arm64: Turn on KPTI only on CPUs that need it 2018-01-23 19:59:49 +00:00
kvm KVM: arm64: Emulate RAS error registers and set HCR_EL2's TERR & TEA 2018-01-16 15:09:47 +00:00
lib arm64: kpti: Fix the interaction between ASID switching and software PAN 2018-01-16 17:37:48 +00:00
mm arm64: Fix TTBR + PAN + 52-bit PA logic in cpu_do_switch_mm 2018-01-26 18:23:17 +00:00
net bpf, arm64: implement jiting of BPF_J{LT, LE, SLT, SLE} 2017-08-09 16:53:56 -07:00
xen arm64: kpti: Fix the interaction between ASID switching and software PAN 2018-01-16 17:37:48 +00:00
Kconfig arm64: cpufeature: Detect CPU RAS Extentions 2018-01-16 15:05:48 +00:00
Kconfig.debug
Kconfig.platforms ARM: SoC driver updates for v4.15 2017-11-16 16:05:01 -08:00
Makefile arm64: ftrace: emit ftrace-mod.o contents through code 2017-12-01 13:04:59 +00:00