[Pkg-libvirt-maintainers] Bug#757609: libvirtd internal error: Unable to parse /proc/meminfo

Jamie Heilman jamie at audible.transient.net
Sat Aug 9 18:50:56 UTC 2014


Package: libvirt-daemon
Version: 1.2.7-6
Severity: grave

The parsing of /proc/meminfo in the latest versions of the libvirt
packages is flawed.  Please remove it until upstream figures out what
they're doing.

There have been reports of the parsing failing when running under Xen,
but it fails in in other scenarios too; In my case Linux 3.16 (I
tested 3.15.8 too) with:

[2]cucamonga<~/>grep -i huge /boot/config-3.1*
/boot/config-3.15.8:CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
/boot/config-3.15.8:CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
/boot/config-3.15.8:CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
/boot/config-3.15.8:CONFIG_TRANSPARENT_HUGEPAGE=y
/boot/config-3.15.8:CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
/boot/config-3.15.8:# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
/boot/config-3.15.8:# CONFIG_HUGETLBFS is not set
/boot/config-3.15.8:# CONFIG_HUGETLB_PAGE is not set
/boot/config-3.16.0:CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
/boot/config-3.16.0:CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
/boot/config-3.16.0:CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
/boot/config-3.16.0:CONFIG_TRANSPARENT_HUGEPAGE=y
/boot/config-3.16.0:CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
/boot/config-3.16.0:# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
/boot/config-3.16.0:# CONFIG_HUGETLBFS is not set
/boot/config-3.16.0:# CONFIG_HUGETLB_PAGE is not set

In any case, /proc/meminfo does not always have the items libvirtd
assumes it does, and handles that failure poorly.

2014-08-09 18:32:30.722+0000: 3589: info : libvirt version: 1.2.7, package: 6 (root 2014-08-08-16:09:22 bogon)
2014-08-09 18:32:30.722+0000: 3589: error : virAuditOpen:62 : Unable to initialize audit layer: Protocol not supported
2014-08-09 18:32:31.720+0000: 3712: error : virFileGetDefaultHugepageSize:2958 : internal error: Unable to parse /proc/meminfo
2014-08-09 18:32:31.720+0000: 3712: error : virStateInitialize:749 : Initialization of QEMU state driver failed: internal error: Unable to parse /proc/meminfo
2014-08-09 18:32:31.720+0000: 3712: error : daemonRunStateInit:922 : Driver state initialization failed

Reverting to libvirt-bin 1.2.4 allows libvirtd to work again.

-- 
Jamie Heilman                     http://audible.transient.net/~jamie/



More information about the Pkg-libvirt-maintainers mailing list