From: "Daniel P. Berrange" <berrange(a)redhat.com>
The current code is initializing capabilities before setting
directory permissions. Thus the QEMU binaries being run may
not have the ability to create the UNIX monitor socket on
the first run of libvirtd.
---
src/qemu/qemu_driver.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index ac4c094..cea76af 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -831,9 +831,6 @@ qemuStartup(bool privileged,
if (!qemu_driver->capsCache)
goto error;
- if ((qemu_driver->caps = qemuCreateCapabilities(qemu_driver)) == NULL)
- goto error;
-
if ((qemu_driver->activePciHostdevs = pciDeviceListNew()) == NULL)
goto error;
@@ -870,6 +867,9 @@ qemuStartup(bool privileged,
}
}
+ if ((qemu_driver->caps = qemuCreateCapabilities(qemu_driver)) == NULL)
+ goto error;
+
/* If hugetlbfs is present, then we need to create a sub-directory within
* it, since we can't assume the root mount point has permissions that
* will let our spawned QEMU instances use it.
--
1.8.0.1