On Fri, Jan 10, 2020 at 08:24:00PM +0100, Arnd Bergmann wrote: > On Fri, Jan 10, 2020 at 5:56 PM Will Deacon <will@xxxxxxxxxx> wrote: > > > +/* > > + * Use __READ_ONCE() instead of READ_ONCE() if you do not require any > > + * atomicity or dependency ordering guarantees. Note that this may result > > + * in tears! > > + */ > > +#define __READ_ONCE(x) (*(volatile typeof(x) *)&(x)) > > + > > This probably allows writing > > extern int i; > __READ_ONCE(i) = 1; > > and not get a warning for it. How about also casting to 'const'? Well spotted! I'll fold that in. Will