Re: [PATCH 13/13] rcutorture: formal: prepare for ACCESS_ONCE() removal

From: Paul E. McKenney
Date: Tue Oct 10 2017 - 12:35:40 EST


On Tue, Oct 10, 2017 at 05:24:42PM +0100, Mark Rutland wrote:
> On Tue, Oct 10, 2017 at 07:52:52AM -0700, Paul E. McKenney wrote:
> > On Tue, Oct 10, 2017 at 01:50:39PM +0100, Mark Rutland wrote:
> > > On Tue, Oct 10, 2017 at 05:47:12AM -0700, Paul E. McKenney wrote:
> > > > On Tue, Oct 10, 2017 at 10:54:14AM +0100, Mark Rutland wrote:
>
> > > > > I've assumed that the ACCESS_ONCE() definition needs to be kept until
> > > > > that's ripped out treewide. Please shout if that's not the case!
> > > >
> > > > You have it right. This case is an exception because this code is
> > > > used only by RCU, which has long since had ACCESS_ONCE() ripped out.
> > >
> > > Sorry; I meant that in this case, I leave this code as:
> > >
> > > #define ACCESS_ONCE(x) (*(volatile typeof(x) *) &(x))
> > > #define READ_ONCE(x) (*(volatile typeof(x) *) &(x))
> > > #define WRITE_ONCE(x) ((*(volatile typeof(x) *) &(x)) = (val))
> > >
> > > ... if you mean that we can drop ACCESS_ONCE() in this case, then I can
> > > rip that out.
> >
> > We can drop ACCESS_ONCE() in this case.
>
> Done. Sorry for the confusion!

Very good, thank you!

Thanx, Paul