From 7329f91f2698ae4ed33d5cb271408082ad37234c Mon Sep 17 00:00:00 2001 From: "Daniel P. Berrange" Date: Thu, 2 May 2013 14:36:45 +0100 Subject: [PATCH] Simplify the Xen domain autostart driver method Unconditionally call into the XenD or XM drivers for autostart handling, since they are guaranteed to be open --- src/xen/xen_driver.c | 28 ++++++++-------------------- src/xen/xend_internal.c | 14 -------------- 2 files changed, 8 insertions(+), 34 deletions(-) diff --git a/src/xen/xen_driver.c b/src/xen/xen_driver.c index 797359aa59..703116ffb7 100644 --- a/src/xen/xen_driver.c +++ b/src/xen/xen_driver.c @@ -1475,16 +1475,10 @@ xenUnifiedDomainGetAutostart(virDomainPtr dom, int *autostart) { xenUnifiedPrivatePtr priv = dom->conn->privateData; - if (priv->xendConfigVersion < XEND_CONFIG_VERSION_3_0_4) { - if (priv->opened[XEN_UNIFIED_XM_OFFSET]) - return xenXMDomainGetAutostart(dom, autostart); - } else { - if (priv->opened[XEN_UNIFIED_XEND_OFFSET]) - return xenDaemonDomainGetAutostart(dom, autostart); - } - - virReportError(VIR_ERR_NO_SUPPORT, __FUNCTION__); - return -1; + if (priv->xendConfigVersion < XEND_CONFIG_VERSION_3_0_4) + return xenXMDomainGetAutostart(dom, autostart); + else + return xenDaemonDomainGetAutostart(dom, autostart); } static int @@ -1492,16 +1486,10 @@ xenUnifiedDomainSetAutostart(virDomainPtr dom, int autostart) { xenUnifiedPrivatePtr priv = dom->conn->privateData; - if (priv->xendConfigVersion < XEND_CONFIG_VERSION_3_0_4) { - if (priv->opened[XEN_UNIFIED_XM_OFFSET]) - return xenXMDomainSetAutostart(dom, autostart); - } else { - if (priv->opened[XEN_UNIFIED_XEND_OFFSET]) - return xenDaemonDomainSetAutostart(dom, autostart); - } - - virReportError(VIR_ERR_NO_SUPPORT, __FUNCTION__); - return -1; + if (priv->xendConfigVersion < XEND_CONFIG_VERSION_3_0_4) + return xenXMDomainSetAutostart(dom, autostart); + else + return xenDaemonDomainSetAutostart(dom, autostart); } static char * diff --git a/src/xen/xend_internal.c b/src/xen/xend_internal.c index 680690708d..53a8ca0275 100644 --- a/src/xen/xend_internal.c +++ b/src/xen/xend_internal.c @@ -2540,13 +2540,6 @@ xenDaemonDomainGetAutostart(virDomainPtr domain, int *autostart) { struct sexpr *root; const char *tmp; - xenUnifiedPrivatePtr priv = domain->conn->privateData; - - /* xm_internal.c (the support for defined domains from /etc/xen - * config files used by old Xen) will handle this. - */ - if (priv->xendConfigVersion < XEND_CONFIG_VERSION_3_0_4) - return -1; root = sexpr_get(domain->conn, "/xend/domain/%s?detail=1", domain->name); if (root == NULL) { @@ -2573,13 +2566,6 @@ xenDaemonDomainSetAutostart(virDomainPtr domain, int autostart) virBuffer buffer = VIR_BUFFER_INITIALIZER; char *content = NULL; int ret = -1; - xenUnifiedPrivatePtr priv = domain->conn->privateData; - - /* xm_internal.c (the support for defined domains from /etc/xen - * config files used by old Xen) will handle this. - */ - if (priv->xendConfigVersion < XEND_CONFIG_VERSION_3_0_4) - return -1; root = sexpr_get(domain->conn, "/xend/domain/%s?detail=1", domain->name); if (root == NULL) { -- GitLab