On Fri, Jun 28, 2019 at 05:50:03PM +0100, Mark Rutland wrote:
> > +           /*
> > +            * Wake any perf_event_free_task() waiting for this event to be
> > +            * freed.
> > +            */
> > +           smp_mb(); /* pairs with wait_var_event() */
> > +           wake_up_var(var);
> 
> Huh, so wake_up_var() doesn't imply a RELEASE?
> 
> As an aside, doesn't that mean all callers of wake_up_var() have to do
> likewise to ensure it isn't re-ordered with whatever prior stuff they're
> trying to notify waiters about? Several do an smp_store_release() then a
> wake_up_var(), but IIUC the wake_up_var() could get pulled before that
> release...

Yah,...

  
https://lkml.kernel.org/r/20190624165012.gh3...@hirez.programming.kicks-ass.net

I needs to get back to that.

Reply via email to