lkml.org 
[lkml]   [2010]   [Jul]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [patch 134/149] x86, paravirt: Add a global synchronization point for pvclock
    On 07/14/2010 01:50 PM, H. Peter Anvin wrote:
    > invlpg, in the general case, definitely needs a memory clobber even if
    > volatiles are ordered, since it needs to be ordered with regards to
    > non-volatile memory operations.
    >

    Yes. I'd say write_crX should need that too, since they can they can
    have a variety global effects on how memory addressing works (from tlb
    flush to switching pagetable formats).

    > Note that memory clobbers don't by themselves enforce ordering since
    > they don't prevent the ordering of memory clobbers with respect to each
    > other.
    >

    Hm. Well we do *definitely* rely on that. I guess technically we'd
    need at least a memory input on the asm to be ordered with respect to a
    memory clobber. But that doesn't seem to have been an issue (or perhaps
    its mixed up with the secret semantics of asm volatile).

    J


    \
     
     \ /
      Last update: 2010-07-14 23:13    [W:4.033 / U:0.088 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site