Only initialize capabilities after setting dir permissions

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.
This commit is contained in:
Daniel P. Berrange 2013-01-07 16:18:33 +00:00
parent 68e7bc4561
commit 038cffd831

View File

@ -831,9 +831,6 @@ qemuStartup(bool privileged,
if (!qemu_driver->capsCache) if (!qemu_driver->capsCache)
goto error; goto error;
if ((qemu_driver->caps = qemuCreateCapabilities(qemu_driver)) == NULL)
goto error;
if ((qemu_driver->activePciHostdevs = pciDeviceListNew()) == NULL) if ((qemu_driver->activePciHostdevs = pciDeviceListNew()) == NULL)
goto error; goto error;
@ -873,6 +870,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 /* 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 * it, since we can't assume the root mount point has permissions that
* will let our spawned QEMU instances use it. * will let our spawned QEMU instances use it.