There are several qemu and generic domain XML validating/populating routines that callers need to invoke manually after parsing XML. This series moves some of these calls into the PostParse handling routines. Functionally there shouldn't be much change, except for more complete XML in a few cases where drivers convert their native config formats. Most of the patches are just moving functions around and verifying things don't break, but there's some test suite improvements sprinkled in. The initial motivation for this series is to put qemuDomainAssignAddresses into the PostParse call path, since I want that for future patches tp autofill a user requested <address type='pci'/> Cole Robinson (12): domain: separate out function for post parse console compat domain: separate out function for post parse timer validation domain: add implicit controllers from post parse domain: Add virDomainDefAddImplicitDevices qemu: domain: split out post parse default device handling qemu: Handle CanonicalizeMachine in post parse qemu: Handle SecurityManagerVerify in post parse domain: conf: Export virDomainDefPostParseDevices tests: qemuxml2xml: Use standard file comparison helpers tests: qemuxml2xml: Convert some fprintf to VIR_TEST_DEBUG tests: qemuxml2xml: Wire up QEMUCaps usage qemu: Assign device addresses in PostParse src/conf/domain_conf.c | 104 ++++++++++++++------- src/conf/domain_conf.h | 6 +- src/libvirt_private.syms | 3 +- src/qemu/qemu_command.c | 2 +- src/qemu/qemu_domain.c | 89 ++++++++++++++---- src/qemu/qemu_driver.c | 50 +--------- src/vmx/vmx.c | 2 +- src/vz/vz_sdk.c | 2 +- .../qemuxml2argvdata/qemuxml2argv-pseries-disk.xml | 4 +- tests/qemuxml2argvtest.c | 12 +-- .../qemuxml2xmlout-channel-virtio-auto.xml | 9 +- .../qemuxml2xmlout-disk-scsi-vscsi.xml | 35 +++++++ .../qemuxml2xmlout-panic-pseries.xml | 30 ++++++ .../qemuxml2xmlout-pseries-panic-missing.xml | 4 +- .../qemuxml2xmlout-pseries-panic-no-address.xml | 4 +- tests/qemuxml2xmltest.c | 39 +++++--- tests/sexpr2xmldata/sexpr2xml-fv-autoport.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-empty-kernel.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-force-hpet.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-force-nohpet.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-localtime.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-net-netfront.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-parallel-tcp.xml | 1 + .../sexpr2xml-fv-serial-dev-2-ports.xml | 1 + .../sexpr2xml-fv-serial-dev-2nd-port.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-serial-file.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-serial-null.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-serial-pipe.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-serial-pty.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-serial-stdio.xml | 1 + .../sexpr2xml-fv-serial-tcp-telnet.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-serial-tcp.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-serial-udp.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-serial-unix.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-sound-all.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-sound.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-usbmouse.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-usbtablet.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-utc.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv-v2.xml | 1 + tests/sexpr2xmldata/sexpr2xml-fv.xml | 1 + tests/sexpr2xmldata/sexpr2xml-no-source-cdrom.xml | 1 + .../test-fullvirt-direct-kernel-boot.xml | 1 + tests/xlconfigdata/test-fullvirt-multiusb.xml | 1 + tests/xlconfigdata/test-new-disk.xml | 1 + tests/xlconfigdata/test-spice-features.xml | 1 + tests/xlconfigdata/test-spice.xml | 1 + tests/xmconfigdata/test-escape-paths.xml | 1 + .../xmconfigdata/test-fullvirt-default-feature.xml | 1 + tests/xmconfigdata/test-fullvirt-force-hpet.xml | 1 + tests/xmconfigdata/test-fullvirt-force-nohpet.xml | 1 + tests/xmconfigdata/test-fullvirt-localtime.xml | 1 + tests/xmconfigdata/test-fullvirt-net-netfront.xml | 1 + tests/xmconfigdata/test-fullvirt-new-cdrom.xml | 1 + tests/xmconfigdata/test-fullvirt-parallel-tcp.xml | 1 + .../test-fullvirt-serial-dev-2-ports.xml | 1 + .../test-fullvirt-serial-dev-2nd-port.xml | 1 + tests/xmconfigdata/test-fullvirt-serial-file.xml | 1 + tests/xmconfigdata/test-fullvirt-serial-null.xml | 1 + tests/xmconfigdata/test-fullvirt-serial-pipe.xml | 1 + tests/xmconfigdata/test-fullvirt-serial-pty.xml | 1 + tests/xmconfigdata/test-fullvirt-serial-stdio.xml | 1 + .../test-fullvirt-serial-tcp-telnet.xml | 1 + tests/xmconfigdata/test-fullvirt-serial-tcp.xml | 1 + tests/xmconfigdata/test-fullvirt-serial-udp.xml | 1 + tests/xmconfigdata/test-fullvirt-serial-unix.xml | 1 + tests/xmconfigdata/test-fullvirt-sound.xml | 1 + tests/xmconfigdata/test-fullvirt-usbmouse.xml | 1 + tests/xmconfigdata/test-fullvirt-usbtablet.xml | 1 + tests/xmconfigdata/test-fullvirt-utc.xml | 1 + tests/xmconfigdata/test-no-source-cdrom.xml | 1 + tests/xmconfigdata/test-pci-devs.xml | 1 + 72 files changed, 315 insertions(+), 136 deletions(-) create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-scsi-vscsi.xml create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-panic-pseries.xml -- 2.5.0 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list