diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2010-01-12 13:59:16 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2010-01-12 13:59:16 -0500 |
commit | 7511bce4069de39ea04b14c1e1d55c249f9ce808 (patch) | |
tree | befa78be1f9631b9fc3d5cbc10cef9e8fcd641bd /arch | |
parent | cc20b900be7aa8e456aff82dfcb55fb15c508962 (diff) |
ARM: Fix wrong dmb
The __kuser_cmpxchg code uses an ARMv6 dmb instruction, rather than
one based upon the architecture being built for. Switch to using
the macro provided for this purpose, which also eliminates the
need for an ifdef.
Acked-by: Nicolas Pitre <nico@fluxnic.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/kernel/entry-armv.S | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S index d2903e3bc861..6c5cf369183b 100644 --- a/arch/arm/kernel/entry-armv.S +++ b/arch/arm/kernel/entry-armv.S | |||
@@ -957,9 +957,7 @@ kuser_cmpxchg_fixup: | |||
957 | 957 | ||
958 | #else | 958 | #else |
959 | 959 | ||
960 | #ifdef CONFIG_SMP | 960 | smp_dmb |
961 | mcr p15, 0, r0, c7, c10, 5 @ dmb | ||
962 | #endif | ||
963 | 1: ldrex r3, [r2] | 961 | 1: ldrex r3, [r2] |
964 | subs r3, r3, r0 | 962 | subs r3, r3, r0 |
965 | strexeq r3, r1, [r2] | 963 | strexeq r3, r1, [r2] |