浏览代码

ARC: document memory clobber in irq control macros

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Vineet Gupta 11 年之前
父节点
当前提交
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
+ *
  ******************************************************************/
 
 /*