]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: allow 32 slots on pcie-expander-bus, not just 1
authorLaine Stump <laine@laine.org>
Wed, 5 Oct 2016 15:26:07 +0000 (11:26 -0400)
committerDaniel P. Berrange <berrange@redhat.com>
Thu, 6 Oct 2016 10:54:49 +0000 (11:54 +0100)
When I added support for the pcie-expander-bus controller in commit
bc07251f, I incorrectly thought that it only had a single slot
available. Actually it has 32 slots, just like the root complex aka
pcie-root (the part that I *did* get correct is that unlike pcie-root
a pcie-expander-bus doesn't allow any integrated endpoint devices -
only pcie-root-ports and dmi-to-pci-controllers are allowed).

(cherry picked from commit 22afd44171a2df74fecb7058d146e83adddaae45)

src/conf/domain_addr.c

index c1b5580bea36424a97c67bdb9dbbe30527be1b82..742b7b86c55219550c990755c2e57b037d6508d7 100644 (file)
@@ -304,13 +304,13 @@ virDomainPCIAddressBusSetModel(virDomainPCIAddressBusPtr bus,
         bus->maxSlot = VIR_PCI_ADDRESS_SLOT_LAST;
         break;
     case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_EXPANDER_BUS:
-        /* single slot, no hotplug, only accepts pcie-root-port or
+        /* 32 slots, no hotplug, only accepts pcie-root-port or
          * dmi-to-pci-bridge
          */
         bus->flags = (VIR_PCI_CONNECT_TYPE_PCIE_ROOT_PORT |
                       VIR_PCI_CONNECT_TYPE_DMI_TO_PCI_BRIDGE);
         bus->minSlot = 0;
-        bus->maxSlot = 0;
+        bus->maxSlot = VIR_PCI_ADDRESS_SLOT_LAST;
         break;
 
     default: