[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH] Add support for detecting capablities using QMP commands



On 09/28/2012 09:43 AM, Daniel P. Berrange wrote:
> From: "Daniel P. Berrange" <berrange redhat com>
> 
> Start a QEMU process using
> 
>    $QEMU -S -no-user-config -nodefaults \
>          -nographic -M none -qmp unix:/some/path,server,nowait
> 
> and talk QMP over stdio to discover what capabilities the
> binary supports. This works for QEMU 1.2.0 or later and
> for older QEMU automatically fallback to the old approach
> of parsing -help and related command line args.
> 
> Signed-off-by: Daniel P. Berrange <berrange redhat com>
> ---
>  src/qemu/qemu_capabilities.c | 419 +++++++++++++++++++++++++++++++++++++++----
>  src/qemu/qemu_capabilities.h |   5 +-
>  src/qemu/qemu_driver.c       |   2 +-
>  3 files changed, 385 insertions(+), 41 deletions(-)

> +    char *monarg = NULL;
> +    char *monpath = NULL;
> +
> +    if (virAsprintf(&monpath, "%s/%s", libDir, "capabilities.monitor.sock") < 0) {
> +        virReportOOMError();
> +        goto cleanup;
> +    }
> +    if (virAsprintf(&monarg, "unix:%s,server,nowait", monpath) < 0) {
> +        virReportOOMError();
> +        goto cleanup;
> +    }

I would have used virCommandAddArgFormat() instead of creating my own
temporary string here, but that's minor.

ACK; you fixed my concerns from the previous version.

Also, be sure you run 'make check'; somewhere between commit de29867 and
7022b09, you broke qemuhelptest (I'm assuming it will get fixed soon,
perhaps by this commit, so I'm not chasing which commit did the actual
breakage):

16) QEMU Help String Parsing qemu-1.2.0
... qemu-1.2.0: computed flags do not match: got
0x0000b0f2f1bffefff4cffd62fffddc6e, expected
0x0000b0f2f1bffefff4effd72fffddc6e
Missing flag 36
Missing flag 53
FAILED

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]