[libvirt] [PATCH 4/4] qemu: Use ShutdownVMDaemon for all startup cleanup paths

Cole Robinson crobinso at redhat.com
Mon May 17 17:17:05 UTC 2010


The current cleanup: in StartVMDaemon path is a poor duplication.
qemuShutdownVMDaemon can handle teardown for inactive VMs, so let's use it.

Signed-off-by: Cole Robinson <crobinso at redhat.com>
---
 src/qemu/qemu_driver.c |   18 +-----------------
 1 files changed, 1 insertions(+), 17 deletions(-)

diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index d2f1a36..114917d 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -3569,23 +3569,7 @@ static int qemudStartVMDaemon(virConnectPtr conn,
     return 0;
 
 cleanup:
-    /* We jump here if we failed to start the VM for any reason
-     * XXX investigate if we can kill this block and safely call
-     * qemudShutdownVMDaemon even though no PID is running */
-    qemuDomainReAttachHostDevices(driver, vm->def);
-
-    if (driver->securityDriver &&
-        driver->securityDriver->domainRestoreSecurityAllLabel)
-        driver->securityDriver->domainRestoreSecurityAllLabel(vm, 0);
-    if (driver->securityDriver &&
-        driver->securityDriver->domainReleaseSecurityLabel)
-        driver->securityDriver->domainReleaseSecurityLabel(vm);
-    qemuRemoveCgroup(driver, vm, 1);
-    if (logfile != -1)
-        close(logfile);
-    vm->def->id = -1;
-    return -1;
-
+    /* We jump here if we failed to start the VM for any reason */
 abort:
     /* We jump here if we failed to initialize the now running VM
      * killing it off and pretend we never started it */
-- 
1.6.6.1




More information about the libvir-list mailing list