mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-22 20:45:18 +00:00
qemu: separate counting of USB controllers
qemuBuildLegacyUSBControllerCommandLine is the only place where we need to count the USB controllers. Count them again instead of keeping track in a variable passed to qemuBuildControllerDevStr. This removes the need for another variable in the loop in qemuBuildControllerDevCommandLine. Signed-off-by: Ján Tomko <jtomko@redhat.com> Reviewed-by: Cole Robinson <crobinso@redhat.com>
This commit is contained in:
parent
dab3d5d350
commit
8f5e50e003
@ -3063,11 +3063,11 @@ qemuBuildDomainForbidLegacyUSBController(const virDomainDef *def)
|
|||||||
|
|
||||||
static int
|
static int
|
||||||
qemuBuildLegacyUSBControllerCommandLine(virCommandPtr cmd,
|
qemuBuildLegacyUSBControllerCommandLine(virCommandPtr cmd,
|
||||||
const virDomainDef *def,
|
const virDomainDef *def)
|
||||||
int usbcontroller)
|
|
||||||
{
|
{
|
||||||
size_t i;
|
size_t i;
|
||||||
size_t nlegacy = 0;
|
size_t nlegacy = 0;
|
||||||
|
size_t nusb = 0;
|
||||||
|
|
||||||
for (i = 0; i < def->ncontrollers; i++) {
|
for (i = 0; i < def->ncontrollers; i++) {
|
||||||
virDomainControllerDefPtr cont = def->controllers[i];
|
virDomainControllerDefPtr cont = def->controllers[i];
|
||||||
@ -3081,6 +3081,8 @@ qemuBuildLegacyUSBControllerCommandLine(virCommandPtr cmd,
|
|||||||
|
|
||||||
if (cont->model == VIR_DOMAIN_CONTROLLER_MODEL_USB_DEFAULT)
|
if (cont->model == VIR_DOMAIN_CONTROLLER_MODEL_USB_DEFAULT)
|
||||||
nlegacy++;
|
nlegacy++;
|
||||||
|
else
|
||||||
|
nusb++;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (nlegacy > 1) {
|
if (nlegacy > 1) {
|
||||||
@ -3090,7 +3092,7 @@ qemuBuildLegacyUSBControllerCommandLine(virCommandPtr cmd,
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (usbcontroller == 0 &&
|
if (nusb == 0 &&
|
||||||
!qemuBuildDomainForbidLegacyUSBController(def) &&
|
!qemuBuildDomainForbidLegacyUSBController(def) &&
|
||||||
!ARCH_IS_S390(def->os.arch)) {
|
!ARCH_IS_S390(def->os.arch)) {
|
||||||
/* We haven't added any USB controller yet, but we haven't been asked
|
/* We haven't added any USB controller yet, but we haven't been asked
|
||||||
@ -3227,7 +3229,7 @@ qemuBuildControllerDevCommandLine(virCommandPtr cmd,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (qemuBuildLegacyUSBControllerCommandLine(cmd, def, usbcontroller) < 0)
|
if (qemuBuildLegacyUSBControllerCommandLine(cmd, def) < 0)
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
ret = 0;
|
ret = 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user