[libvirt] qemu driver fails to load on Xen after be0782e1

Until recently, the qemu driver has always succeeded in loading even on a system booted to Xen. Commit be0782e1 broke this, hence libvirtd no longer loads xendom0 # /usr/sbin/libvirtd -l 2014-08-04 22:27:31.586+0000: 35859: info : libvirt version: 1.2.8 2014-08-04 22:27:31.586+0000: 35859: error : virFileGetDefaultHugepageSize:2958 : internal error: Unable to parse /proc/meminfo 2014-08-04 22:27:31.586+0000: 35859: error : virStateInitialize:749 : Initialization of QEMU state driver failed: internal error: Unable to parse /proc/meminfo 2014-08-04 22:27:31.586+0000: 35859: error : daemonRunStateInit:922 : Driver state initialization failed Problem is the Xen kernel does not provide any huge page info in /proc/meminfo xendom0 # cat /proc/meminfo | grep -i huge xendom0 # Michal, short of always building with '--without-qemu' on a Xen system, is it possible to make detection of huge pages less fatal wrt loading the qemu driver? Regards, Jim

Jim Fehlig wrote:
Until recently, the qemu driver has always succeeded in loading even on a system booted to Xen. Commit be0782e1 broke this, hence libvirtd no longer loads
xendom0 # /usr/sbin/libvirtd -l 2014-08-04 22:27:31.586+0000: 35859: info : libvirt version: 1.2.8 2014-08-04 22:27:31.586+0000: 35859: error : virFileGetDefaultHugepageSize:2958 : internal error: Unable to parse /proc/meminfo 2014-08-04 22:27:31.586+0000: 35859: error : virStateInitialize:749 : Initialization of QEMU state driver failed: internal error: Unable to parse /proc/meminfo 2014-08-04 22:27:31.586+0000: 35859: error : daemonRunStateInit:922 : Driver state initialization failed
Problem is the Xen kernel does not provide any huge page info in /proc/meminfo
xendom0 # cat /proc/meminfo | grep -i huge xendom0 #
BTW, I think this would be the case for any kernel with CONFIG_HUGETLB_PAGE turned off.
Michal, short of always building with '--without-qemu' on a Xen system, is it possible to make detection of huge pages less fatal wrt loading the qemu driver?
E.g. assume zero/default for entries not present? Regards, Jim

On Tue, Aug 05, 2014 at 11:16:53AM -0600, Jim Fehlig wrote:
Jim Fehlig wrote:
Until recently, the qemu driver has always succeeded in loading even on a system booted to Xen. Commit be0782e1 broke this, hence libvirtd no longer loads
xendom0 # /usr/sbin/libvirtd -l 2014-08-04 22:27:31.586+0000: 35859: info : libvirt version: 1.2.8 2014-08-04 22:27:31.586+0000: 35859: error : virFileGetDefaultHugepageSize:2958 : internal error: Unable to parse /proc/meminfo 2014-08-04 22:27:31.586+0000: 35859: error : virStateInitialize:749 : Initialization of QEMU state driver failed: internal error: Unable to parse /proc/meminfo 2014-08-04 22:27:31.586+0000: 35859: error : daemonRunStateInit:922 : Driver state initialization failed
Problem is the Xen kernel does not provide any huge page info in /proc/meminfo
xendom0 # cat /proc/meminfo | grep -i huge xendom0 #
BTW, I think this would be the case for any kernel with CONFIG_HUGETLB_PAGE turned off.
Yes, we should be robust to this situation.
Michal, short of always building with '--without-qemu' on a Xen system, is it possible to make detection of huge pages less fatal wrt loading the qemu driver?
E.g. assume zero/default for entries not present?
If the dirs / files don't exist, we should just not report any huge page info at all. Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|

On 11.08.2014 11:16, Daniel P. Berrange wrote:
On Tue, Aug 05, 2014 at 11:16:53AM -0600, Jim Fehlig wrote:
Jim Fehlig wrote:
Until recently, the qemu driver has always succeeded in loading even on a system booted to Xen. Commit be0782e1 broke this, hence libvirtd no longer loads
xendom0 # /usr/sbin/libvirtd -l 2014-08-04 22:27:31.586+0000: 35859: info : libvirt version: 1.2.8 2014-08-04 22:27:31.586+0000: 35859: error : virFileGetDefaultHugepageSize:2958 : internal error: Unable to parse /proc/meminfo 2014-08-04 22:27:31.586+0000: 35859: error : virStateInitialize:749 : Initialization of QEMU state driver failed: internal error: Unable to parse /proc/meminfo 2014-08-04 22:27:31.586+0000: 35859: error : daemonRunStateInit:922 : Driver state initialization failed
Problem is the Xen kernel does not provide any huge page info in /proc/meminfo
xendom0 # cat /proc/meminfo | grep -i huge xendom0 #
BTW, I think this would be the case for any kernel with CONFIG_HUGETLB_PAGE turned off.
Yes, we should be robust to this situation.
And as of d26e810838fad we are fault tolerant.
Michal, short of always building with '--without-qemu' on a Xen system, is it possible to make detection of huge pages less fatal wrt loading the qemu driver?
E.g. assume zero/default for entries not present?
If the dirs / files don't exist, we should just not report any huge page info at all.
Regards, Daniel
Michal
participants (3)
-
Daniel P. Berrange
-
Jim Fehlig
-
Michal Privoznik