On Wed, Oct 21, 2015 at 12:35:23PM -0700, Paul E. McKenney wrote: > > > > > I ask this because I recall Peter once bought up a discussion: > > > > > > > > > > https://lkml.org/lkml/2015/8/26/596 > > So a full barrier on one side of these operations is enough, I think. > > IOW, there is no need to strengthen these operations. > > Do we need to also worry about other futex use cases? Worry, always! But yes, there is one more specific usecase, which is that of a condition variable. When we go sleep on a futex, we might want to assume visibility of the stores done by the thread that woke us by the time we wake up. And.. aside from the thoughts I outlined in the email referenced above, there is always the chance people accidentally rely on the strong ordering on their x86 CPU and find things come apart when ran on their ARM/MIPS/etc.. There are a fair number of people who use the raw futex call and we have 0 visibility into many of them. The assumed and accidental ordering guarantees will forever remain a mystery. -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html