[libvirt] [PATCH v2 02/11] conf: fix fromConfig argument to virDomainPCIAddressValidate()

Laine Stump laine at laine.org
Mon Nov 7 22:12:20 UTC 2016


fromConfig should be true if the caller want
virDomainPCIAddressValidate() to loosen restrictions on its
interpretation of the pciConnectFlags. In particular, either
PCI_DEVICE or PCIE_DEVICE will be counted as equivalent to both, and
HOTPLUG will be ignored. In a few cases where libvirt was manually
overriding automatic address assignment, it was setting fromConfig to
false when validating the hardcoded manual override. This patch
changes those to fromConfig=true as a preemptive strike against any
future bugs that might otherwise surface.
---
 src/conf/domain_addr.c         | 2 +-
 src/qemu/qemu_domain_address.c | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/conf/domain_addr.c b/src/conf/domain_addr.c
index 5e514f9..daa77f4 100644
--- a/src/conf/domain_addr.c
+++ b/src/conf/domain_addr.c
@@ -603,7 +603,7 @@ virDomainPCIAddressReleaseSlot(virDomainPCIAddressSetPtr addrs,
     if (!(addrStr = virDomainPCIAddressAsString(addr)))
         goto cleanup;
 
-    if (!virDomainPCIAddressValidate(addrs, addr, addrStr, flags, false))
+    if (!virDomainPCIAddressValidate(addrs, addr, addrStr, flags, true))
         goto cleanup;
 
     addrs->buses[addr->bus].slot[addr->slot].functions = 0;
diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c
index e221bbf..a1bdf046 100644
--- a/src/qemu/qemu_domain_address.c
+++ b/src/qemu/qemu_domain_address.c
@@ -1165,7 +1165,7 @@ qemuDomainValidateDevicePCISlotsPIIX3(virDomainDefPtr def,
             if (!(addrStr = virDomainPCIAddressAsString(&tmp_addr)))
                 goto cleanup;
             if (!virDomainPCIAddressValidate(addrs, &tmp_addr,
-                                             addrStr, flags, false))
+                                             addrStr, flags, true))
                 goto cleanup;
 
             if (virDomainPCIAddressSlotInUse(addrs, &tmp_addr)) {
@@ -1354,7 +1354,7 @@ qemuDomainValidateDevicePCISlotsQ35(virDomainDefPtr def,
             if (!(addrStr = virDomainPCIAddressAsString(&tmp_addr)))
                 goto cleanup;
             if (!virDomainPCIAddressValidate(addrs, &tmp_addr,
-                                             addrStr, flags, false))
+                                             addrStr, flags, true))
                 goto cleanup;
 
             if (virDomainPCIAddressSlotInUse(addrs, &tmp_addr)) {
-- 
2.7.4




More information about the libvir-list mailing list