Re: [PATCH] Fix blkdeviotune for shutoff domain

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

 



On Thu, May 23, 2013 at 14:37:31 +0200, Martin Kletzander wrote:
> Function qemuDomainSetBlockIoTune() was creating job and checking QEMU
> capabilities even when !(flags & VIR_DOMAIN_AFFECT_LIVE) and the
> domain was shutoff.  Fix this with a little cleanup.

Actually, the job needs to be hold for the whole function, not just when
the domain is running...

> diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
> index 3df26b8..49432f0 100644
> --- a/src/qemu/qemu_driver.c
> +++ b/src/qemu/qemu_driver.c
> @@ -13921,27 +13921,12 @@ qemuDomainSetBlockIoTune(virDomainPtr dom,
>      priv = vm->privateData;
>      cfg = virQEMUDriverGetConfig(driver);
> 
> -    if (!(caps = virQEMUDriverGetCapabilities(driver, false)))
> -        goto cleanup;
> -
> -    if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DRIVE_IOTUNE)) {
> -        virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
> -                       _("block I/O throttling not supported with this "
> -                         "QEMU binary"));
> -        goto cleanup;
> -    }
> -
> -    device = qemuDiskPathToAlias(vm, disk, &idx);
> -    if (!device) {
> -        goto cleanup;
> -    }
> -
> -    if (qemuDomainObjBeginJob(driver, vm, QEMU_JOB_MODIFY) < 0)
> +    if (!(device = qemuDiskPathToAlias(vm, disk, &idx)))
>          goto cleanup;

... however, you're right qemuDomainObjBeginJob was not called in the
right place. But rather than moving it further in the code, it should be
moved before qemuDiskPathToAlias.

Jirka

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]