]> xenbits.xensource.com Git - libvirt.git/commitdiff
Simplify the Xen domain save/restore driver methods
authorDaniel P. Berrange <berrange@redhat.com>
Tue, 30 Apr 2013 15:44:21 +0000 (16:44 +0100)
committerDaniel P. Berrange <berrange@redhat.com>
Thu, 9 May 2013 12:16:20 +0000 (13:16 +0100)
Unconditionally call the XenD APIs for save/restore, since that
driver will always be open.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
src/xen/xen_driver.c
src/xen/xend_internal.c

index 64b7c26b9eaa44937869533a017bf3c0a7fb7477..80f2dbc823aef6d616f59e095cacbdfe560f2c1b 100644 (file)
@@ -887,8 +887,6 @@ static int
 xenUnifiedDomainSaveFlags(virDomainPtr dom, const char *to, const char *dxml,
                           unsigned int flags)
 {
-    xenUnifiedPrivatePtr priv = dom->conn->privateData;
-
     virCheckFlags(0, -1);
     if (dxml) {
         virReportError(VIR_ERR_ARGUMENT_UNSUPPORTED, "%s",
@@ -896,9 +894,7 @@ xenUnifiedDomainSaveFlags(virDomainPtr dom, const char *to, const char *dxml,
         return -1;
     }
 
-    if (priv->opened[XEN_UNIFIED_XEND_OFFSET])
-        return xenDaemonDomainSave(dom, to);
-    return -1;
+    return xenDaemonDomainSave(dom, to);
 }
 
 static int
@@ -934,8 +930,7 @@ xenUnifiedDomainManagedSave(virDomainPtr dom, unsigned int flags)
     if (!name)
         goto cleanup;
 
-    if (priv->opened[XEN_UNIFIED_XEND_OFFSET])
-        ret = xenDaemonDomainSave(dom, name);
+    ret = xenDaemonDomainSave(dom, name);
 
 cleanup:
     VIR_FREE(name);
@@ -982,8 +977,6 @@ static int
 xenUnifiedDomainRestoreFlags(virConnectPtr conn, const char *from,
                              const char *dxml, unsigned int flags)
 {
-    xenUnifiedPrivatePtr priv = conn->privateData;
-
     virCheckFlags(0, -1);
     if (dxml) {
         virReportError(VIR_ERR_ARGUMENT_UNSUPPORTED, "%s",
@@ -991,9 +984,7 @@ xenUnifiedDomainRestoreFlags(virConnectPtr conn, const char *from,
         return -1;
     }
 
-    if (priv->opened[XEN_UNIFIED_XEND_OFFSET])
-        return xenDaemonDomainRestore(conn, from);
-    return -1;
+    return xenDaemonDomainRestore(conn, from);
 }
 
 static int
@@ -1005,11 +996,7 @@ xenUnifiedDomainRestore(virConnectPtr conn, const char *from)
 static int
 xenUnifiedDomainCoreDump(virDomainPtr dom, const char *to, unsigned int flags)
 {
-    xenUnifiedPrivatePtr priv = dom->conn->privateData;
-
-    if (priv->opened[XEN_UNIFIED_XEND_OFFSET])
-        return xenDaemonDomainCoreDump(dom, to, flags);
-    return -1;
+    return xenDaemonDomainCoreDump(dom, to, flags);
 }
 
 static int
index d7dc8f18c12ea8ba7e09107e81fa3e79bd9aa48d..35b58c94479ae749a840b9355f25b77978231d84 100644 (file)
@@ -1422,6 +1422,8 @@ xenDaemonDomainSave(virDomainPtr domain, const char *filename)
 
     /* We can't save the state of Domain-0, that would mean stopping it too */
     if (domain->id == 0) {
+        virReportError(VIR_ERR_INVALID_ARG, "%s",
+                       _("Cannot save host domain"));
         return -1;
     }