[libvirt] [PATCH 1/4] xen: Make xenDaemon*DeviceFlags errors less confusing

Eric Blake eblake at redhat.com
Fri Oct 1 21:07:13 UTC 2010


On 10/01/2010 02:09 PM, Jiri Denemark wrote:
> When a user calls to virDomain{Attach,Detach,Update}DeviceFlags() with
> flags == VIR_DOMAIN_DEVICE_MODIFY_LIVE on an inactive guest running on
> an old Xen hypervisor (such as RHEL-5) xend_internal driver reports:
>
>      Xend version does not support modifying persistent config
>
> which is pretty confusing since no-one requested to modify persistent
> config.

Hmm - given the recent discussion on vcpus (which is probably what made 
you look at this, right?)...

> ---
>   src/xen/xend_internal.c |   36 ++++++++++++++++++------------------
>   1 files changed, 18 insertions(+), 18 deletions(-)
>
> diff --git a/src/xen/xend_internal.c b/src/xen/xend_internal.c
> index fce0233..1318bd4 100644
> --- a/src/xen/xend_internal.c
> +++ b/src/xen/xend_internal.c
> @@ -3878,6 +3878,12 @@ xenDaemonAttachDeviceFlags(virDomainPtr domain, const char *xml,
>       priv = (xenUnifiedPrivatePtr) domain->conn->privateData;
>
>       if (domain->id<  0) {
> +        /* Cannot modify live config if domain is inactive */
> +        if (flags&  VIR_DOMAIN_DEVICE_MODIFY_LIVE) {
> +            virXendError(VIR_ERR_OPERATION_INVALID, "%s",
> +                         _("Cannot modify live config if domain is inactive"));
> +            return -1;
> +        }

Should we always error out if _LIVE and inactive, or should we 
special-case _CONFIG|_LIVE by silently ignoring the _LIVE flag on 
inactive domains?

-- 
Eric Blake   eblake at redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org




More information about the libvir-list mailing list