Configure Nova libvirt.num_pcie_ports to 16 by default

When using the 'q35' machine type, by default, it allows only
a single PCIe device to be hotplugged. Nova currently sets
'num_pcie_ports' to "0" (defaults to libvirt's "1"), which is
not sufficient for hotplug use.

The max value is 28, but 16 is enough in most cases.

More info please check

* [0] https://libvirt.org/pci-hotplug.html
* [1] https://marcin.juszkiewicz.com.pl/2018/02/19/hotplug-in-vm-easy-to-say/
* [2] https://review.opendev.org/c/openstack/nova/+/545034

Co-Authored-By: Bartosz Bezak <bartosz@stackhpc.com>

Change-Id: I7b8063566837aeb947927b7d6858417982b63deb
Closes-Bug: 1909063
This commit is contained in:
Jeffrey Zhang 2020-12-23 13:42:16 +08:00 committed by Bartosz Bezak
parent 30fca662bc
commit b8e77deeef
2 changed files with 11 additions and 0 deletions

View File

@ -27,5 +27,6 @@ cpu_mode = {{ nova_libvirt_cpu_mode }}
{% if enable_multipathd | bool %} {% if enable_multipathd | bool %}
volume_use_multipath = True volume_use_multipath = True
{% endif %} {% endif %}
num_pcie_ports = 16
[workarounds] [workarounds]
skip_cpu_compare_on_dest = True skip_cpu_compare_on_dest = True

View File

@ -0,0 +1,10 @@
---
upgrade:
- |
Configure Nova libvirt.num_pcie_ports to 16 by default. Nova currently
sets 'num_pcie_ports' to "0" (defaults to libvirt's "1"), which is
not sufficient for hotplug use with 'q35' machine type.
fixes:
- |
Fixes an issue where 'q35' libvirt machine type VM could not hotplug
more than one PCIe device at a time.