summaryrefslogtreecommitdiffstats
path: root/arch/arc
diff options
context:
space:
mode:
authorVineet Gupta <vgupta@synopsys.com>2014-12-15 14:12:24 +0100
committerVineet Gupta <vgupta@synopsys.com>2015-02-02 12:38:37 +0100
commit7082a29c22ac0ab276b346f2a5c1d24a2102f158 (patch)
tree142b459ce955e962cb486abef8f08af813f351a5 /arch/arc
parentARC: add some more comments to ret_from_fork (diff)
downloadlinux-7082a29c22ac0ab276b346f2a5c1d24a2102f158.tar.xz
linux-7082a29c22ac0ab276b346f2a5c1d24a2102f158.zip
ARC: use ACCESS_ONCE in cmpxchg loop
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Diffstat (limited to 'arch/arc')
-rw-r--r--arch/arc/kernel/smp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arc/kernel/smp.c b/arch/arc/kernel/smp.c
index 20ebb602ea2f..6a400b1b0b62 100644
--- a/arch/arc/kernel/smp.c
+++ b/arch/arc/kernel/smp.c
@@ -221,7 +221,7 @@ static void ipi_send_msg_one(int cpu, enum ipi_msg_type msg)
* and read back old value
*/
do {
- new = old = *ipi_data_ptr;
+ new = old = ACCESS_ONCE(*ipi_data_ptr);
new |= 1U << msg;
} while (cmpxchg(ipi_data_ptr, old, new) != old);