WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] Linux questions

>>> Keir Fraser <Keir.Fraser@xxxxxxxxxxxx> 03.12.07 19:32 >>>
>On 3/12/07 11:40, "Jan Beulich" <jbeulich@xxxxxxxxxx> wrote:
>
>>> rmb() is more powerful than barrier(), not the converse.
>> 
>> Oh, sorry, I mixed barrier() with mb(). So the proposal would then simply
>> be the other way around (the use of locked operations or fence instructions
>> on x86 is really unnecessary as long as WC memory or non-temporal stores
>> don't need to be taken into consideration).
>
>Then the implementation of rmb() should be equivalent to barrier(). The code
>in time-xen.c is implemented to the interface definitions of barrier() and
>rmb() -- the former is used just where instruction ordering is important;
>the latter where dynamic execution order matters too.

I have to disagree: At least the uses of barrier() in monotonic_clock() appear
to be in places where in reality (and from a theoretical standpoint) rmb()
ought to be used.

But I agree that rmb() (and also wmb()) on x86 doesn't need to be more
than barrier() (except, as said, in the context of WC memory or non-temporal 
memory accesses) - isn't that exactly what you just recently did in the
hypervisor?

Jan



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel