[Libvir] [PATCH] pae/nonpae capabilities for paravirt xen guests

Daniel Veillard veillard at redhat.com
Mon Mar 26 21:30:44 UTC 2007


On Mon, Mar 26, 2007 at 08:39:16PM +0100, Daniel P. Berrange wrote:
> On Fri, Mar 23, 2007 at 12:24:57PM -0700, David Lutterkort wrote:
> > I noticed that the guest capabilities on a xen dom0 always contain both
> > the pae and nonpae feature - AFAIK, you can't mix pae/nonpae guests and
> > hosts, and only one of the features should be there.
> 
> So it turned out to be a bit more complicated. The <guest> blocks are
> supposed to be keyed off (machine,os-type) tuples eg (i686,xen) or
> (x86_64,hvm), etc.  The impl was in fact though doing a linear conversion
> from Xen's /sys/hypervisor/properties/capabilities which is keyed off a
> (machine,os-type,flags) tuple (where flags==pae). So we needed to collapse
> one level of cardinaility from the Xen data - hence the <pae/> & <nonpae/>
> flags can both be used at once.
> 
> Anyway the collapsing was not correct, so I'm attaching a patch to address
> that. This does a couple of other things too

  Patch looks fine,

>  - Re-factors xenGetCapabilities so that it merely opens the /proc & /sysfs
>    files and then passes the handle down to xenMakeCapabilitiesXML method.
>  - Adds a huge test suite which has a library of various cpuinfo &
>    capabilities files from various archs and calls xenMakeCapabilitiesXML
>    with all of them

  That is great !

>  - Removes the <emulator> element from paravirt <guest> block since it is
>    only relevant to HVM.

  I remember wondering a bit about the empty element a couple of weeks ago,
good :-)
  
>  - Adds PowerPC support

  Just one nitpick, what about raising an error at the unknown case in the
switch:
  /* XXX surely no other Xen archs exist  */

  thanks a lot, being able to regression test more code is really cool !

Daniel

-- 
Red Hat Virtualization group http://redhat.com/virtualization/
Daniel Veillard      | virtualization library  http://libvirt.org/
veillard at redhat.com  | libxml GNOME XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine  http://rpmfind.net/




More information about the libvir-list mailing list