[Libvir] Bug in the virDomainGetInfo() API of libvirt 0.1.9 with Xen 3.0.3

Daniel Veillard veillard at redhat.com
Fri Jan 12 13:51:56 UTC 2007


On Fri, Jan 12, 2007 at 02:42:13PM +0100, Philippe Berthault wrote:
> Daniel P. Berrange a écrit :
> >On Fri, Jan 12, 2007 at 11:47:16AM +0100, Philippe Berthault wrote:
> >  
> >>The maxMem field of the virDomainInfo structure is given in bytes 
> >>instead of Kbytes when the domain is 0 (Domain-0). With others domains, 
> >>the value of maxMem is correct.
> >>
> >>Exemple with virsh:
> >> On a system with 4 GB memory, virsh reports:
> >> # virsh dominfo 0
> >> ...
> >> Max memory: 4294967292 kB
> >>
> >>With the same libvirt version 0.1.9 but with an older Xen (not 3.0.3), 
> >>the maxMem value of Domain-0 is correct.
> >>    
> >
> >This sounds like a bug in Xen, rather than a bug in libvirt - we don't
> >have any special handling for Domain-0 - we're just passing back through
> >whatever data we get from Xen.
> >
> >Dan.
> >  
> This problem seems to be caused by a missing initialization (in Xen or 
> libvirt ? to be determined) because after setting the system memory size 
> by using the "xm mem-max" command on Domain-0, the Max memory value 
> returned by virsh is correct and reflect the value passed to the xm command.
> 
> This problem of incoherent maxMem value on Domain-0 has been detected 
> after a system reboot.

  I think Xen just returns -1 when the field is uninitialized, probably
meaning 'all physical memory'. Once you use "xm mem-max 0 ..." then it
consider the Dom0 domain constrained, but not before. And since there
are machine where it's possible to hot plug new memory this is a way to
not poll the current physical memory, a bit weird but that can be understood.

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