Re: [PATCH] checkpatch: Whine about ACCESS_ONCE
From: Joe Perches
Date: Sun Apr 17 2016 - 04:28:16 EST
On Sun, 2016-04-17 at 07:43 +0200, Julia Lawall wrote:
> On Sat, 16 Apr 2016, Joe Perches wrote:
> > On Sat, 2016-04-16 at 12:04 -0700, Joe Perches wrote:
> > > Add a test for use of ACCESS_ONCE that could be written using
> > > READ_ONCE or WRITE_ONCE.
> > >
> > > --fix it too if desired.
> >
> > And here's a simple coccinelle script that does a
> > rather better job:
> >
> > $ cat access_once.cocci
> > @@
> > expression e1;
> > expression e2;
> > @@
> >
> > - ACCESS_ONCE(e1) = e2
> > + WRITE_ONCE(e1, e2)
> >
> > @@
> > expression e1;
> > @@
> >
> > - ACCESS_ONCE(e1)
> > + READ_ONCE(e1)
>
> Looks good to me. Is this something to put in the kernel?
Maybe. There are more than 500 of these ACCESS_ONCE
uses that could be converted.
The kernel cocci scripts are typically more complicated
with virtual org/report/context/patch blocks.
So perhaps this needs to be fleshed out more.
Works for me as-is though.