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] Hypercall interface changes for PAE

To: <david.nospam.hopwood@xxxxxxxxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: RE: [Xen-devel] Hypercall interface changes for PAE
From: "Ian Pratt" <m+Ian.Pratt@xxxxxxxxxxxx>
Date: Tue, 31 May 2005 23:42:45 +0100
Delivery-date: Tue, 31 May 2005 22:42:00 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcVmL7sFxqZVK68PTy2KVC2tmYwIIgAANLCw
Thread-topic: [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.

Best,
Ian

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

<Prev in Thread] Current Thread [Next in Thread>
  • RE: [Xen-devel] Hypercall interface changes for PAE, Ian Pratt <=