summary refs log tree commit diff
path: root/arch
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2013-04-10 14:14:27 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2013-04-10 14:14:27 -0700
commiteb02db38ee6da074628685971042b847dee05d43 (patch)
tree08088abca80269e5ccc86203a3d6cb9de3ee4e56 /arch
parent51de01700707167209f92a269ddf85433d29fcb3 (diff)
parentf934af05cb1bf20558542185299394a69060b829 (diff)
downloadlinux-eb02db38ee6da074628685971042b847dee05d43.tar.gz
Merge tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming
Pull C6X fix from Mark Salter.

Final (?) fix from the barrier discussion.

* tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming:
  add memory barrier to arch_local_irq_restore
Diffstat (limited to 'arch')
-rw-r--r--arch/c6x/include/asm/irqflags.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/c6x/include/asm/irqflags.h b/arch/c6x/include/asm/irqflags.h
index cf78e09e18c3..2c71d5634ec2 100644
--- a/arch/c6x/include/asm/irqflags.h
+++ b/arch/c6x/include/asm/irqflags.h
@@ -27,7 +27,7 @@ static inline unsigned long arch_local_save_flags(void)
 /* set interrupt enabled status */
 static inline void arch_local_irq_restore(unsigned long flags)
 {
-	asm volatile (" mvc .s2 %0,CSR\n" : : "b"(flags));
+	asm volatile (" mvc .s2 %0,CSR\n" : : "b"(flags) : "memory");
 }
 
 /* unconditionally enable interrupts */