Hello,
I see that as part of libvirt's documentation [0] the q35 machine type will
feature at most 1 hotplugged PCIe device - default - and users must prepare
in advance according to their expectations of how many ifaces will be
hotplugged:
"""
Slots on the pcie-root controller do not support hotplug, so the device
will be hotplugged into the pcie-root-port controller. If you plan to
hotplug more than a single PCI Express device, you should add a suitable
number of pcie-root-port controllers when defining the guest: for example,
add
```xml
<controller type='pci' model='pcie-root'/>
<controller type='pci' model='pcie-root-port'/>
<controller type='pci' model='pcie-root-port'/>
<controller type='pci' model='pcie-root-port'/>
```
if you expect to hotplug up to three PCI Express devices, either emulated
or assigned from the host.
"""
Is there any alternative to this ?
For our use case, I'm considering mimicking Openstack's implementation -
[1] - and expose a knob that indicates what is the number of PCIe root
ports to be used upon the domain definition.
I wonder how open would the community be to having a machine type alias
that would provide a "better" default - in the sense that it would have
more root port controllers.
[0] -
https://libvirt.org/pci-hotplug.html#x86_64-q35
[1] -
https://blueprints.launchpad.net/nova/+spec/configure-amount-of-pcie-ports