[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] 32/64-bit hypercall interface




On 30 Sep 2005, at 17:34, Hollis Blanchard wrote:

Cross-architecture 'compatibility' (same binary layout) is not currently an aim for the Xen-public interfaces, and I don't expect it to become so. If we went down that road we'd have to stipulate things like endianess, which I think we can all agree is not the way to go.

I certainly don't want to wholesale restructure our interfaces just to fortuitously make things match up for 32- and 64-bit ppc (which is what you are actually arguing for, in the guise of more general cross-architecture compatibility).

Yes, I'm not trying to be sneaky about this: this is a problem for ppc64. It could also be a problem for x86-64, except that x86-32 is so limited compared to x86-64 that apparently nobody wants to do this.

I think the Linux kernel folks learned the "unsigned long" lesson too late, and now there is quite a lot of fixup code to convert 32-bit userspace structs to 64-bit kernel structs (have a look at linux/fs/compat_ioctl.c and compat.c). It seems a shame to repeat the same mistakes in Xen...

There's the rub: we don't expect to ever want to provide 32-bit x86 ABI compatibility on 64-bit x86 Xen. We will not be supporting 32-bit paravirtualised guests on 64-bit x86 Xen, and we've taken the approach of requiring separate 32- and 64-bit toolsets (which isn't too painful on x86 since full-fledged 64-bit filesystems are quite easy to come by).

Really this sounds to me like this is only going to be a problem for ppc. That given, knocking up a translation script to import the interfaces into your 32-bit toolchain does seem worthy of consideration. It wouldn't allow you to use the same tool binaries on both 32- and 64-bit ppc Xen, but I don't know how much you actually care about that...

 -- Keir


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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.