Re: [PATCH tip/core/rcu 9/9] rcu: Provide counterpart to rcu_dereference() for non-RCU situations

From: Paul E. McKenney
Date: Wed Oct 29 2014 - 08:42:22 EST


On Wed, Oct 29, 2014 at 11:57:04AM +0100, Peter Zijlstra wrote:
> On Tue, Oct 28, 2014 at 03:10:02PM -0700, Paul E. McKenney wrote:
> > From: "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx>
> >
> > Although rcu_dereference() and friends can be used in situations where
> > object lifetimes are being managed by something other than RCU, the
> > resulting sparse and lockdep-RCU noise can be annoying. This commit
> > therefore supplies a lockless_dereference(), which provides the
> > protection for dereferences without the RCU-related debugging noise.
> >
> > Reported-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
> > Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
> > ---
>
> > +#define lockless_dereference(p) \
> > +({ \
> > + typeof(p) _________p1 = ACCESS_ONCE(p); \
> > + smp_read_barrier_depends(); /* Dependency order vs. p above. */ \
> > + (_________p1); \
> > +})
>
> Should we not have at least a single user along with this?

And we do. In fact, Al Viro has pulled this into his vfs.git tree and
so I will be dropping this patch in favor of his.

Thanx, Paul

--
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/