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/
Home Products Support Community News


Re: [Xen-devel] [patch] make evtchn_upcall_pending arch-specific type

On 1 Apr 2006, at 20:45, Jimi Xenidis wrote:

        unsigned long evtchn_upcall_bits;

We'd have to group more than just the mask and pending flags into that long on x86 as otherwise we change the size of a public structure.

No size change, those two elements are padded to a long to accommodate the size and alignment of evtchn_pending_sel; so the size remains the same.

Well that is true. I'd still like to see how big the patch would be to hide accesses of the pending flag behind a macro, and how clean that would end up being.

There maybe also be the issue of non-atomic updates of the mask flag, but that mostly only happens in xenlinux. IA64 and x86 can update distinct bytes separately and atomically, but I'm not sure if powerpc guarantees writes are atomic at byte granularity? That flag gets touched quite a lot when running xenlinux, so we wouldn't want to make the accesses anything other than ordinary writes on x86 and ia64. That's one of the benefits for us of currently defining the mask flag in a separate uint8_t.

 -- Keir

Xen-devel mailing list