On Sat, Apr 23, 2016 at 12:08:57AM +0800, Boqun Feng wrote: > How about replace smp_rmb() with a smp_acquire_barrier__after_cmpwait()? > This barrier is designed to provide an ACQUIRE ordering when combining a > cmpwait() .
That's a horrible name for a barrier :-) > And cmpwait() only has minimal ordering guarantee, but if it is actually > an ACQUIRE, then the corresponding smp_acquire_barrier__after_cmpwait() > is just empty. > > We might need this special barrier on ppc, because we can implement it > with "isync" given that cmpwait() has control dependency and ctrl+isync > is ACQUIRE on ppc. > > Thoughts? Provide a PPC specific smp_cond_load_acquire() using ISYNC ?