From d7a3700ee73bb75798dfc4c004039e6ad7f7ba24 Mon Sep 17 00:00:00 2001 From: "Daniel P. Berrange" Date: Thu, 24 Jan 2013 18:32:31 +0000 Subject: [PATCH] Move QEMU capabilities initialization later in QEMU startup Currently QEMU capabilities are initialized before the QEMU driver sets ownership on its various directories. The upshot is that if you change the user/group in the qemu.conf file, libvirtd will fail to probe QEMU the first time it is run after the config change. Moving QEMU capabilities initialization to after the chown() calls fixes this Signed-off-by: Daniel P. Berrange --- src/qemu/qemu_driver.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 5b9215939b..13bf854228 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -825,13 +825,6 @@ qemuStartup(bool privileged, if (qemuSecurityInit(qemu_driver) < 0) goto error; - qemu_driver->capsCache = qemuCapsCacheNew(qemu_driver->libDir, - qemu_driver->stateDir, - qemu_driver->user, - qemu_driver->group); - if (!qemu_driver->capsCache) - goto error; - if ((qemu_driver->activePciHostdevs = pciDeviceListNew()) == NULL) goto error; @@ -871,6 +864,12 @@ qemuStartup(bool privileged, } } + qemu_driver->capsCache = qemuCapsCacheNew(qemu_driver->libDir, + qemu_driver->user, + qemu_driver->group); + if (!qemu_driver->capsCache) + goto error; + if ((qemu_driver->caps = qemuCreateCapabilities(qemu_driver)) == NULL) goto error; -- 2.39.5