virsh cpu-stats guest --start 0 --count 3 It outputs right but the return value is 1 rather than 0 echo $? 1 Found by running libvirt-autotest ./run -t libvirt --tests virsh_cpu_stats --- tools/virsh-domain.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c index b29f934..bcf495c 100644 --- a/tools/virsh-domain.c +++ b/tools/virsh-domain.c @@ -6350,7 +6350,9 @@ cmdCPUStats(vshControl *ctl, const vshCmd *cmd) if (!nparams) { vshPrint(ctl, "%s", _("No per-CPU stats available")); - goto do_show_total; + if (show_total) + goto do_show_total; + goto cleanup; } if (VIR_ALLOC_N(params, nparams * MIN(show_count, 128)) < 0) @@ -6389,10 +6391,12 @@ cmdCPUStats(vshControl *ctl, const vshCmd *cmd) } VIR_FREE(params); -do_show_total: - if (!show_total) + if (!show_total) { + ret = true; goto cleanup; + } +do_show_total: /* get supported num of parameter for total statistics */ if ((nparams = virDomainGetCPUStats(dom, NULL, 0, -1, 1, flags)) < 0) goto failed_stats; -- 1.8.3.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list