Messages in this thread | | | Date | Wed, 14 Jul 2010 10:45:19 -0700 | From | "H. Peter Anvin" <> | Subject | Re: [patch 134/149] x86, paravirt: Add a global synchronization point for pvclock |
| |
On 07/14/2010 10:34 AM, Jeremy Fitzhardinge wrote: > On 07/14/2010 10:30 AM, H. Peter Anvin wrote: >> If gcc ever starts reordering volatile operations, including "asm >> volatile", the kernel will break, and will be unfixable. Just about >> every single driver will break. All over the kernel we're explicitly or >> implicitly making the assumption that volatile operations are strictly >> ordered by the compiler with respect to each other. > > Can you give an example? All the cases I've seen rely on the ordering > properties of "memory" clobbers, which is sound. (And volatile > variables are a completely unrelated issue, of course.) >
I/O ports, for example.
-hpa
| |