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

RE: [Xen-devel] Hypercall interface changes for PAE

> But it is greatly simplified, IIUC. If the hypercalls are 
> binary compatible then you have only one set of hypercall 
> interface functions and types, and switching between two 
> *implementations* of pagetable-related stuff (only the things 
> that actually need to be different) is quite straightforward.

For the same reason that Linux doesn't support run-time switching
between PAE and non-PAE kernels, doing the same on Xen is going to be an
equivalent pain in the butt.

The only way it can reasonably be done cleanly and with decent
performance is double compilation of the relevant mm functions in Xen
(and libxc too). In which case, having separate hypercall vectors makes
most sense.

So, the correct thing to do is:
 * export the types to the tools as Keir suggests, 32 bit on non-PAE, 64
bit on PAE (and x86_64)
 * use different vectors for the two types of calls
 * for the moment, map them to the same compile-time function.

This gives us good performance, clean code, and future proofing.


Xen-devel mailing list



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