[libvirt] [PATCH v2 3/9] qemu: Add the capabilitie to detect if the qemu binary have the capability to use bps_max and friends

Michal Privoznik mprivozn at redhat.com
Fri Sep 19 11:11:16 UTC 2014


On 15.09.2014 19:27, Matthias Gatto wrote:
> Add a value in the enum virQEMUCapsFlags for the qemu capability.
> Set it with virQEMUCapsSet if the binary suport bps_max and they friends.
>
> Signed-off-by: Matthias Gatto <matthias.gatto at outscale.com>
> ---
>   src/qemu/qemu_capabilities.c | 6 ++++++
>   src/qemu/qemu_capabilities.h | 1 +
>   2 files changed, 7 insertions(+)
>
> diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
> index 360cc67..a97ca03 100644
> --- a/src/qemu/qemu_capabilities.c
> +++ b/src/qemu/qemu_capabilities.c
> @@ -265,6 +265,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
>                 "numa",
>                 "memory-backend-file",
>                 "usb-audio",
> +              "drive-iotune-max",
>       );
>
>
> @@ -1063,6 +1064,8 @@ virQEMUCapsComputeCmdFlags(const char *help,
>               virQEMUCapsSet(qemuCaps, QEMU_CAPS_DRIVE_COPY_ON_READ);
>           if (strstr(help, "bps="))
>               virQEMUCapsSet(qemuCaps, QEMU_CAPS_DRIVE_IOTUNE);
> +        if (strstr(help, "bps_max="))
> +            virQEMUCapsSet(qemuCaps, QEMU_CAPS_DRIVE_IOTUNE_MAX);
>       }
>       if ((p = strstr(help, "-vga")) && !strstr(help, "-std-vga")) {
>           const char *nl = strstr(p, "\n");
> @@ -3141,6 +3144,9 @@ virQEMUCapsInitQMPMonitor(virQEMUCapsPtr qemuCaps,
>       if (qemuCaps->version >= 1006000)
>           virQEMUCapsSet(qemuCaps, QEMU_CAPS_DEVICE_VIDEO_PRIMARY);
>
> +    if (qemuCaps->version >= 1007000)
> +        virQEMUCapsSet(qemuCaps, QEMU_CAPS_DRIVE_IOTUNE_MAX);
> +

What's wrong with just the above chunk? I mean, version based checks are 
not good. I'd just drop this one.

>       if (virQEMUCapsProbeQMPCommands(qemuCaps, mon) < 0)
>           goto cleanup;
>       if (virQEMUCapsProbeQMPEvents(qemuCaps, mon) < 0)
> diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
> index 2911759..394a836 100644
> --- a/src/qemu/qemu_capabilities.h
> +++ b/src/qemu/qemu_capabilities.h
> @@ -213,6 +213,7 @@ typedef enum {
>       QEMU_CAPS_NUMA               = 171, /* newer -numa handling with disjoint cpu ranges */
>       QEMU_CAPS_OBJECT_MEMORY_FILE = 172, /* -object memory-backend-file */
>       QEMU_CAPS_OBJECT_USB_AUDIO   = 173, /* usb-audio device support */
> +    QEMU_CAPS_DRIVE_IOTUNE_MAX   = 174, /* -drive bps_max= and friends */
>
>       QEMU_CAPS_LAST,                   /* this must always be the last item */
>   } virQEMUCapsFlags;
>

Michal




More information about the libvir-list mailing list