mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
qemu_driver: move iothread duplicate check into one place
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
This commit is contained in:
parent
99f00fb8bc
commit
7f602b8291
@ -20212,13 +20212,6 @@ virDomainIOThreadIDAdd(virDomainDefPtr def,
|
||||
{
|
||||
virDomainIOThreadIDDefPtr iothrid = NULL;
|
||||
|
||||
if (virDomainIOThreadIDFind(def, iothread_id)) {
|
||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||
_("cannot duplicate iothread_id '%u' in iothreadids"),
|
||||
iothread_id);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (VIR_ALLOC(iothrid) < 0)
|
||||
goto error;
|
||||
|
||||
|
@ -5584,13 +5584,6 @@ qemuDomainHotplugAddIOThread(virQEMUDriverPtr driver,
|
||||
qemuMonitorIOThreadInfoPtr *new_iothreads = NULL;
|
||||
virDomainIOThreadIDDefPtr iothrid;
|
||||
|
||||
if (virDomainIOThreadIDFind(vm->def, iothread_id)) {
|
||||
virReportError(VIR_ERR_INVALID_ARG,
|
||||
_("an IOThread is already using iothread_id '%u'"),
|
||||
iothread_id);
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
if (virAsprintf(&alias, "iothread%u", iothread_id) < 0)
|
||||
return -1;
|
||||
|
||||
@ -5726,6 +5719,22 @@ qemuDomainHotplugDelIOThread(virQEMUDriverPtr driver,
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
qemuDomainAddIOThreadCheck(virDomainDefPtr def,
|
||||
unsigned int iothread_id)
|
||||
{
|
||||
if (virDomainIOThreadIDFind(def, iothread_id)) {
|
||||
virReportError(VIR_ERR_INVALID_ARG,
|
||||
_("an IOThread is already using iothread_id '%u'"),
|
||||
iothread_id);
|
||||
return -1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
qemuDomainDelIOThreadCheck(virDomainDefPtr def,
|
||||
unsigned int iothread_id)
|
||||
@ -5793,6 +5802,9 @@ qemuDomainChgIOThread(virQEMUDriverPtr driver,
|
||||
}
|
||||
|
||||
if (add) {
|
||||
if (qemuDomainAddIOThreadCheck(def, iothread_id) < 0)
|
||||
goto endjob;
|
||||
|
||||
if (qemuDomainHotplugAddIOThread(driver, vm, iothread_id) < 0)
|
||||
goto endjob;
|
||||
} else {
|
||||
@ -5809,6 +5821,9 @@ qemuDomainChgIOThread(virQEMUDriverPtr driver,
|
||||
|
||||
if (persistentDef) {
|
||||
if (add) {
|
||||
if (qemuDomainAddIOThreadCheck(persistentDef, iothread_id) < 0)
|
||||
goto endjob;
|
||||
|
||||
if (!virDomainIOThreadIDAdd(persistentDef, iothread_id))
|
||||
goto endjob;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user