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

Laine Stump laine at laine.org
Mon Dec 19 15:25: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 babe2ad..50151ae 100644
--- a/src/conf/domain_addr.c
+++ b/src/conf/domain_addr.c
@@ -661,7 +661,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 442d3ad..59dbe22 100644
--- a/src/qemu/qemu_domain_address.c
+++ b/src/qemu/qemu_domain_address.c
@@ -1162,7 +1162,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)) {
@@ -1351,7 +1351,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