From: "Daniel P. Berrange" <berrange@xxxxxxxxxx> Unconditionally call the XenD APIs for save/restore, since that driver will always be open. Signed-off-by: Daniel P. Berrange <berrange@xxxxxxxxxx> --- src/xen/xen_driver.c | 21 ++++----------------- src/xen/xend_internal.c | 2 ++ 2 files changed, 6 insertions(+), 17 deletions(-) diff --git a/src/xen/xen_driver.c b/src/xen/xen_driver.c index 988dbce..a963e08 100644 --- a/src/xen/xen_driver.c +++ b/src/xen/xen_driver.c @@ -876,8 +876,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", @@ -885,9 +883,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 @@ -923,8 +919,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); @@ -971,8 +966,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", @@ -980,9 +973,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 @@ -994,11 +985,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 diff --git a/src/xen/xend_internal.c b/src/xen/xend_internal.c index d6a3698..ccbbf66 100644 --- a/src/xen/xend_internal.c +++ b/src/xen/xend_internal.c @@ -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; } -- 1.8.1.4 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list