Re: futex atomic vs ordering constraints

From: Peter Zijlstra
Date: Tue Sep 01 2015 - 12:38:37 EST


On Fri, Aug 28, 2015 at 06:33:06PM -0700, Davidlohr Bueso wrote:
> On Wed, 2015-08-26 at 20:16 +0200, Peter Zijlstra wrote:
> > Of course, if anything else prior to futex_atomic_op_inuser() implies an
> > (RCsc) RELEASE or stronger the primitive can do without providing
> > anything itself.
> >
> > This turns out to be the case, a successful get_futex_key() implies a
> > full memory barrier; recent: 1d0dcb3ad9d3 ("futex: Implement lockless
> > wakeups").
>
> Hmm while it is certainly true that get_futex_key() implies a full
> barrier, I don't see why you're referring to the recent wake_q stuff;

D'oh, because I'm a sheep or so. I meant:

b0c29f79ecea (futexes: Avoid taking the hb->lock if there's nothing to wake up)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/