Re: [PATCH 0/24] make atomic_read() behave consistently across all architectures
From: Segher Boessenkool <hidden>
Date: 2007-08-16 19:40:03
Also in:
linux-arch, lkml
From: Segher Boessenkool <hidden>
Date: 2007-08-16 19:40:03
Also in:
linux-arch, lkml
quoted
The only thing volatile on an asm does is create a side effect on the asm statement; in effect, it tells the compiler "do not remove this asm even if you don't need any of its outputs". It's not disabling optimisation likely to result in bugs, heisen- or otherwise; _not_ putting the volatile on an asm that needs it simply _is_ a bug :-)Yep. And the reason it is a bug is that it fails to disable the relevant compiler optimizations. So I suspect that we might actually be saying the same thing here.
We're not saying the same thing, but we do agree :-) Segher