Applies cleanly on top of f565321b26dfb78c1dc2d6cf5456b9b80f04c7f3.
Changes from [v2]:
* replace the old implementation bit by bit using a clever trick
suggested by pkrempa;
* don't move QEMU capability validation;
* add a default: label to all switch statements as recommended
by danpb.
Changes from [v1]:
* error out instead of silently accept invalid options;
* shave quite a lot of yaks.
[v2]
https://www.redhat.com/archives/libvir-list/2018-February/msg00813.html
[v1]
https://www.redhat.com/archives/libvir-list/2018-February/msg00244.html
Andrea Bolognani (12):
tests: Add some tests for PCI controller options
qemu: Create new qemuDomainDeviceDefValidateControllerPCI()
qemu: Validate PCI controller options (modelName)
qemu: Validate PCI controller options (index)
qemu: Validate PCI controller options (targetIndex)
qemu: Validate PCI controller options (pcihole64)
qemu: Validate PCI controller options (busNr)
qemu: Validate PCI controller options (numaNode)
qemu: Validate PCI controller options (chassisNr)
qemu: Validate PCI controller options (chassis and port)
qemu: Validate PCI controllers (QEMU capabilities)
qemu: Remove old qemuDomainDeviceDefValidateControllerPCI()
src/qemu/qemu_domain.c | 594 +++++++++++++++------
.../i440fx-controllers-pciopts.xml | 36 ++
tests/qemuxml2argvdata/pcie-expander-bus.xml | 3 -
.../pseries-controllers-pciopts.xml | 35 ++
tests/qemuxml2argvdata/q35-controllers-pciopts.xml | 60 +++
tests/qemuxml2argvtest.c | 4 +
tests/qemuxml2xmloutdata/pcie-expander-bus.xml | 4 +-
7 files changed, 575 insertions(+), 161 deletions(-)
create mode 100644 tests/qemuxml2argvdata/i440fx-controllers-pciopts.xml
create mode 100644 tests/qemuxml2argvdata/pseries-controllers-pciopts.xml
create mode 100644 tests/qemuxml2argvdata/q35-controllers-pciopts.xml
--
2.14.3