[libvirt] [PATCH V1 1/4] Add support for QEMU -add-fd support detection

Eric Blake eblake at redhat.com
Tue Jan 29 23:24:14 UTC 2013


On 01/29/2013 09:52 AM, Stefan Berger wrote:
> Add support for QEMU -add-fd command line parameter detection
> 
> ---
>  src/qemu/qemu_capabilities.c |    3 +++
>  src/qemu/qemu_capabilities.h |    1 +
>  2 files changed, 4 insertions(+)
> 
> Index: libvirt/src/qemu/qemu_capabilities.c
> ===================================================================
> --- libvirt.orig/src/qemu/qemu_capabilities.c
> +++ libvirt/src/qemu/qemu_capabilities.c
> @@ -203,6 +203,7 @@ VIR_ENUM_IMPL(qemuCaps, QEMU_CAPS_LAST,
>  
>                "usb-serial", /* 125 */
>                "usb-net",
> +              "add-fd"

Needs a trailing comma.

>  
>      );
>  
> @@ -1064,6 +1065,8 @@ qemuCapsComputeCmdFlags(const char *help
>          qemuCapsSet(caps, QEMU_CAPS_SMBIOS_TYPE);
>      if (strstr(help, "-sandbox"))
>          qemuCapsSet(caps, QEMU_CAPS_SECCOMP_SANDBOX);
> +    if (strstr(help, "-add-fd"))
> +        qemuCapsSet(caps, QEMU_CAPS_ADD_FD);

Won't work the way you want.  -add-fd wasn't supported until qemu 1.3,
but for qemu 1.2 and beyond, we only use QMP probing, not -help
scraping.  So we really need to determine which QMP command we can issue
to determine whether -add-fd is available on the command line; but since
Anthony hasn't yet implemented 'query-config-schema'[1] (and even if he
does, it probably won't be in time for qemu 1.3), we'll have to settle
on version checks for now :(

[1]https://www.redhat.com/archives/libvir-list/2013-January/msg01600.html

> Index: libvirt/src/qemu/qemu_capabilities.h
> ===================================================================
> --- libvirt.orig/src/qemu/qemu_capabilities.h
> +++ libvirt/src/qemu/qemu_capabilities.h
> @@ -165,6 +165,7 @@ enum qemuCapsFlags {
>      QEMU_CAPS_SCLP_S390          = 124, /* -device sclp* */
>      QEMU_CAPS_DEVICE_USB_SERIAL  = 125, /* -device usb-serial */
>      QEMU_CAPS_DEVICE_USB_NET     = 126, /* -device usb-net */
> +    QEMU_CAPS_ADD_FD             = 127, /* -add-fd */

Okay, so you are taking the approach that we insist on command line
support (qemu 1.3), not just the QMP command existing (qemu 1.2).  It's
easy to probe whether 'add-fd' QMP exists (query-command), but harder to
determine if command line support is present when using just QMP with
the current state of qemu.

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

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 621 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20130129/84cd5cd7/attachment-0001.sig>


More information about the libvir-list mailing list