projects
/
kernel
/
kernel-generic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
3c4ee4e
)
[ARM SMP] Clear the exclusive monitor on ARMv6 CPUs on context switch
author
Russell King
<rmk@dyn-67.arm.linux.org.uk>
Wed, 10 Aug 2005 13:52:52 +0000
(14:52 +0100)
committer
Russell King
<rmk+kernel@arm.linux.org.uk>
Wed, 10 Aug 2005 13:52:52 +0000
(14:52 +0100)
Ensure that the exclusive monitor is cleared on context switch with
ARMv6 CPUs.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/entry-armv.S
patch
|
blob
|
history
diff --git
a/arch/arm/kernel/entry-armv.S
b/arch/arm/kernel/entry-armv.S
index
39a6c1b
..
7152bfb
100644
(file)
--- a/
arch/arm/kernel/entry-armv.S
+++ b/
arch/arm/kernel/entry-armv.S
@@
-533,6
+533,13
@@
ENTRY(__switch_to)
ldr r3, [r2, #TI_TP_VALUE]
stmia ip!, {r4 - sl, fp, sp, lr} @ Store most regs on stack
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)
mra r4, r5, acc0
stmia ip, {r4, r5}