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(a)redhat.com>
---
src/qemu/qemu_command.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index 014bd031a8..22f041a956 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -3035,11 +3035,11 @@ qemuBuildDomainForbidLegacyUSBController(const virDomainDef *def)
static int
qemuBuildLegacyUSBControllerCommandLine(virCommandPtr cmd,
- const virDomainDef *def,
- int usbcontroller)
+ const virDomainDef *def)
{
size_t i;
size_t nlegacy = 0;
+ size_t nusb = 0;
for (i = 0; i < def->ncontrollers; i++) {
virDomainControllerDefPtr cont = def->controllers[i];
@@ -3053,6 +3053,8 @@ qemuBuildLegacyUSBControllerCommandLine(virCommandPtr cmd,
if (cont->model == VIR_DOMAIN_CONTROLLER_MODEL_USB_DEFAULT)
nlegacy++;
+ else
+ nusb++;
}
if (nlegacy > 1) {
@@ -3062,7 +3064,7 @@ qemuBuildLegacyUSBControllerCommandLine(virCommandPtr cmd,
return -1;
}
- if (usbcontroller == 0 &&
+ if (nusb == 0 &&
!qemuBuildDomainForbidLegacyUSBController(def) &&
!ARCH_IS_S390(def->os.arch)) {
/* We haven't added any USB controller yet, but we haven't been asked
@@ -3199,7 +3201,7 @@ qemuBuildControllerDevCommandLine(virCommandPtr cmd,
}
}
- if (qemuBuildLegacyUSBControllerCommandLine(cmd, def, usbcontroller) < 0)
+ if (qemuBuildLegacyUSBControllerCommandLine(cmd, def) < 0)
goto cleanup;
ret = 0;
--
2.20.1