On Tue, Aug 01, 2017 at 03:18:18PM -0700, Paul E. McKenney wrote: > On Tue, Aug 01, 2017 at 06:42:00PM +0200, Peter Zijlstra wrote: > > On Tue, Aug 01, 2017 at 09:14:12AM -0700, Paul E. McKenney wrote: > > > So if ARM really needs the litmus test with smp_rmb() to be allowed, > > > we need to adjust the Linux-kernel memory model appropriately. Which > > > means that one of us needs to reach out to the usual suspects. Would > > > you like to do that, or would you like me to? > > > > I'm really sad ARM8.1 LSE breaks this stuff.. It is rather counter > > intuitive (then again, we _are_ talking barriers). > > No argument. > > Then again, when we said that the Linux kernel memory model would > have a non-trivial rate of change, we weren't joking. > > Will, is this the official description? > > http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0557a.b/index.html > > If so, is B6.1 what we should be looking at?
Sorry it's so tricky to find. The architecture document is here: https://static.docs.arm.com/ddi0487/b/DDI0487B_a_armv8_arm.pdf and in section C3.2.13 ("Atomic memory operations") it states: | The ST<OP> instructions are not regarded as doing a read for the purpose | of a DMB LD barrier. Will