mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-12 16:11:04 +00:00
[ARM SMP] Clear the exclusive monitor on ARMv6 CPUs on context switch
Ensure that the exclusive monitor is cleared on context switch with ARMv6 CPUs. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
3c4ee4e252
commit
b876386ee4
@ -533,6 +533,13 @@ ENTRY(__switch_to)
|
|||||||
ldr r3, [r2, #TI_TP_VALUE]
|
ldr r3, [r2, #TI_TP_VALUE]
|
||||||
stmia ip!, {r4 - sl, fp, sp, lr} @ Store most regs on stack
|
stmia ip!, {r4 - sl, fp, sp, lr} @ Store most regs on stack
|
||||||
ldr r6, [r2, #TI_CPU_DOMAIN]!
|
ldr r6, [r2, #TI_CPU_DOMAIN]!
|
||||||
|
#if __LINUX_ARM_ARCH__ >= 6
|
||||||
|
#ifdef CONFIG_CPU_MPCORE
|
||||||
|
clrex
|
||||||
|
#else
|
||||||
|
strex r3, r4, [ip] @ Clear exclusive monitor
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
#if defined(CONFIG_CPU_XSCALE) && !defined(CONFIG_IWMMXT)
|
#if defined(CONFIG_CPU_XSCALE) && !defined(CONFIG_IWMMXT)
|
||||||
mra r4, r5, acc0
|
mra r4, r5, acc0
|
||||||
stmia ip, {r4, r5}
|
stmia ip, {r4, r5}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user