[PATCH 3/4] qemuDomainDiskControllerIsBusy: Optimize checking for SCSI hostdevs
Peter Krempa
pkrempa at redhat.com
Fri Nov 13 14:58:41 UTC 2020
Iterate through hostdevs only when the controller type is
VIR_DOMAIN_CONTROLLER_TYPE_SCSI.
Signed-off-by: Peter Krempa <pkrempa at redhat.com>
---
src/qemu/qemu_hotplug.c | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
index 90ed59a0ee..124f60912f 100644
--- a/src/qemu/qemu_hotplug.c
+++ b/src/qemu/qemu_hotplug.c
@@ -5373,13 +5373,15 @@ qemuDomainDiskControllerIsBusy(virDomainObjPtr vm,
return true;
}
- for (i = 0; i < vm->def->nhostdevs; i++) {
- hostdev = vm->def->hostdevs[i];
- if (!virHostdevIsSCSIDevice(hostdev) ||
- detach->type != VIR_DOMAIN_CONTROLLER_TYPE_SCSI)
- continue;
- if (hostdev->info->addr.drive.controller == detach->idx)
- return true;
+ if (detach->type == VIR_DOMAIN_CONTROLLER_TYPE_SCSI) {
+ for (i = 0; i < vm->def->nhostdevs; i++) {
+ hostdev = vm->def->hostdevs[i];
+ if (!virHostdevIsSCSIDevice(hostdev))
+ continue;
+
+ if (hostdev->info->addr.drive.controller == detach->idx)
+ return true;
+ }
}
return false;
--
2.28.0
More information about the libvir-list
mailing list