提交 e7efffe6 编写于 作者: N Nikolay Shirokovskiy 提交者: Michal Privoznik

qemu: propagate iotune settings to all disks in the group

Currently upon successfull call to qemu's implementation of
virDomainSetBlockIoTune iotune settings are changed only for the
disk given in API if the disk is in iotune group while we need
to change the settings for all disks in the group.
Signed-off-by: NNikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
Reviewed-by: NDaniel P. Berrangé <berrange@redhat.com>
Reviewed-by: NMichal Privoznik <mprivozn@redhat.com>
上级 eb4455da
......@@ -19117,6 +19117,26 @@ qemuDomainSetBlockIoTuneDefaults(virDomainBlockIoTuneInfoPtr newinfo,
}
static void
qemuDomainSetGroupBlockIoTune(virDomainDefPtr def,
virDomainBlockIoTuneInfoPtr iotune)
{
size_t i;
if (!iotune->group_name)
return;
for (i = 0; i < def->ndisks; i++) {
virDomainDiskDefPtr d = def->disks[i];
if (STREQ_NULLABLE(d->blkdeviotune.group_name, iotune->group_name)) {
VIR_FREE(d->blkdeviotune.group_name);
virDomainBlockIoTuneInfoCopy(iotune, &d->blkdeviotune);
}
}
}
static int
qemuDomainSetBlockIoTune(virDomainPtr dom,
const char *path,
......@@ -19419,6 +19439,8 @@ qemuDomainSetBlockIoTune(virDomainPtr dom,
if (virDomainDiskSetBlockIOTune(disk, &info) < 0)
goto endjob;
qemuDomainSetGroupBlockIoTune(def, &info);
if (virDomainObjSave(vm, driver->xmlopt, cfg->stateDir) < 0)
goto endjob;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册