Re: [Xen-devel] [PATCH] Cleanup rmb()/wmb() usage

Anthony Liguori
2005-02-23T07:57:41Z

Keir Fraser wrote:

>
> On 23 Feb 2005, at 03:38, Anthony Liguori wrote:
>
> asm/system.h is a private kernel header so should not be directly
> included from user space. Inlcuding it may not work for all versions
> of Linux, or for other architectures.

Actually, asm/system.h is designed for inclusion in userspace apps (and
kernel space).  Hence the __KERNEL__ guards around certain sections.

It''s used in a few notable userspace apps including glibc and MySQL.
That said, Xen should not depend on Linux if it doesn''t have to.

> We should probably merge the barrier defs we have scattered in the
> tools directory into one low-level architectural header that we
> include everywhere, and extend for x86/64, ia64, and so on.

Agreed.  Any ideas on where it would live?  I didn''t see any likely
place which is why I used asm/system.  io/ring.h seemed the closest fit
but that''s not architecture specific.

> Only Centaur clones that have been set up by the kernel to do write
> combining. Xen does not ever enable write-combining on normal RAM and
> so a barrier is never required.

Ah, that makes sense.  It still would be nice to have the barriers in a
single location.  Pick a place and I''ll submit a patch.

Regards,

--
Anthony Liguori
anthony@codemonkey.ws