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 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list