[libvirt] [PATCH 2/4] libxl: don't remove persistent domain on start failure

Jim Fehlig jfehlig at suse.com
Mon Jun 29 17:30:13 UTC 2015


libxlDomainCreateXML() would remove a persistent domain if
libxlDomainStart() failed.  Check if domain is persistent
before removing.

Signed-off-by: Jim Fehlig <jfehlig at suse.com>
---
 src/libxl/libxl_driver.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c
index 8a8d27d..fb9523a 100644
--- a/src/libxl/libxl_driver.c
+++ b/src/libxl/libxl_driver.c
@@ -918,7 +918,10 @@ libxlDomainCreateXML(virConnectPtr conn, const char *xml,
 
     if (libxlDomainStart(driver, vm, (flags & VIR_DOMAIN_START_PAUSED) != 0,
                      -1) < 0) {
-        virDomainObjListRemove(driver->domains, vm);
+        if (!vm->persistent) {
+            virDomainObjListRemove(driver->domains, vm);
+            vm = NULL;
+        }
         goto endjob;
     }
 
-- 
2.3.7




More information about the libvir-list mailing list