[libvirt] [PATCH] domain: Improve error output for virDomainListGetStats

Luyao Huang lhuang at redhat.com
Tue Nov 4 14:44:55 UTC 2014


Thanks your advise :) and I have moved the check 
in qemuConnectGetAllDomainStats.

And the v2:

https://www.redhat.com/archives/libvir-list/2014-November/msg00069.html

Thanks,
Luyao Huang

----- Original Message -----
From: "Peter Krempa" <pkrempa at redhat.com>
To: "Luyao Huang" <lhuang at redhat.com>, libvir-list at redhat.com
Sent: Tuesday, November 4, 2014 7:20:45 PM
Subject: Re: [libvirt] [PATCH] domain: Improve error output for virDomainListGetStats

On 11/04/14 07:51, Luyao Huang wrote:
> When pass flags --domain and --list-* to cmdDomstats,
> a unsupport error will output from qemuConnectGetAllDomainStats.
> 
> error: unsupported flags (0x1) in function qemuConnectGetAllDomainStats
> 
>>From manual of virsh: The approaches can't be combined.
> 
> Improve error to:
> 
> error: --domain and --list-* flags are mutually exclusive
> 
> Signed-off-by: Luyao Huang <lhuang at redhat.com>
> ---
>  src/libvirt-domain.c | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
> 
> diff --git a/src/libvirt-domain.c b/src/libvirt-domain.c
> index 7dc3146..6ae6dd2 100644
> --- a/src/libvirt-domain.c
> +++ b/src/libvirt-domain.c
> @@ -11053,6 +11053,19 @@ virDomainListGetStats(virDomainPtr *doms,
>          goto cleanup;
>      }
>  
> +    if (flags & (VIR_CONNECT_LIST_DOMAINS_ACTIVE |
> +                 VIR_CONNECT_LIST_DOMAINS_INACTIVE |
> +                 VIR_CONNECT_LIST_DOMAINS_PERSISTENT |
> +                 VIR_CONNECT_LIST_DOMAINS_TRANSIENT |
> +                 VIR_CONNECT_LIST_DOMAINS_RUNNING |
> +                 VIR_CONNECT_LIST_DOMAINS_SHUTOFF |
> +                 VIR_CONNECT_LIST_DOMAINS_PAUSED |
> +                 VIR_CONNECT_LIST_DOMAINS_OTHER)) {
> +        virReportInvalidArg(flags, "%s",
> +                    _("--domain and --list-* flags are mutually exclusive"));
> +        goto cleanup;
> +    }

>From what I remember it was a deliberate design decision to avoid
reporting this error either from virsh or the library itself so that we
possibly can add the filtering later on.

This should be done in the qemu driver impl of the function so that we
can possibly do it later without breaking old clients

> +
>      conn = doms[0]->conn;
>      virCheckConnectReturn(conn, -1);
>  
> 

Peter




More information about the libvir-list mailing list