On Thu, 13 Nov 2014 19:41:00 -0800
Joe Perches <j...@perches.com> wrote:

> On Thu, 2014-11-13 at 22:21 -0500, Pranith Kumar wrote:
> > Remove volatile type qualifier and use ACCESS_ONCE() in its place for each
> > access. Using volatile is not recommended as documented in
> > Documentation/volatile-considered-harmful.txt.
> > 
> > Here logbuf_cpu is a local variable and it is not clear how it is being 
> > accessed
> > concurrently. We should remove volatile accesses entirely here, but for now 
> > make
> > a safer change of using ACCESS_ONCE().
> 
> Not recommended does not mean "don't ever use".

I would argue that the use of volatile in open code is evil and prone
to bugs. I agree that this is one of the few occasions that this is not
the case.

> 
> Forcing the volatile at each use site instead
> of the declaration isn't necessarily better.
> 
> I think the code is more readable as-is but I'm
> not going to object if Andrew picks this up...
> 

The ACCESS_ONCE() calls at each location makes it a bit uglier, but it
drives in the point of what that is doing. Where as the volatile may be
missed.

-- Steve

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to