On Thu, 20 Dec 2018 at 15:39, Laine Stump <laine@redhat.com> wrote:
[...]
I think you're right. Each bus requires some amount of IO space, and I
thought I recalled someone saying that all of the available IO space is
exhausted after 7 or 8 buses. This was in relation to PCIe, where each
root port is a bus, and can potentially take up IO space, so possibly in
that context they were talking about the buses *after* the root bus and
pcie-pci-bridge, which would bring us back to the same number you're
getting.

For PCIe our solution was to turn off IO space usage on the
pcie-root-ports, but you can't do that for conventional PCI buses, since
the devices might actually need IO space to function properly and the
standard requires that you provide it.

Ok, that makes sense.
 
> The real question though is why you need to create sooooo many PCI buses.
> Each bus can do 31 devices.  Do you really need to have more than 279
> devices in your VM ?

And if you do need more than 279 devices, do they all need to be
hot-pluggable? If not, then you can put up to 8 devices on each slot
(functions 0 - 7).

True. I'll use the function field too, then.

Thanks a lot!

Riccardo