[libvirt] [PATCH 21/40] Simplify the Xen domain get XML driver method
Jim Fehlig
jfehlig at suse.com
Wed May 8 21:56:14 UTC 2013
Daniel P. Berrange wrote:
> From: "Daniel P. Berrange" <berrange at redhat.com>
>
> The xenUnifiedDomainGetXMLDesc driver can assume that
> the XM and XenD drivers are always present
>
> Signed-off-by: Daniel P. Berrange <berrange at redhat.com>
> ---
> src/xen/xen_driver.c | 24 +++++++++---------------
> src/xen/xend_internal.c | 6 ------
> 2 files changed, 9 insertions(+), 21 deletions(-)
>
> diff --git a/src/xen/xen_driver.c b/src/xen/xen_driver.c
> index 1db831d..f11e5bf 100644
> --- a/src/xen/xen_driver.c
> +++ b/src/xen/xen_driver.c
> @@ -1106,23 +1106,17 @@ xenUnifiedDomainGetXMLDesc(virDomainPtr dom, unsigned int flags)
> {
> xenUnifiedPrivatePtr priv = dom->conn->privateData;
>
> - if (dom->id == -1 && priv->xendConfigVersion < XEND_CONFIG_VERSION_3_0_4) {
> - if (priv->opened[XEN_UNIFIED_XM_OFFSET])
> - return xenXMDomainGetXMLDesc(dom, flags);
> + if (dom->id < 0 && priv->xendConfigVersion < XEND_CONFIG_VERSION_3_0_4) {
> + return xenXMDomainGetXMLDesc(dom, flags);
> } else {
> - if (priv->opened[XEN_UNIFIED_XEND_OFFSET]) {
> - char *cpus, *res;
> - xenUnifiedLock(priv);
> - cpus = xenDomainUsedCpus(dom);
> - xenUnifiedUnlock(priv);
> - res = xenDaemonDomainGetXMLDesc(dom, flags, cpus);
> - VIR_FREE(cpus);
> - return res;
> - }
> + char *cpus, *res;
> + xenUnifiedLock(priv);
> + cpus = xenDomainUsedCpus(dom);
> + xenUnifiedUnlock(priv);
> + res = xenDaemonDomainGetXMLDesc(dom, flags, cpus);
> + VIR_FREE(cpus);
> + return res;
> }
> -
> - virReportError(VIR_ERR_NO_SUPPORT, __FUNCTION__);
> - return NULL;
> }
>
>
> diff --git a/src/xen/xend_internal.c b/src/xen/xend_internal.c
> index dbad83f..930b882 100644
> --- a/src/xen/xend_internal.c
> +++ b/src/xen/xend_internal.c
> @@ -1610,17 +1610,11 @@ xenDaemonDomainGetXMLDesc(virDomainPtr domain,
> unsigned int flags,
> const char *cpus)
> {
> - xenUnifiedPrivatePtr priv = domain->conn->privateData;
> virDomainDefPtr def;
> char *xml;
>
> /* Flags checked by virDomainDefFormat */
>
> - if (domain->id < 0 && priv->xendConfigVersion < XEND_CONFIG_VERSION_3_0_4) {
> - /* fall-through to the next driver to handle */
> - return NULL;
> - }
> -
>
This function has another caller, xenUnifiedDomainMigrateFinish, which
appears to only support xendConfigVersion > 3_0_4 anyhow. ACK to the
changes in this patch.
Regards,
Jim
> if (!(def = xenDaemonDomainFetch(domain->conn,
> domain->id,
> domain->name,
>
More information about the libvir-list
mailing list