Re: [PATCH 0/24] make atomic_read() behave consistently across allarchitectures

From: Arjan van de Ven
Date: Fri Aug 17 2007 - 14:59:26 EST



On Fri, 2007-08-17 at 12:50 -0600, Chris Friesen wrote:
> Linus Torvalds wrote:
>
> > - in other words, the *only* possible meaning for "volatile" is a purely
> > single-CPU meaning. And if you only have a single CPU involved in the
> > process, the "volatile" is by definition pointless (because even
> > without a volatile, the compiler is required to make the C code appear
> > consistent as far as a single CPU is concerned).
>
> I assume you mean "except for IO-related code and 'random' values like
> jiffies" as you mention later on? I assume other values set in
> interrupt handlers would count as "random" from a volatility perspective?
>
> > So anybody who argues for "volatile" fixing bugs is fundamentally
> > incorrect. It does NO SUCH THING. By arguing that, such people only show
> > that you have no idea what they are talking about.
>
> What about reading values modified in interrupt handlers, as in your
> "random" case? Or is this a bug where the user of atomic_read() is
> invalidly expecting a read each time it is called?

the interrupt handler case is an SMP case since you do not know
beforehand what cpu your interrupt handler will run on.



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