[PATCH 7/7] qemu_hostdev: Resolve Coverity issue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Recent changes uncovered a possibility that 'last_processed_hostdev_vf'
was set to -1 in 'qemuPrepareHostdevPCIDevices' and would cause problems
in for loop end condition in the 'resetvfnetconfig' label if the
variable was never set to 'i' due to 'qemuDomainHostdevNetConfigReplace'
failure.
---
 src/qemu/qemu_hostdev.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/qemu/qemu_hostdev.c b/src/qemu/qemu_hostdev.c
index 9bdace1..970d099 100644
--- a/src/qemu/qemu_hostdev.c
+++ b/src/qemu/qemu_hostdev.c
@@ -644,11 +644,13 @@ inactivedevs:
     }
 
 resetvfnetconfig:
-    for (i = 0; i < last_processed_hostdev_vf; i++) {
-         virDomainHostdevDefPtr hostdev = hostdevs[i];
-         if (hostdev->parent.type == VIR_DOMAIN_DEVICE_NET &&
-             hostdev->parent.data.net) {
-             qemuDomainHostdevNetConfigRestore(hostdev, cfg->stateDir);
+    if (last_processed_hostdev_vf >= 0) {
+        for (i = 0; i < last_processed_hostdev_vf; i++) {
+             virDomainHostdevDefPtr hostdev = hostdevs[i];
+             if (hostdev->parent.type == VIR_DOMAIN_DEVICE_NET &&
+                 hostdev->parent.data.net) {
+                 qemuDomainHostdevNetConfigRestore(hostdev, cfg->stateDir);
+             }
          }
     }
 
-- 
1.8.1.4

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]