Преглед изворни кода

ARC: document memory clobber in irq control macros

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Vineet Gupta пре 10 година
родитељ
комит
88ec11b0f8
1 измењених фајлова са 9 додато и 0 уклоњено
  1. 9 0
      arch/arc/include/asm/irqflags.h

+ 9 - 0
arch/arc/include/asm/irqflags.h

@@ -41,6 +41,15 @@
 
 /******************************************************************
  * IRQ Control Macros
+ *
+ * All of them have "memory" clobber (compiler barrier) which is needed to
+ * ensure that LD/ST requiring irq safetly (R-M-W when LLSC is not available)
+ * are redone after IRQs are re-enabled (and gcc doesn't reuse stale register)
+ *
+ * Noted at the time of Abilis Timer List corruption
+ * 	Orig Bug + Rejected solution	: https://lkml.org/lkml/2013/3/29/67
+ * 	Reasoning			: https://lkml.org/lkml/2013/4/8/15
+ *
  ******************************************************************/
 
 /*