[libvirt] [PATCH] remote: set VIR_TYPED_PARAM_STRING_OKAY on migration
by Joao Martins
Commit 8cd1d54 ("util: Export remoteSerializeTypedParameters
internally via util") consolidates both daemon and remote
driver typed param serialization functions. Though as is
no flags are passed which lets virTypedParamsSerialize to
ignore all strings (to be sent), thus leading to fail
migration on drivers on Prepare phase, as already reported
by the Xen test CI[0] with:
error: internal error: no domain XML passed
This patch proposes setting VIR_TYPED_PARAM_STRING_OKAY
to avoid leading such failures.
[0]
http://lists.xenproject.org/archives/html/xen-devel/2016-02/msg01012.html
Signed-off-by: Joao Martins <joao.m.martins(a)oracle.com>
---
src/remote/remote_driver.c | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c
index 58787cd..7cf61cf 100644
--- a/src/remote/remote_driver.c
+++ b/src/remote/remote_driver.c
@@ -6886,7 +6886,8 @@ remoteDomainMigrateBegin3Params(virDomainPtr domain,
if (virTypedParamsSerialize(params, nparams,
(virTypedParameterRemotePtr *) &args.params.params_val,
- &args.params.params_len, 0) < 0) {
+ &args.params.params_len,
+ VIR_TYPED_PARAM_STRING_OKAY) < 0) {
xdr_free((xdrproc_t) xdr_remote_domain_migrate_begin3_params_args,
(char *) &args);
goto cleanup;
@@ -6953,7 +6954,8 @@ remoteDomainMigratePrepare3Params(virConnectPtr dconn,
if (virTypedParamsSerialize(params, nparams,
(virTypedParameterRemotePtr *) &args.params.params_val,
- &args.params.params_len, 0) < 0) {
+ &args.params.params_len,
+ VIR_TYPED_PARAM_STRING_OKAY) < 0) {
xdr_free((xdrproc_t) xdr_remote_domain_migrate_prepare3_params_args,
(char *) &args);
goto cleanup;
@@ -7040,7 +7042,8 @@ remoteDomainMigratePrepareTunnel3Params(virConnectPtr dconn,
if (virTypedParamsSerialize(params, nparams,
(virTypedParameterRemotePtr *) &args.params.params_val,
- &args.params.params_len, 0) < 0) {
+ &args.params.params_len,
+ VIR_TYPED_PARAM_STRING_OKAY) < 0) {
xdr_free((xdrproc_t) xdr_remote_domain_migrate_prepare_tunnel3_params_args,
(char *) &args);
goto cleanup;
@@ -7129,7 +7132,8 @@ remoteDomainMigratePerform3Params(virDomainPtr dom,
if (virTypedParamsSerialize(params, nparams,
(virTypedParameterRemotePtr *) &args.params.params_val,
- &args.params.params_len, 0) < 0) {
+ &args.params.params_len,
+ VIR_TYPED_PARAM_STRING_OKAY) < 0) {
xdr_free((xdrproc_t) xdr_remote_domain_migrate_perform3_params_args,
(char *) &args);
goto cleanup;
@@ -7201,7 +7205,8 @@ remoteDomainMigrateFinish3Params(virConnectPtr dconn,
if (virTypedParamsSerialize(params, nparams,
(virTypedParameterRemotePtr *) &args.params.params_val,
- &args.params.params_len, 0) < 0) {
+ &args.params.params_len,
+ VIR_TYPED_PARAM_STRING_OKAY) < 0) {
xdr_free((xdrproc_t) xdr_remote_domain_migrate_finish3_params_args,
(char *) &args);
goto cleanup;
@@ -7275,7 +7280,8 @@ remoteDomainMigrateConfirm3Params(virDomainPtr domain,
if (virTypedParamsSerialize(params, nparams,
(virTypedParameterRemotePtr *) &args.params.params_val,
- &args.params.params_len, 0) < 0) {
+ &args.params.params_len,
+ VIR_TYPED_PARAM_STRING_OKAY) < 0) {
xdr_free((xdrproc_t) xdr_remote_domain_migrate_confirm3_params_args,
(char *) &args);
goto cleanup;
--
2.1.4
9 years, 2 months
[libvirt] [PATCH 0/9] tests: qemu: unconditionally enable QEMU_CAPS_DEVICE
by Cole Robinson
Okay, my recent patch series' are kinda all over the place. I'm tableing
the src/qemu/ QEMU_CAPS_DEVICE bits for now. This is just the test
suite changes, which I need as a basis for other patches anyways.
This series does two main things: it conditionally enables QEMU_CAPS_DEVICE
in the test suite (since that's all we support nowadays), and it
unconditionally calls qemuDomainAssignAddresses for qemuxml2xml testing,
since that's the only realistic XML parsing scenario in the qemu driver.
This causes a lot of test output churn, so there's some other relevant
bits mixed in:
* An improvement to VIR_TEST_REGENERATE_OUTPUT
* Separating qemuargv2xml test output from qemuxml2argv, since the
latter's output churn will massively break the former.
* More work to wire up qemuxml2xml test cases to allow passing in
QEMU_CAPS_* lists, similar to qemuargv2xml, since
qemuDomainAssignAddresses has many code paths dependent on QEMU_CAPS
* Have qemuxml2xml always use a separate output file. Martin commented
on this here:
https://www.redhat.com/archives/libvir-list/2016-January/msg01041.html
Right now most of those tests expect the output to match the input, and
have it baked into the test framework. In order to maintain that paradigm,
we would either have to update a large chunk of qemuxml2argv input data to
contain static PCI addressing, or do a fine grained auditing of all the
test cases to decide which ones we should be testing for different output
vs ensure the same output.
In my response to the above mail, I layed out my opinion that the
qemuxml2xml tests are overloaded and it needs a much larger scale cleanup
to be more practical. In the interim I think this change is in the right
direction, since at least it's giving us XML output testing of qemu's
specific address assignment functionality, which is always used in practice.
Long term we should separate the generic XML testing from the qemu XML
testing, and for the generic XML testing it likely makes sense to have
many tests with matching input and output, so maybe we reintroduce
that paradigm for genericxml2xml.
Note most of these patches have been on the list for over 2 weeks with
no review and rebasing them is conflict prone so I appreciate any timely
review. Thanks in advance
Cole Robinson (9):
tests: Run test-wrap-argv with REGENERATE_OUTPUT
tests: qemuxml2xml: Always use different output file
tests: qemuargv2xml: separate from qemuxml2argv data
tests: qemuxml2argv: remove some QEMU_CAPS_DEVICE problem cases
tests: Unconditionally enable QEMU_CAPS_DEVICE
tests: qemuxml2xml: Allow test cases to pass in qemuCaps
tests: utils: Add PreFormat callback for CompareXML2XML helper
tests: qemuxml2xml: assign device addresses
tests: qemu: More aarch64 virtio and pci tests
tests/Makefile.am | 1 +
tests/bhyvexml2xmltest.c | 3 +-
tests/domainschematest | 2 +-
tests/genericxml2xmltest.c | 3 +-
tests/lxcxml2xmltest.c | 3 +-
.../qemuargv2xmldata/qemuargv2xml-boot-cdrom.args | 22 +
tests/qemuargv2xmldata/qemuargv2xml-boot-cdrom.xml | 31 ++
.../qemuargv2xmldata/qemuargv2xml-boot-floppy.args | 23 +
.../qemuargv2xmldata/qemuargv2xml-boot-floppy.xml | 37 ++
.../qemuargv2xml-boot-network.args | 22 +
.../qemuargv2xmldata/qemuargv2xml-boot-network.xml | 30 ++
.../qemuargv2xml-clock-localtime.args | 23 +
.../qemuargv2xml-clock-localtime.xml | 30 ++
.../qemuargv2xml-clock-utc.args} | 5 +-
tests/qemuargv2xmldata/qemuargv2xml-clock-utc.xml | 30 ++
.../qemuargv2xml-console-compat.args | 22 +
.../qemuargv2xml-console-compat.xml | 36 ++
.../qemuargv2xml-disk-cdrom-empty.args | 23 +
.../qemuargv2xml-disk-cdrom-empty.xml | 36 ++
.../qemuargv2xmldata/qemuargv2xml-disk-cdrom.args | 23 +
tests/qemuargv2xmldata/qemuargv2xml-disk-cdrom.xml | 37 ++
.../qemuargv2xml-disk-drive-boot-cdrom.args | 23 +
.../qemuargv2xml-disk-drive-boot-cdrom.xml | 37 ++
.../qemuargv2xml-disk-drive-boot-disk.args | 23 +
.../qemuargv2xml-disk-drive-boot-disk.xml | 37 ++
.../qemuargv2xml-disk-drive-cache-directsync.args | 24 +
.../qemuargv2xml-disk-drive-cache-directsync.xml | 37 ++
.../qemuargv2xml-disk-drive-cache-unsafe.args | 23 +
.../qemuargv2xml-disk-drive-cache-unsafe.xml | 37 ++
.../qemuargv2xml-disk-drive-cache-v2-none.args | 23 +
.../qemuargv2xml-disk-drive-cache-v2-none.xml | 37 ++
.../qemuargv2xml-disk-drive-cache-v2-wb.args | 24 +
.../qemuargv2xml-disk-drive-cache-v2-wb.xml | 37 ++
.../qemuargv2xml-disk-drive-cache-v2-wt.args | 24 +
.../qemuargv2xml-disk-drive-cache-v2-wt.xml | 37 ++
...uargv2xml-disk-drive-error-policy-enospace.args | 24 +
...muargv2xml-disk-drive-error-policy-enospace.xml | 37 ++
.../qemuargv2xml-disk-drive-error-policy-stop.args | 24 +
.../qemuargv2xml-disk-drive-error-policy-stop.xml | 37 ++
...ml-disk-drive-error-policy-wreport-rignore.args | 24 +
...xml-disk-drive-error-policy-wreport-rignore.xml | 37 ++
.../qemuargv2xml-disk-drive-fmt-qcow.args | 23 +
.../qemuargv2xml-disk-drive-fmt-qcow.xml | 37 ++
.../qemuargv2xml-disk-drive-network-gluster.args | 24 +
.../qemuargv2xml-disk-drive-network-gluster.xml | 37 ++
...qemuargv2xml-disk-drive-network-iscsi-auth.args | 25 +
.../qemuargv2xml-disk-drive-network-iscsi-auth.xml | 40 ++
.../qemuargv2xml-disk-drive-network-iscsi.args | 25 +
.../qemuargv2xml-disk-drive-network-iscsi.xml | 37 ++
...qemuargv2xml-disk-drive-network-nbd-export.args | 23 +
.../qemuargv2xml-disk-drive-network-nbd-export.xml | 37 ++
...rgv2xml-disk-drive-network-nbd-ipv6-export.args | 23 +
...argv2xml-disk-drive-network-nbd-ipv6-export.xml | 37 ++
.../qemuargv2xml-disk-drive-network-nbd-ipv6.args | 23 +
.../qemuargv2xml-disk-drive-network-nbd-ipv6.xml | 37 ++
.../qemuargv2xml-disk-drive-network-nbd-unix.args | 23 +
.../qemuargv2xml-disk-drive-network-nbd-unix.xml | 37 ++
.../qemuargv2xml-disk-drive-network-nbd.args | 23 +
.../qemuargv2xml-disk-drive-network-nbd.xml | 37 ++
.../qemuargv2xml-disk-drive-network-rbd-auth.args | 26 +
.../qemuargv2xml-disk-drive-network-rbd-auth.xml | 42 ++
...muargv2xml-disk-drive-network-rbd-ceph-env.args | 25 +
...emuargv2xml-disk-drive-network-rbd-ceph-env.xml | 39 ++
.../qemuargv2xml-disk-drive-network-rbd-ipv6.args | 25 +
.../qemuargv2xml-disk-drive-network-rbd-ipv6.xml | 40 ++
.../qemuargv2xml-disk-drive-network-rbd.args | 29 +
.../qemuargv2xml-disk-drive-network-rbd.xml | 64 +++
.../qemuargv2xml-disk-drive-network-sheepdog.args | 23 +
.../qemuargv2xml-disk-drive-network-sheepdog.xml | 37 ++
.../qemuargv2xmldata/qemuargv2xml-disk-floppy.args | 24 +
.../qemuargv2xmldata/qemuargv2xml-disk-floppy.xml | 43 ++
tests/qemuargv2xmldata/qemuargv2xml-disk-many.args | 25 +
tests/qemuargv2xmldata/qemuargv2xml-disk-many.xml | 48 ++
.../qemuargv2xml-disk-usb.args} | 0
.../qemuargv2xml-disk-usb.xml} | 0
.../qemuargv2xmldata/qemuargv2xml-disk-virtio.args | 25 +
.../qemuargv2xml-disk-virtio.xml} | 6 +-
.../qemuargv2xmldata/qemuargv2xml-disk-xenvbd.args | 25 +
.../qemuargv2xmldata/qemuargv2xml-disk-xenvbd.xml | 47 ++
.../qemuargv2xml-graphics-sdl-fullscreen.args | 25 +
.../qemuargv2xml-graphics-sdl-fullscreen.xml | 34 ++
.../qemuargv2xml-graphics-sdl.args | 24 +
.../qemuargv2xmldata/qemuargv2xml-graphics-sdl.xml | 34 ++
.../qemuargv2xml-graphics-vnc-policy.args | 23 +
.../qemuargv2xml-graphics-vnc-policy.xml | 36 ++
.../qemuargv2xml-graphics-vnc-sasl.args | 24 +
.../qemuargv2xml-graphics-vnc-sasl.xml | 36 ++
.../qemuargv2xml-graphics-vnc-socket.args | 23 +
.../qemuargv2xml-graphics-vnc-socket.xml | 34 ++
.../qemuargv2xml-graphics-vnc-tls.args | 24 +
.../qemuargv2xml-graphics-vnc-tls.xml | 36 ++
.../qemuargv2xml-graphics-vnc-websocket.args | 22 +
.../qemuargv2xml-graphics-vnc-websocket.xml | 29 +
.../qemuargv2xml-graphics-vnc.args | 23 +
.../qemuargv2xmldata/qemuargv2xml-graphics-vnc.xml | 36 ++
.../qemuargv2xml-hostdev-pci-address.args | 23 +
.../qemuargv2xml-hostdev-pci-address.xml | 35 ++
.../qemuargv2xml-hostdev-usb-address.args | 23 +
.../qemuargv2xml-hostdev-usb-address.xml | 35 ++
.../qemuargv2xml-hyperv-panic.args | 21 +
.../qemuargv2xmldata/qemuargv2xml-hyperv-panic.xml | 27 +
tests/qemuargv2xmldata/qemuargv2xml-hyperv.args | 21 +
tests/qemuargv2xmldata/qemuargv2xml-hyperv.xml | 31 ++
.../qemuargv2xml-input-usbmouse.args | 23 +
.../qemuargv2xml-input-usbmouse.xml | 31 ++
.../qemuargv2xml-input-usbtablet.args | 23 +
.../qemuargv2xml-input-usbtablet.xml | 31 ++
.../qemuargv2xml-kvm-features.args | 21 +
.../qemuargv2xmldata/qemuargv2xml-kvm-features.xml | 29 +
tests/qemuargv2xmldata/qemuargv2xml-kvmclock.args | 22 +
tests/qemuargv2xmldata/qemuargv2xml-kvmclock.xml | 28 +
.../qemuargv2xml-machine-aeskeywrap-off-argv.args | 20 +
.../qemuargv2xml-machine-aeskeywrap-off-argv.xml | 27 +
.../qemuargv2xml-machine-aeskeywrap-on-argv.args | 20 +
.../qemuargv2xml-machine-aeskeywrap-on-argv.xml | 27 +
.../qemuargv2xml-machine-core-off.args | 22 +
.../qemuargv2xml-machine-core-off.xml | 30 ++
.../qemuargv2xml-machine-core-on.args | 22 +
.../qemuargv2xml-machine-core-on.xml | 30 ++
.../qemuargv2xml-machine-deakeywrap-off-argv.args | 20 +
.../qemuargv2xml-machine-deakeywrap-off-argv.xml | 27 +
.../qemuargv2xml-machine-deakeywrap-on-argv.args | 20 +
.../qemuargv2xml-machine-deakeywrap-on-argv.xml | 27 +
.../qemuargv2xml-machine-keywrap-none-argv.args | 20 +
.../qemuargv2xml-machine-keywrap-none-argv.xml} | 13 +-
tests/qemuargv2xmldata/qemuargv2xml-migrate.args | 23 +
tests/qemuargv2xmldata/qemuargv2xml-migrate.xml | 30 ++
tests/qemuargv2xmldata/qemuargv2xml-misc-acpi.args | 21 +
tests/qemuargv2xmldata/qemuargv2xml-misc-acpi.xml | 33 ++
.../qemuargv2xml-misc-disable-s3.args | 23 +
.../qemuargv2xml-misc-disable-s3.xml | 33 ++
.../qemuargv2xml-misc-disable-suspends.args | 24 +
.../qemuargv2xml-misc-disable-suspends.xml | 34 ++
.../qemuargv2xml-misc-enable-s4.args | 23 +
.../qemuargv2xml-misc-enable-s4.xml | 33 ++
.../qemuargv2xml-misc-no-reboot.args | 23 +
.../qemuargv2xml-misc-no-reboot.xml | 30 ++
tests/qemuargv2xmldata/qemuargv2xml-misc-uuid.args | 21 +
tests/qemuargv2xmldata/qemuargv2xml-misc-uuid.xml | 33 ++
.../qemuargv2xml-net-eth-ifname.args | 23 +
.../qemuargv2xml-net-eth-ifname.xml | 36 ++
tests/qemuargv2xmldata/qemuargv2xml-net-eth.args | 23 +
tests/qemuargv2xmldata/qemuargv2xml-net-eth.xml | 35 ++
tests/qemuargv2xmldata/qemuargv2xml-net-user.args | 23 +
tests/qemuargv2xmldata/qemuargv2xml-net-user.xml | 34 ++
.../qemuargv2xmldata/qemuargv2xml-net-virtio.args | 23 +
tests/qemuargv2xmldata/qemuargv2xml-net-virtio.xml | 34 ++
.../qemuargv2xml-nographics-vga.args | 23 +
.../qemuargv2xml-nographics-vga.xml | 30 ++
.../qemuargv2xml-nosharepages.args | 22 +
.../qemuargv2xmldata/qemuargv2xml-nosharepages.xml | 33 ++
.../qemuargv2xml-parallel-tcp.args | 22 +
.../qemuargv2xmldata/qemuargv2xml-parallel-tcp.xml | 35 ++
.../qemuargv2xml-pseries-disk.args | 18 +
.../qemuargv2xmldata/qemuargv2xml-pseries-disk.xml | 42 ++
.../qemuargv2xml-pseries-nvram.args | 22 +
.../qemuargv2xml-pseries-nvram.xml | 25 +
.../qemuargv2xml-qemu-ns-no-env.args | 23 +
.../qemuargv2xml-qemu-ns-no-env.xml | 34 ++
.../qemuargv2xml-reboot-timeout-disabled.args | 21 +
.../qemuargv2xml-reboot-timeout-disabled.xml | 24 +
.../qemuargv2xml-reboot-timeout-enabled.args | 21 +
.../qemuargv2xml-reboot-timeout-enabled.xml | 24 +
.../qemuargv2xmldata/qemuargv2xml-restore-v2.args | 23 +
tests/qemuargv2xmldata/qemuargv2xml-restore-v2.xml | 30 ++
.../qemuargv2xmldata/qemuargv2xml-serial-dev.args | 22 +
tests/qemuargv2xmldata/qemuargv2xml-serial-dev.xml | 38 ++
.../qemuargv2xmldata/qemuargv2xml-serial-file.args | 22 +
.../qemuargv2xmldata/qemuargv2xml-serial-file.xml | 38 ++
.../qemuargv2xmldata/qemuargv2xml-serial-many.args | 23 +
.../qemuargv2xmldata/qemuargv2xml-serial-many.xml | 40 ++
.../qemuargv2xmldata/qemuargv2xml-serial-pty.args | 22 +
tests/qemuargv2xmldata/qemuargv2xml-serial-pty.xml | 36 ++
.../qemuargv2xml-serial-tcp-telnet.args | 22 +
.../qemuargv2xml-serial-tcp-telnet.xml | 40 ++
.../qemuargv2xmldata/qemuargv2xml-serial-tcp.args | 22 +
tests/qemuargv2xmldata/qemuargv2xml-serial-tcp.xml | 40 ++
.../qemuargv2xmldata/qemuargv2xml-serial-udp.args | 23 +
tests/qemuargv2xmldata/qemuargv2xml-serial-udp.xml | 44 ++
.../qemuargv2xmldata/qemuargv2xml-serial-unix.args | 22 +
.../qemuargv2xmldata/qemuargv2xml-serial-unix.xml | 38 ++
tests/qemuargv2xmldata/qemuargv2xml-serial-vc.args | 22 +
tests/qemuargv2xmldata/qemuargv2xml-serial-vc.xml | 36 ++
tests/qemuargv2xmldata/qemuargv2xml-smp.args | 22 +
tests/qemuargv2xmldata/qemuargv2xml-smp.xml | 33 ++
tests/qemuargv2xmldata/qemuargv2xml-sound.args | 23 +
tests/qemuargv2xmldata/qemuargv2xml-sound.xml | 34 ++
tests/qemuargv2xmldata/qemuargv2xml-watchdog.args | 24 +
tests/qemuargv2xmldata/qemuargv2xml-watchdog.xml | 31 ++
tests/qemuargv2xmltest.c | 4 +-
...> qemuxml2argv-aarch64-virtio-pci-default.args} | 0
...=> qemuxml2argv-aarch64-virtio-pci-default.xml} | 0
...2argv-aarch64-virtio-pci-manual-addresses.args} | 0
...l2argv-aarch64-virtio-pci-manual-addresses.xml} | 0
.../qemuxml2argv-blkiotune-device.args | 8 +-
tests/qemuxml2argvdata/qemuxml2argv-blkiotune.args | 8 +-
.../qemuxml2argvdata/qemuxml2argv-boot-cdrom.args | 7 +-
.../qemuxml2argvdata/qemuxml2argv-boot-floppy.args | 10 +-
.../qemuxml2argv-boot-menu-disable.args | 8 +-
.../qemuxml2argvdata/qemuxml2argv-boot-multi.args | 8 +-
.../qemuxml2argv-boot-network.args | 7 +-
.../qemuxml2argv-clock-catchup.args | 8 +-
.../qemuxml2argv-clock-france.args | 8 +-
.../qemuxml2argv-clock-hpet-off.args | 8 +-
...muxml2argv-clock-localtime-basis-localtime.args | 8 +-
.../qemuxml2argv-clock-localtime.args | 7 +-
.../qemuxml2argv-clock-timer-hyperv-rtc.args | 5 +-
tests/qemuxml2argvdata/qemuxml2argv-clock-utc.args | 8 +-
.../qemuxml2argv-clock-variable.args | 8 +-
.../qemuxml2argv-console-compat-auto.args | 7 +-
.../qemuxml2argv-console-compat.args | 8 +-
.../qemuxml2argv-cpu-Haswell-noTSX.args | 5 +-
.../qemuxml2argvdata/qemuxml2argv-cpu-Haswell.args | 5 +-
.../qemuxml2argv-cpu-Haswell2.args | 5 +-
.../qemuxml2argv-cpu-Haswell3.args | 5 +-
.../qemuxml2argv-cpu-eoi-disabled.args | 5 +-
.../qemuxml2argv-cpu-eoi-enabled.args | 5 +-
.../qemuxml2argvdata/qemuxml2argv-cpu-exact1.args | 5 +-
.../qemuxml2argv-cpu-exact2-nofallback.args | 5 +-
.../qemuxml2argvdata/qemuxml2argv-cpu-exact2.args | 5 +-
.../qemuxml2argv-cpu-fallback.args | 5 +-
.../qemuxml2argv-cpu-host-kvmclock.args | 5 +-
.../qemuxml2argv-cpu-host-model-fallback.args | 5 +-
.../qemuxml2argv-cpu-host-model-vendor.args | 5 +-
.../qemuxml2argv-cpu-host-model.args | 5 +-
...qemuxml2argv-cpu-host-passthrough-features.args | 8 +-
.../qemuxml2argv-cpu-host-passthrough.args | 5 +-
.../qemuxml2argv-cpu-kvmclock.args | 5 +-
.../qemuxml2argv-cpu-minimum1.args | 5 +-
.../qemuxml2argv-cpu-minimum2.args | 5 +-
.../qemuxml2argv-cpu-numa-disjoint.args | 5 +-
.../qemuxml2argv-cpu-numa-no-memory-element.args | 5 +-
tests/qemuxml2argvdata/qemuxml2argv-cpu-numa1.args | 5 +-
tests/qemuxml2argvdata/qemuxml2argv-cpu-numa2.args | 5 +-
.../qemuxml2argvdata/qemuxml2argv-cpu-strict1.args | 5 +-
.../qemuxml2argv-cpu-topology1.args | 5 +-
.../qemuxml2argv-cpu-topology2.args | 5 +-
.../qemuxml2argv-cpu-topology3.args | 5 +-
.../qemuxml2argv-cputune-numatune.args | 7 +-
.../qemuxml2argv-cputune-numatune.xml | 12 +-
.../qemuxml2argv-cputune-zero-shares.args | 8 +-
tests/qemuxml2argvdata/qemuxml2argv-cputune.args | 8 +-
.../qemuxml2argv-default-kvm-host-arch.args | 5 +-
.../qemuxml2argv-default-qemu-host-arch.args | 5 +-
tests/qemuxml2argvdata/qemuxml2argv-disk-aio.args | 15 +-
.../qemuxml2argv-disk-cdrom-empty.args | 10 +-
...qemuxml2argv-disk-cdrom-tray-no-device-cap.args | 11 +-
.../qemuxml2argvdata/qemuxml2argv-disk-cdrom.args | 10 +-
.../qemuxml2argv-disk-drive-boot-cdrom.args | 11 +-
.../qemuxml2argv-disk-drive-boot-disk.args | 11 +-
.../qemuxml2argv-disk-drive-cache-directsync.args | 11 +-
.../qemuxml2argv-disk-drive-cache-unsafe.args | 12 +-
.../qemuxml2argv-disk-drive-cache-v2-none.args | 12 +-
.../qemuxml2argv-disk-drive-cache-v2-wb.args | 11 +-
.../qemuxml2argv-disk-drive-cache-v2-wt.args | 11 +-
.../qemuxml2argv-disk-drive-copy-on-read.args | 8 +-
...uxml2argv-disk-drive-error-policy-enospace.args | 13 +-
.../qemuxml2argv-disk-drive-error-policy-stop.args | 13 +-
...gv-disk-drive-error-policy-wreport-rignore.args | 13 +-
.../qemuxml2argv-disk-drive-fat.args | 8 +-
.../qemuxml2argv-disk-drive-fmt-qcow.args | 11 +-
.../qemuxml2argv-disk-drive-network-gluster.args | 13 +-
...qemuxml2argv-disk-drive-network-iscsi-auth.args | 12 +-
.../qemuxml2argv-disk-drive-network-iscsi.args | 14 +-
...qemuxml2argv-disk-drive-network-nbd-export.args | 12 +-
...ml2argv-disk-drive-network-nbd-ipv6-export.args | 11 +-
.../qemuxml2argv-disk-drive-network-nbd-ipv6.args | 11 +-
.../qemuxml2argv-disk-drive-network-nbd-unix.args | 12 +-
.../qemuxml2argv-disk-drive-network-nbd.args | 11 +-
.../qemuxml2argv-disk-drive-network-rbd-auth.args | 11 +-
.../qemuxml2argv-disk-drive-network-rbd-ipv6.args | 11 +-
.../qemuxml2argv-disk-drive-network-rbd.args | 26 +-
.../qemuxml2argv-disk-drive-network-sheepdog.args | 12 +-
...qemuxml2argv-disk-drive-readonly-no-device.args | 13 +-
.../qemuxml2argv-disk-drive-shared.args | 12 +-
...emuxml2argv-disk-floppy-tray-no-device-cap.args | 14 +-
.../qemuxml2argvdata/qemuxml2argv-disk-floppy.args | 13 +-
.../qemuxml2argv-disk-geometry.args | 10 +-
.../qemuxml2argvdata/qemuxml2argv-disk-iscsi.args | 7 +-
tests/qemuxml2argvdata/qemuxml2argv-disk-many.args | 16 +-
.../qemuxml2argv-disk-snapshot.args | 17 +-
.../qemuxml2argv-disk-usb-nosupport.xml | 35 ++
.../qemuxml2argvdata/qemuxml2argv-disk-virtio.args | 19 +-
.../qemuxml2argvdata/qemuxml2argv-disk-xenvbd.args | 13 +-
.../qemuxml2argv-eoi-disabled.args | 5 +-
.../qemuxml2argvdata/qemuxml2argv-eoi-enabled.args | 5 +-
.../qemuxml2argv-fips-enabled.args | 8 +-
.../qemuxml2argv-floppy-drive-fat.args | 8 +-
.../qemuxml2argv-graphics-sdl-fullscreen.args | 7 +-
.../qemuxml2argv-graphics-sdl.args | 7 +-
.../qemuxml2argv-graphics-vnc-policy.args | 7 +-
.../qemuxml2argv-graphics-vnc-sasl.args | 7 +-
.../qemuxml2argv-graphics-vnc-socket.args | 7 +-
.../qemuxml2argv-graphics-vnc-tls.args | 7 +-
.../qemuxml2argv-graphics-vnc-websocket.args | 4 +-
.../qemuxml2argv-graphics-vnc.args | 7 +-
.../qemuxml2argv-hostdev-pci-address.args | 9 +-
.../qemuxml2argv-hostdev-usb-address.args | 9 +-
.../qemuxml2argv-hugepages-pages.args | 8 +-
.../qemuxml2argv-hugepages-pages2.args | 8 +-
.../qemuxml2argv-hugepages-pages3.args | 8 +-
.../qemuxml2argv-hugepages-pages5.args | 8 +-
.../qemuxml2argv-hugepages-pages6.args | 8 +-
.../qemuxml2argv-hugepages-shared.args | 8 +-
tests/qemuxml2argvdata/qemuxml2argv-hugepages.args | 8 +-
.../qemuxml2argvdata/qemuxml2argv-hyperv-off.args | 5 +-
.../qemuxml2argv-hyperv-panic.args | 6 +-
tests/qemuxml2argvdata/qemuxml2argv-hyperv.args | 6 +-
.../qemuxml2argv-input-usbmouse.args | 9 +-
.../qemuxml2argv-input-usbtablet.args | 9 +-
.../qemuxml2argv-iothreads-ids-partial.args | 7 +-
.../qemuxml2argv-iothreads-ids.args | 7 +-
tests/qemuxml2argvdata/qemuxml2argv-iothreads.args | 7 +-
.../qemuxml2argv-kvm-features-off.args | 5 +-
.../qemuxml2argv-kvm-features.args | 6 +-
.../qemuxml2argv-kvm-pit-delay.args | 8 +-
.../qemuxml2argv-kvm-pit-device.args | 8 +-
tests/qemuxml2argvdata/qemuxml2argv-kvm.args | 6 +-
.../qemuxml2argv-kvmclock+eoi-disabled.args | 5 +-
tests/qemuxml2argvdata/qemuxml2argv-kvmclock.args | 6 +-
.../qemuxml2argv-machine-aliases1.args | 8 +-
.../qemuxml2argv-machine-aliases2.args | 8 +-
.../qemuxml2argv-machine-core-off.args | 7 +-
.../qemuxml2argv-machine-core-on.args | 7 +-
.../qemuxml2argv-machine-usb-opt.args | 8 +-
.../qemuxml2argv-machine-vmport-opt.args | 8 +-
.../qemuxml2argv-memory-hotplug.args | 8 +-
.../qemuxml2argv-memtune-unlimited.args | 8 +-
tests/qemuxml2argvdata/qemuxml2argv-memtune.args | 8 +-
.../qemuxml2argv-migrate-numa-unaligned.args | 7 +-
tests/qemuxml2argvdata/qemuxml2argv-migrate.args | 7 +-
.../qemuxml2argv-minimal-msg-timestamp.args | 8 +-
tests/qemuxml2argvdata/qemuxml2argv-minimal.args | 8 +-
tests/qemuxml2argvdata/qemuxml2argv-misc-acpi.args | 7 +-
.../qemuxml2argv-misc-disable-s3.args | 7 +-
.../qemuxml2argv-misc-disable-suspends.args | 7 +-
.../qemuxml2argv-misc-enable-s4.args | 7 +-
.../qemuxml2argv-misc-no-reboot.args | 7 +-
tests/qemuxml2argvdata/qemuxml2argv-misc-uuid.args | 7 +-
tests/qemuxml2argvdata/qemuxml2argv-mlock-off.args | 6 +-
tests/qemuxml2argvdata/qemuxml2argv-mlock-on.args | 6 +-
.../qemuxml2argv-mlock-unsupported.args | 6 +-
.../qemuxml2argvdata/qemuxml2argv-net-client.args | 9 +-
.../qemuxml2argv-net-eth-ifname.args | 10 +-
.../qemuxml2argv-net-eth-names.args | 11 +-
tests/qemuxml2argvdata/qemuxml2argv-net-eth.args | 10 +-
tests/qemuxml2argvdata/qemuxml2argv-net-mcast.args | 9 +-
.../qemuxml2argvdata/qemuxml2argv-net-server.args | 9 +-
tests/qemuxml2argvdata/qemuxml2argv-net-udp.args | 9 +-
tests/qemuxml2argvdata/qemuxml2argv-net-user.args | 10 +-
.../qemuxml2argvdata/qemuxml2argv-net-virtio.args | 10 +-
.../qemuxml2argv-nographics-vga.args | 8 +-
.../qemuxml2argvdata/qemuxml2argv-nographics.args | 8 +-
.../qemuxml2argv-nosharepages.args | 7 +-
...qemuxml2argv-numad-auto-memory-vcpu-cpuset.args | 8 +-
...d-auto-memory-vcpu-no-cpuset-and-placement.args | 8 +-
...muxml2argv-numad-auto-vcpu-static-numatune.args | 8 +-
...qemuxml2argv-numad-static-memory-auto-vcpu.args | 8 +-
tests/qemuxml2argvdata/qemuxml2argv-numad.args | 8 +-
...qemuxml2argv-numatune-auto-nodeset-invalid.args | 8 +-
.../qemuxml2argv-numatune-auto-prefer.args | 5 +-
.../qemuxml2argv-numatune-memnode-no-memory.args | 5 +-
.../qemuxml2argv-numatune-memnode.args | 5 +-
.../qemuxml2argv-numatune-memory.args | 8 +-
.../qemuxml2argv-parallel-tcp.args | 6 +-
.../qemuxml2argv-pmu-feature-off.args | 6 +-
.../qemuxml2argvdata/qemuxml2argv-pmu-feature.args | 6 +-
tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args | 4 +-
.../qemuxml2argv-pseries-nvram.args | 4 +-
.../qemuxml2argv-pv-spinlock-disabled.args | 5 +-
.../qemuxml2argv-pv-spinlock-enabled.args | 5 +-
.../qemuxml2argv-qemu-ns-commandline-ns0.args | 8 +-
.../qemuxml2argv-qemu-ns-commandline-ns1.args | 8 +-
.../qemuxml2argv-qemu-ns-commandline.args | 8 +-
...emuxml2argv-qemu-ns-domain-commandline-ns0.args | 8 +-
.../qemuxml2argv-qemu-ns-domain-commandline.args | 8 +-
.../qemuxml2argv-qemu-ns-domain-ns0.args | 8 +-
.../qemuxml2argv-qemu-ns-no-env.args | 7 +-
tests/qemuxml2argvdata/qemuxml2argv-qemu-ns.args | 8 +-
.../qemuxml2argv-reboot-timeout-disabled.args | 6 +-
.../qemuxml2argv-reboot-timeout-enabled.args | 6 +-
.../qemuxml2argv-restore-v2-fd.args | 10 +-
.../qemuxml2argvdata/qemuxml2argv-restore-v2.args | 7 +-
.../qemuxml2argv-seclabel-dac-none.args | 8 +-
.../qemuxml2argv-seclabel-dynamic-baselabel.args | 8 +-
.../qemuxml2argv-seclabel-dynamic-labelskip.args | 8 +-
.../qemuxml2argv-seclabel-dynamic-override.args | 11 +-
.../qemuxml2argv-seclabel-dynamic-relabel.args | 8 +-
.../qemuxml2argv-seclabel-dynamic.args | 8 +-
.../qemuxml2argv-seclabel-none.args | 8 +-
.../qemuxml2argv-seclabel-static-labelskip.args | 8 +-
.../qemuxml2argv-seclabel-static-relabel.args | 8 +-
.../qemuxml2argv-seclabel-static.args | 8 +-
.../qemuxml2argvdata/qemuxml2argv-serial-dev.args | 8 +-
.../qemuxml2argvdata/qemuxml2argv-serial-file.args | 8 +-
.../qemuxml2argvdata/qemuxml2argv-serial-many.args | 8 +-
.../qemuxml2argvdata/qemuxml2argv-serial-pty.args | 8 +-
.../qemuxml2argv-serial-spiceport-nospice.args | 8 +-
.../qemuxml2argv-serial-tcp-telnet.args | 8 +-
.../qemuxml2argvdata/qemuxml2argv-serial-tcp.args | 8 +-
.../qemuxml2argvdata/qemuxml2argv-serial-udp.args | 8 +-
.../qemuxml2argvdata/qemuxml2argv-serial-unix.args | 8 +-
tests/qemuxml2argvdata/qemuxml2argv-serial-vc.args | 8 +-
tests/qemuxml2argvdata/qemuxml2argv-smbios.args | 8 +-
tests/qemuxml2argvdata/qemuxml2argv-smp.args | 7 +-
tests/qemuxml2argvdata/qemuxml2argv-sound.args | 12 +-
.../qemuxml2argv-video-qxl-nodevice.args | 14 +-
.../qemuxml2argv-video-vga-nodevice.args | 12 +-
.../qemuxml2argv-watchdog-dump.args | 12 +-
.../qemuxml2argv-watchdog-injectnmi.args | 12 +-
tests/qemuxml2argvdata/qemuxml2argv-watchdog.args | 9 +-
tests/qemuxml2argvtest.c | 582 ++++++++++-----------
.../qemuxml2xmlout-aarch64-aavmf-virtio-mmio.xml | 53 ++
.../qemuxml2xmlout-aarch64-gic.xml | 32 ++
.../qemuxml2xmlout-aarch64-gicv3.xml | 32 ++
.../qemuxml2xmlout-aarch64-virtio-pci-default.xml | 69 +++
...2xmlout-aarch64-virtio-pci-manual-addresses.xml | 53 ++
.../qemuxml2xmlout-balloon-device-auto.xml | 12 +-
.../qemuxml2xmlout-balloon-device-period.xml | 8 +-
.../qemuxml2xmlout-bios-nvram-os-interleave.xml | 12 +-
.../qemuxml2xmlout-bios-nvram.xml | 48 ++
.../qemuxml2xmlout-blkdeviotune.xml | 51 ++
.../qemuxml2xmlout-blkiotune-device.xml | 54 ++
.../qemuxml2xmlout-blkiotune.xml | 38 ++
.../qemuxml2xmlout-boot-cdrom.xml | 35 ++
.../qemuxml2xmlout-boot-floppy.xml | 41 ++
...muxml2xmlout-boot-menu-disable-with-timeout.xml | 12 +-
.../qemuxml2xmlout-boot-menu-disable.xml | 37 ++
...emuxml2xmlout-boot-menu-enable-with-timeout.xml | 37 ++
.../qemuxml2xmlout-boot-multi.xml | 40 ++
.../qemuxml2xmlout-boot-network.xml | 34 ++
.../qemuxml2xmlout-boot-order.xml | 64 +++
.../qemuxml2xmlout-channel-guestfwd.xml | 39 ++
.../qemuxml2xmlout-channel-virtio-auto.xml | 29 +-
.../qemuxml2xmlout-channel-virtio-state-active.xml | 12 +-
...emuxml2xmlout-channel-virtio-state-inactive.xml | 12 +-
.../qemuxml2xmlout-channel-virtio.xml | 42 ++
.../qemuxml2xmlout-chardev-label.xml | 54 ++
.../qemuxml2xmlout-clock-catchup.xml | 45 ++
.../qemuxml2xmlout-clock-localtime.xml | 34 ++
.../qemuxml2xmlout-clock-timer-hyperv-rtc.xml | 32 ++
.../qemuxml2xmlout-clock-utc.xml | 34 ++
.../qemuxml2xmlout-console-compat-auto.xml | 12 +-
.../qemuxml2xmlout-console-compat.xml | 40 ++
.../qemuxml2xmlout-console-compat2.xml | 12 +-
.../qemuxml2xmlout-console-virtio-many.xml | 53 ++
.../qemuxml2xmlout-console-virtio.xml | 16 +-
.../qemuxml2xmlout-controller-usb-order.xml | 4 +-
.../qemuxml2xmlout-cpu-empty.xml | 8 +-
.../qemuxml2xmlout-cpu-eoi-disabled.xml | 35 ++
.../qemuxml2xmlout-cpu-eoi-enabled.xml | 35 ++
.../qemuxml2xmlout-cpu-host-kvmclock.xml | 30 ++
.../qemuxml2xmlout-cpu-host-model-features.xml | 41 ++
...emuxml2xmlout-cpu-host-passthrough-features.xml | 45 ++
.../qemuxml2xmlout-cpu-kvmclock.xml | 32 ++
.../qemuxml2xmlout-cpu-numa-disjoint.xml | 34 ++
.../qemuxml2xmlout-cpu-numa-disordered.xml | 8 +-
.../qemuxml2xmlout-cpu-numa-memshared.xml | 34 ++
.../qemuxml2xmlout-cpu-numa-no-memory-element.xml | 8 +-
.../qemuxml2xmlout-cpu-numa1.xml | 8 +-
.../qemuxml2xmlout-cpu-numa2.xml | 8 +-
.../qemuxml2xmlout-cputune-iothreads.xml | 12 +-
...l2xmlout-cputune-iothreadsched-zeropriority.xml | 46 ++
.../qemuxml2xmlout-cputune-iothreadsched.xml | 12 +-
.../qemuxml2xmlout-cputune-numatune.xml | 33 ++
.../qemuxml2xmlout-cputune-zero-shares.xml | 43 ++
.../qemuxml2xmloutdata/qemuxml2xmlout-cputune.xml | 43 ++
.../qemuxml2xmlout-default-kvm-host-arch.xml | 8 +-
.../qemuxml2xmlout-default-qemu-host-arch.xml | 8 +-
.../qemuxml2xmlout-disk-active-commit.xml | 45 ++
.../qemuxml2xmloutdata/qemuxml2xmlout-disk-aio.xml | 43 ++
.../qemuxml2xmlout-disk-backing-chains-active.xml | 13 +-
...qemuxml2xmlout-disk-backing-chains-inactive.xml | 13 +-
.../qemuxml2xmlout-disk-cdrom-empty.xml | 40 ++
.../qemuxml2xmlout-disk-cdrom.xml | 41 ++
.../qemuxml2xmlout-disk-copy_on_read.xml | 60 +++
.../qemuxml2xmlout-disk-drive-boot-cdrom.xml | 41 ++
.../qemuxml2xmlout-disk-drive-boot-disk.xml | 41 ++
.../qemuxml2xmlout-disk-drive-cache-directsync.xml | 41 ++
.../qemuxml2xmlout-disk-drive-cache-unsafe.xml | 41 ++
.../qemuxml2xmlout-disk-drive-cache-v2-none.xml | 41 ++
.../qemuxml2xmlout-disk-drive-cache-v2-wb.xml | 41 ++
.../qemuxml2xmlout-disk-drive-cache-v2-wt.xml | 41 ++
.../qemuxml2xmlout-disk-drive-copy-on-read.xml | 36 ++
.../qemuxml2xmlout-disk-drive-discard.xml | 12 +-
...xml2xmlout-disk-drive-error-policy-enospace.xml | 41 ++
...qemuxml2xmlout-disk-drive-error-policy-stop.xml | 41 ++
...out-disk-drive-error-policy-wreport-rignore.xml | 41 ++
.../qemuxml2xmlout-disk-drive-fat.xml | 37 ++
.../qemuxml2xmlout-disk-drive-fmt-qcow.xml | 41 ++
.../qemuxml2xmlout-disk-drive-network-gluster.xml | 41 ++
...emuxml2xmlout-disk-drive-network-iscsi-auth.xml | 44 ++
.../qemuxml2xmlout-disk-drive-network-iscsi.xml | 41 ++
...emuxml2xmlout-disk-drive-network-nbd-export.xml | 42 ++
...l2xmlout-disk-drive-network-nbd-ipv6-export.xml | 42 ++
.../qemuxml2xmlout-disk-drive-network-nbd-ipv6.xml | 42 ++
.../qemuxml2xmlout-disk-drive-network-nbd-unix.xml | 42 ++
.../qemuxml2xmlout-disk-drive-network-nbd.xml | 42 ++
.../qemuxml2xmlout-disk-drive-network-rbd-auth.xml | 47 ++
...uxml2xmlout-disk-drive-network-rbd-ceph-env.xml | 44 ++
.../qemuxml2xmlout-disk-drive-network-rbd-ipv6.xml | 45 ++
.../qemuxml2xmlout-disk-drive-network-rbd.xml | 72 +++
.../qemuxml2xmlout-disk-drive-network-sheepdog.xml | 42 ++
.../qemuxml2xmlout-disk-floppy.xml | 47 ++
.../qemuxml2xmlout-disk-many.xml | 52 ++
.../qemuxml2xmlout-disk-mirror-active.xml | 66 +++
.../qemuxml2xmlout-disk-mirror-inactive.xml | 51 ++
.../qemuxml2xmlout-disk-mirror-old-inactive.xml | 14 +-
.../qemuxml2xmlout-disk-mirror-old.xml | 14 +-
.../qemuxml2xmlout-disk-scsi-device-auto.xml | 16 +-
.../qemuxml2xmlout-disk-scsi-device.xml | 43 ++
.../qemuxml2xmlout-disk-scsi-disk-vpd.xml | 49 ++
...muxml2xmlout-disk-scsi-lun-passthrough-sgio.xml | 43 ++
.../qemuxml2xmlout-disk-scsi-megasas.xml | 43 ++
.../qemuxml2xmlout-disk-scsi-virtio-scsi.xml | 43 ++
.../qemuxml2xmlout-disk-scsi-vscsi.xml | 43 ++
.../qemuxml2xmlout-disk-source-pool-mode.xml | 55 ++
.../qemuxml2xmlout-disk-source-pool.xml | 12 +-
.../qemuxml2xmlout-disk-usb-device.xml | 39 ++
...qemuxml2xmlout-disk-virtio-scsi-cmd_per_lun.xml | 36 ++
.../qemuxml2xmlout-disk-virtio-scsi-ioeventfd.xml | 36 ++
...qemuxml2xmlout-disk-virtio-scsi-max_sectors.xml | 36 ++
.../qemuxml2xmlout-disk-virtio-scsi-num_queues.xml | 36 ++
.../qemuxml2xmlout-disk-virtio.xml | 53 ++
.../qemuxml2xmlout-disk-xenvbd.xml | 51 ++
.../qemuxml2xmlout-encrypted-disk.xml | 36 ++
.../qemuxml2xmlout-eoi-disabled.xml | 32 ++
.../qemuxml2xmlout-eoi-enabled.xml | 32 ++
.../qemuxml2xmlout-event_idx.xml | 60 +++
.../qemuxml2xmlout-floppy-drive-fat.xml | 38 ++
.../qemuxml2xmlout-graphics-listen-network.xml | 42 ++
.../qemuxml2xmlout-graphics-listen-network2.xml | 13 +-
.../qemuxml2xmlout-graphics-sdl-fullscreen.xml | 39 ++
.../qemuxml2xmlout-graphics-sdl.xml | 39 ++
.../qemuxml2xmlout-graphics-spice-compression.xml | 51 ++
.../qemuxml2xmlout-graphics-spice-qxl-vga.xml | 48 ++
.../qemuxml2xmlout-graphics-spice-timeout.xml | 4 +-
.../qemuxml2xmlout-graphics-spice.xml | 55 ++
.../qemuxml2xmlout-graphics-vnc-sasl.xml | 41 ++
.../qemuxml2xmlout-graphics-vnc-tls.xml | 41 ++
.../qemuxml2xmlout-graphics-vnc-websocket.xml | 32 ++
.../qemuxml2xmlout-graphics-vnc.xml | 41 ++
.../qemuxml2xmlout-hostdev-pci-address.xml | 40 ++
...qemuxml2xmlout-hostdev-scsi-autogen-address.xml | 20 +-
.../qemuxml2xmlout-hostdev-scsi-large-unit.xml | 45 ++
.../qemuxml2xmlout-hostdev-scsi-lsi-iscsi-auth.xml | 56 ++
.../qemuxml2xmlout-hostdev-scsi-lsi-iscsi.xml | 50 ++
.../qemuxml2xmlout-hostdev-scsi-lsi.xml | 45 ++
.../qemuxml2xmlout-hostdev-scsi-rawio.xml | 45 ++
.../qemuxml2xmlout-hostdev-scsi-readonly.xml | 46 ++
.../qemuxml2xmlout-hostdev-scsi-sgio.xml | 45 ++
.../qemuxml2xmlout-hostdev-scsi-shareable.xml | 46 ++
...muxml2xmlout-hostdev-scsi-virtio-iscsi-auth.xml | 56 ++
.../qemuxml2xmlout-hostdev-scsi-virtio-iscsi.xml | 50 ++
.../qemuxml2xmlout-hostdev-scsi-virtio-scsi.xml | 45 ++
.../qemuxml2xmlout-hostdev-usb-address.xml | 39 ++
.../qemuxml2xmlout-hostdev-vfio.xml | 42 ++
.../qemuxml2xmlout-hugepages-pages.xml | 53 ++
.../qemuxml2xmlout-hugepages-pages2.xml | 46 ++
.../qemuxml2xmlout-hugepages-pages3.xml | 46 ++
.../qemuxml2xmlout-hugepages-shared.xml | 53 ++
.../qemuxml2xmlout-hugepages.xml | 38 ++
.../qemuxml2xmlout-hyperv-off.xml | 35 ++
.../qemuxml2xmlout-hyperv-panic.xml | 29 +
tests/qemuxml2xmloutdata/qemuxml2xmlout-hyperv.xml | 33 ++
.../qemuxml2xmlout-input-usbmouse.xml | 35 ++
.../qemuxml2xmlout-input-usbtablet.xml | 35 ++
.../qemuxml2xmlout-interface-driver.xml | 61 +++
.../qemuxml2xmlout-interface-server.xml | 134 +++++
.../qemuxml2xmlout-iothreads-disk-virtio-ccw.xml | 35 ++
.../qemuxml2xmlout-iothreads-disk.xml | 47 ++
.../qemuxml2xmlout-iothreads-ids-partial.xml | 39 ++
.../qemuxml2xmlout-iothreads-ids.xml | 39 ++
.../qemuxml2xmlout-iothreads.xml | 35 ++
.../qemuxml2xmlout-kvm-features-off.xml | 33 ++
.../qemuxml2xmlout-kvm-features.xml | 31 ++
.../qemuxml2xmloutdata/qemuxml2xmlout-kvmclock.xml | 30 ++
tests/qemuxml2xmloutdata/qemuxml2xmlout-lease.xml | 46 ++
.../qemuxml2xmlout-machine-core-off.xml | 34 ++
.../qemuxml2xmlout-machine-core-on.xml | 34 ++
.../qemuxml2xmlout-memory-hotplug-dimm.xml | 62 +++
.../qemuxml2xmlout-memory-hotplug-nonuma.xml | 28 +
.../qemuxml2xmlout-memory-hotplug.xml | 42 ++
.../qemuxml2xmlout-memtune-unlimited.xml | 12 +-
.../qemuxml2xmloutdata/qemuxml2xmlout-memtune.xml | 12 +-
.../qemuxml2xmlout-metadata-duplicate.xml | 12 +-
.../qemuxml2xmloutdata/qemuxml2xmlout-metadata.xml | 12 +-
.../qemuxml2xmloutdata/qemuxml2xmlout-migrate.xml | 34 ++
.../qemuxml2xmloutdata/qemuxml2xmlout-minimal.xml | 40 ++
.../qemuxml2xmlout-misc-acpi.xml | 37 ++
.../qemuxml2xmlout-misc-disable-s3.xml | 37 ++
.../qemuxml2xmlout-misc-disable-suspends.xml | 38 ++
.../qemuxml2xmlout-misc-enable-s4.xml | 37 ++
.../qemuxml2xmlout-misc-no-reboot.xml | 34 ++
.../qemuxml2xmlout-misc-uuid.xml | 37 ++
.../qemuxml2xmlout-net-bandwidth.xml | 78 +++
.../qemuxml2xmlout-net-bandwidth2.xml | 67 +++
.../qemuxml2xmlout-net-eth-ifname.xml | 41 ++
.../qemuxml2xmloutdata/qemuxml2xmlout-net-eth.xml | 40 ++
.../qemuxml2xmlout-net-hostdev-vfio.xml | 50 ++
.../qemuxml2xmlout-net-hostdev.xml | 49 ++
.../qemuxml2xmlout-net-midonet.xml | 44 ++
.../qemuxml2xmlout-net-openvswitch.xml | 49 ++
.../qemuxml2xmloutdata/qemuxml2xmlout-net-udp.xml | 43 ++
.../qemuxml2xmloutdata/qemuxml2xmlout-net-user.xml | 39 ++
.../qemuxml2xmlout-net-vhostuser.xml | 52 ++
.../qemuxml2xmlout-net-virtio-device.xml | 41 ++
.../qemuxml2xmlout-net-virtio-disable-offloads.xml | 44 ++
...qemuxml2xmlout-net-virtio-network-portgroup.xml | 65 +++
.../qemuxml2xmlout-net-virtio.xml | 39 ++
.../qemuxml2xmlout-nographics-vga.xml | 34 ++
.../qemuxml2xmlout-nosharepages.xml | 37 ++
...emuxml2xmlout-numad-auto-memory-vcpu-cpuset.xml | 12 +-
...ad-auto-memory-vcpu-no-cpuset-and-placement.xml | 12 +-
.../qemuxml2xmlout-numad-auto-vcpu-no-numatune.xml | 12 +-
...emuxml2xmlout-numad-static-vcpu-no-numatune.xml | 38 ++
.../qemuxml2xmlout-numatune-auto-prefer.xml | 8 +-
.../qemuxml2xmlout-numatune-memnode-no-memory.xml | 36 ++
.../qemuxml2xmlout-numatune-memnode.xml | 8 +-
.../qemuxml2xmlout-panic-double.xml | 32 ++
.../qemuxml2xmlout-panic-isa.xml | 39 ++
.../qemuxml2xmlout-panic-no-address.xml | 37 ++
.../qemuxml2xmlout-panic-pseries.xml | 32 ++
tests/qemuxml2xmloutdata/qemuxml2xmlout-panic.xml | 12 +-
.../qemuxml2xmlout-parallel-tcp.xml | 39 ++
.../qemuxml2xmlout-pci-autoadd-addr.xml | 35 ++
.../qemuxml2xmlout-pci-autoadd-idx.xml | 41 +-
.../qemuxml2xmlout-pci-bridge-many-disks.xml | 124 ++++-
.../qemuxml2xmlout-pci-bridge.xml | 251 +++++++++
.../qemuxml2xmloutdata/qemuxml2xmlout-pci-rom.xml | 61 +++
.../qemuxml2xmlout-pci-serial-dev-chardev.xml | 45 ++
.../qemuxml2xmlout-pcie-root-port.xml | 53 ++
.../qemuxml2xmlout-pcie-root.xml | 15 +-
.../qemuxml2xmlout-pcie-switch-downstream-port.xml | 91 ++++
.../qemuxml2xmlout-pcie-switch-upstream-port.xml | 61 +++
.../qemuxml2xmlout-pcihole64-gib.xml | 8 +-
.../qemuxml2xmlout-pcihole64-none.xml | 29 +
.../qemuxml2xmlout-pcihole64-q35.xml | 45 ++
.../qemuxml2xmlout-pcihole64.xml | 29 +
.../qemuxml2xmlout-pmu-feature-off.xml | 29 +
.../qemuxml2xmlout-pmu-feature.xml | 4 +-
.../qemuxml2xmlout-pseries-nvram.xml | 27 +
.../qemuxml2xmlout-pseries-panic-missing.xml | 8 +-
.../qemuxml2xmlout-pseries-panic-no-address.xml | 8 +-
.../qemuxml2xmlout-pv-spinlock-disabled.xml | 32 ++
.../qemuxml2xmlout-pv-spinlock-enabled.xml | 32 ++
.../qemuxml2xmlout-q35-usb2-multi.xml | 28 +-
.../qemuxml2xmlout-q35-usb2-reorder.xml | 28 +-
.../qemuxml2xmloutdata/qemuxml2xmlout-q35-usb2.xml | 14 +-
tests/qemuxml2xmloutdata/qemuxml2xmlout-q35.xml | 22 +-
.../qemuxml2xmlout-qemu-ns-no-env.xml | 38 ++
.../qemuxml2xmlout-reboot-timeout-disabled.xml | 26 +
.../qemuxml2xmlout-reboot-timeout-enabled.xml | 26 +
.../qemuxml2xmlout-restore-v2.xml | 34 ++
.../qemuxml2xmlout-s390-defaultconsole.xml | 3 +-
.../qemuxml2xmlout-seclabel-dac-none.xml | 36 ++
.../qemuxml2xmlout-seclabel-device-multiple.xml | 40 ++
.../qemuxml2xmlout-seclabel-dynamic-baselabel.xml | 38 ++
.../qemuxml2xmlout-seclabel-dynamic-labelskip.xml | 12 +-
.../qemuxml2xmlout-seclabel-dynamic-none.xml | 36 ++
.../qemuxml2xmlout-seclabel-dynamic-override.xml | 50 ++
.../qemuxml2xmlout-seclabel-dynamic-relabel.xml | 12 +-
.../qemuxml2xmlout-seclabel-none.xml | 12 +-
.../qemuxml2xmlout-seclabel-static-labelskip.xml | 42 ++
.../qemuxml2xmlout-seclabel-static.xml | 38 ++
.../qemuxml2xmlout-serial-dev.xml | 42 ++
.../qemuxml2xmlout-serial-file.xml | 42 ++
.../qemuxml2xmlout-serial-many.xml | 44 ++
.../qemuxml2xmlout-serial-pty.xml | 40 ++
.../qemuxml2xmlout-serial-spiceport-nospice.xml | 43 ++
.../qemuxml2xmlout-serial-spiceport.xml | 51 ++
.../qemuxml2xmlout-serial-target-port-auto.xml | 12 +-
.../qemuxml2xmlout-serial-tcp-telnet.xml | 44 ++
.../qemuxml2xmlout-serial-tcp.xml | 44 ++
.../qemuxml2xmlout-serial-udp.xml | 48 ++
.../qemuxml2xmlout-serial-unix.xml | 42 ++
.../qemuxml2xmlout-serial-vc.xml | 40 ++
tests/qemuxml2xmloutdata/qemuxml2xmlout-shmem.xml | 64 +++
.../qemuxml2xmlout-smbios-multiple-type2.xml | 66 +++
tests/qemuxml2xmloutdata/qemuxml2xmlout-smbios.xml | 59 +++
tests/qemuxml2xmloutdata/qemuxml2xmlout-smp.xml | 37 ++
.../qemuxml2xmlout-sound-device.xml | 60 +++
tests/qemuxml2xmloutdata/qemuxml2xmlout-sound.xml | 42 ++
.../qemuxml2xmlout-tap-vhost-incorrect.xml | 14 +-
.../qemuxml2xmlout-tap-vhost.xml | 61 +++
.../qemuxml2xmlout-tpm-passthrough.xml | 36 ++
.../qemuxml2xmlout-usb-ich9-ehci-addr.xml | 25 +-
.../qemuxml2xmlout-usb-redir-filter-version.xml | 8 +-
.../qemuxml2xmlout-usb-redir-filter.xml | 4 +-
.../qemuxml2xmlout-usb-redir.xml | 46 ++
.../qemuxml2xmlout-vcpu-placement-static.xml | 42 ++
.../qemuxml2xmlout-vhost_queues.xml | 60 +++
.../qemuxml2xmlout-video-virtio-gpu-device.xml | 40 ++
.../qemuxml2xmlout-video-virtio-gpu-virgl.xml | 42 ++
.../qemuxml2xmlout-virtio-input-passthrough.xml | 31 ++
.../qemuxml2xmlout-virtio-input.xml | 36 ++
.../qemuxml2xmlout-virtio-lun.xml | 59 +++
.../qemuxml2xmlout-virtio-rng-egd.xml | 34 ++
.../qemuxml2xmlout-virtio-rng-random.xml | 32 ++
.../qemuxml2xmloutdata/qemuxml2xmlout-watchdog.xml | 35 ++
tests/qemuxml2xmltest.c | 417 ++++++++++-----
tests/testutils.c | 45 +-
tests/testutils.h | 6 +-
703 files changed, 17462 insertions(+), 1522 deletions(-)
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-boot-cdrom.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-boot-cdrom.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-boot-floppy.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-boot-floppy.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-boot-network.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-boot-network.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-clock-localtime.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-clock-localtime.xml
rename tests/{qemuxml2argvdata/qemuxml2argv-minimal-s390.args => qemuargv2xmldata/qemuargv2xml-clock-utc.args} (79%)
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-clock-utc.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-console-compat.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-console-compat.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-cdrom-empty.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-cdrom-empty.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-cdrom.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-cdrom.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-boot-cdrom.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-boot-cdrom.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-boot-disk.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-boot-disk.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-cache-directsync.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-cache-directsync.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-cache-unsafe.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-cache-unsafe.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-cache-v2-none.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-cache-v2-none.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-cache-v2-wb.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-cache-v2-wb.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-cache-v2-wt.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-cache-v2-wt.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-error-policy-enospace.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-error-policy-enospace.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-error-policy-stop.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-error-policy-stop.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-error-policy-wreport-rignore.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-error-policy-wreport-rignore.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-fmt-qcow.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-fmt-qcow.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-gluster.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-gluster.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-iscsi-auth.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-iscsi-auth.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-iscsi.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-iscsi.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-nbd-export.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-nbd-export.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-nbd-ipv6-export.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-nbd-ipv6-export.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-nbd-ipv6.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-nbd-ipv6.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-nbd-unix.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-nbd-unix.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-nbd.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-nbd.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-rbd-auth.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-rbd-auth.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-rbd-ceph-env.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-rbd-ceph-env.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-rbd-ipv6.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-rbd-ipv6.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-rbd.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-rbd.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-sheepdog.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-drive-network-sheepdog.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-floppy.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-floppy.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-many.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-many.xml
rename tests/{qemuxml2argvdata/qemuxml2argv-disk-usb.args => qemuargv2xmldata/qemuargv2xml-disk-usb.args} (100%)
rename tests/{qemuxml2argvdata/qemuxml2argv-disk-usb.xml => qemuargv2xmldata/qemuargv2xml-disk-usb.xml} (100%)
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-virtio.args
rename tests/{qemuxml2xmloutdata/qemuxml2xmlout-disk-mirror.xml => qemuargv2xmldata/qemuargv2xml-disk-virtio.xml} (88%)
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-xenvbd.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-disk-xenvbd.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-sdl-fullscreen.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-sdl-fullscreen.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-sdl.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-sdl.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-vnc-policy.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-vnc-policy.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-vnc-sasl.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-vnc-sasl.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-vnc-socket.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-vnc-socket.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-vnc-tls.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-vnc-tls.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-vnc-websocket.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-vnc-websocket.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-vnc.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-graphics-vnc.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-hostdev-pci-address.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-hostdev-pci-address.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-hostdev-usb-address.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-hostdev-usb-address.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-hyperv-panic.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-hyperv-panic.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-hyperv.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-hyperv.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-input-usbmouse.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-input-usbmouse.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-input-usbtablet.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-input-usbtablet.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-kvm-features.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-kvm-features.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-kvmclock.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-kvmclock.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-machine-aeskeywrap-off-argv.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-machine-aeskeywrap-off-argv.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-machine-aeskeywrap-on-argv.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-machine-aeskeywrap-on-argv.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-machine-core-off.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-machine-core-off.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-machine-core-on.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-machine-core-on.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-machine-deakeywrap-off-argv.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-machine-deakeywrap-off-argv.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-machine-deakeywrap-on-argv.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-machine-deakeywrap-on-argv.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-machine-keywrap-none-argv.args
rename tests/{qemuxml2argvdata/qemuxml2argv-minimal-s390.xml => qemuargv2xmldata/qemuargv2xml-machine-keywrap-none-argv.xml} (53%)
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-migrate.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-migrate.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-misc-acpi.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-misc-acpi.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-misc-disable-s3.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-misc-disable-s3.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-misc-disable-suspends.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-misc-disable-suspends.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-misc-enable-s4.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-misc-enable-s4.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-misc-no-reboot.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-misc-no-reboot.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-misc-uuid.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-misc-uuid.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-net-eth-ifname.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-net-eth-ifname.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-net-eth.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-net-eth.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-net-user.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-net-user.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-net-virtio.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-net-virtio.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-nographics-vga.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-nographics-vga.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-nosharepages.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-nosharepages.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-parallel-tcp.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-parallel-tcp.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-pseries-disk.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-pseries-disk.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-pseries-nvram.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-pseries-nvram.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-qemu-ns-no-env.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-qemu-ns-no-env.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-reboot-timeout-disabled.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-reboot-timeout-disabled.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-reboot-timeout-enabled.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-reboot-timeout-enabled.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-restore-v2.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-restore-v2.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-dev.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-dev.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-file.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-file.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-many.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-many.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-pty.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-pty.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-tcp-telnet.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-tcp-telnet.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-tcp.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-tcp.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-udp.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-udp.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-unix.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-unix.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-vc.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-serial-vc.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-smp.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-smp.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-sound.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-sound.xml
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-watchdog.args
create mode 100644 tests/qemuargv2xmldata/qemuargv2xml-watchdog.xml
rename tests/qemuxml2argvdata/{qemuxml2argv-aarch64-mmio-default-pci.args => qemuxml2argv-aarch64-virtio-pci-default.args} (100%)
rename tests/qemuxml2argvdata/{qemuxml2argv-aarch64-mmio-default-pci.xml => qemuxml2argv-aarch64-virtio-pci-default.xml} (100%)
rename tests/qemuxml2argvdata/{qemuxml2argv-aarch64-virtio-pci.args => qemuxml2argv-aarch64-virtio-pci-manual-addresses.args} (100%)
rename tests/qemuxml2argvdata/{qemuxml2argv-aarch64-virtio-pci.xml => qemuxml2argv-aarch64-virtio-pci-manual-addresses.xml} (100%)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-usb-nosupport.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-aarch64-aavmf-virtio-mmio.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-aarch64-gic.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-aarch64-gicv3.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-aarch64-virtio-pci-default.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-aarch64-virtio-pci-manual-addresses.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-bios-nvram.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-blkdeviotune.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-blkiotune-device.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-blkiotune.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-boot-cdrom.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-boot-floppy.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-boot-menu-disable.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-boot-menu-enable-with-timeout.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-boot-multi.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-boot-network.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-boot-order.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-channel-guestfwd.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-channel-virtio.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-chardev-label.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-clock-catchup.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-clock-localtime.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-clock-timer-hyperv-rtc.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-clock-utc.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-console-compat.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-console-virtio-many.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-cpu-eoi-disabled.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-cpu-eoi-enabled.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-cpu-host-kvmclock.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-cpu-host-model-features.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-cpu-host-passthrough-features.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-cpu-kvmclock.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-cpu-numa-disjoint.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-cpu-numa-memshared.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-cputune-iothreadsched-zeropriority.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-cputune-numatune.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-cputune-zero-shares.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-cputune.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-active-commit.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-aio.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-cdrom-empty.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-cdrom.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-copy_on_read.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-boot-cdrom.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-boot-disk.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-cache-directsync.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-cache-unsafe.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-cache-v2-none.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-cache-v2-wb.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-cache-v2-wt.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-copy-on-read.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-error-policy-enospace.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-error-policy-stop.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-error-policy-wreport-rignore.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-fat.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-fmt-qcow.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-network-gluster.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-network-iscsi-auth.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-network-iscsi.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-network-nbd-export.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-network-nbd-ipv6-export.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-network-nbd-ipv6.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-network-nbd-unix.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-network-nbd.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-network-rbd-auth.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-network-rbd-ceph-env.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-network-rbd-ipv6.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-network-rbd.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-network-sheepdog.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-floppy.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-many.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-mirror-active.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-mirror-inactive.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-scsi-device.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-scsi-disk-vpd.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-scsi-lun-passthrough-sgio.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-scsi-megasas.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-scsi-virtio-scsi.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-scsi-vscsi.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-source-pool-mode.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-usb-device.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-virtio-scsi-cmd_per_lun.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-virtio-scsi-ioeventfd.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-virtio-scsi-max_sectors.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-virtio-scsi-num_queues.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-virtio.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-xenvbd.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-encrypted-disk.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-eoi-disabled.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-eoi-enabled.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-event_idx.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-floppy-drive-fat.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-listen-network.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-sdl-fullscreen.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-sdl.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-compression.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-qxl-vga.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc-sasl.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc-tls.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc-websocket.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-pci-address.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-scsi-large-unit.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-scsi-lsi-iscsi-auth.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-scsi-lsi-iscsi.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-scsi-lsi.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-scsi-rawio.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-scsi-readonly.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-scsi-sgio.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-scsi-shareable.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-scsi-virtio-iscsi-auth.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-scsi-virtio-iscsi.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-scsi-virtio-scsi.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-usb-address.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hostdev-vfio.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hugepages-pages.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hugepages-pages2.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hugepages-pages3.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hugepages-shared.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hugepages.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hyperv-off.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hyperv-panic.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-hyperv.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-input-usbmouse.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-input-usbtablet.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-interface-driver.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-interface-server.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-iothreads-disk-virtio-ccw.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-iothreads-disk.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-iothreads-ids-partial.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-iothreads-ids.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-iothreads.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-kvm-features-off.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-kvm-features.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-kvmclock.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-lease.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-machine-core-off.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-machine-core-on.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-memory-hotplug-dimm.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-memory-hotplug-nonuma.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-memory-hotplug.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-migrate.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-minimal.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-misc-acpi.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-misc-disable-s3.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-misc-disable-suspends.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-misc-enable-s4.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-misc-no-reboot.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-misc-uuid.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-bandwidth.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-bandwidth2.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-eth-ifname.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-eth.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-hostdev-vfio.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-hostdev.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-midonet.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-openvswitch.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-udp.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-user.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-vhostuser.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-virtio-device.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-virtio-disable-offloads.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-virtio-network-portgroup.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-virtio.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-nographics-vga.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-nosharepages.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-numad-static-vcpu-no-numatune.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-numatune-memnode-no-memory.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-panic-double.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-panic-isa.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-panic-no-address.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-panic-pseries.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-parallel-tcp.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pci-bridge.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pci-rom.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pci-serial-dev-chardev.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pcie-root-port.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pcie-switch-downstream-port.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pcie-switch-upstream-port.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pcihole64-none.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pcihole64-q35.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pcihole64.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pmu-feature-off.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-nvram.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pv-spinlock-disabled.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pv-spinlock-enabled.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-qemu-ns-no-env.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-reboot-timeout-disabled.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-reboot-timeout-enabled.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-restore-v2.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-seclabel-dac-none.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-seclabel-device-multiple.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-seclabel-dynamic-baselabel.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-seclabel-dynamic-none.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-seclabel-dynamic-override.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-seclabel-static-labelskip.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-seclabel-static.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-serial-dev.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-serial-file.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-serial-many.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-serial-pty.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-serial-spiceport-nospice.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-serial-spiceport.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-serial-tcp-telnet.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-serial-tcp.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-serial-udp.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-serial-unix.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-serial-vc.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-shmem.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-smbios-multiple-type2.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-smbios.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-smp.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-sound-device.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-sound.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-tap-vhost.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-tpm-passthrough.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-usb-redir.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-vcpu-placement-static.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-vhost_queues.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-video-virtio-gpu-device.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-video-virtio-gpu-virgl.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-virtio-input-passthrough.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-virtio-input.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-virtio-lun.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-virtio-rng-egd.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-virtio-rng-random.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-watchdog.xml
--
2.5.0
9 years, 2 months
[libvirt] [PATCH] virDomainFormatSchedDef: Initialize @priority
by Michal Privoznik
Older gcc fails to see that the variable is set iff @hasPriority
== true in which case the former is set a value. Initialize the
value while declaring it to make the compiler shut up.
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
This maybe isn't the best approach, to workaround false
positives. I'm open to discussion.
src/conf/domain_conf.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 895a51b..67415fa 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -21472,7 +21472,7 @@ virDomainFormatSchedDef(virDomainDefPtr def,
virBitmapPtr currentMap = NULL;
ssize_t nextprio;
bool hasPriority = false;
- int priority;
+ int priority = 0;
switch ((virProcessSchedPolicy) i) {
case VIR_PROC_POLICY_NONE:
--
2.4.10
9 years, 2 months
[libvirt] [PATCH] util: Get rid of virStringListLen()
by Martin Kletzander
It does exactly the same thing as virStringListLenght() and it's used in
one place only.
Signed-off-by: Martin Kletzander <mkletzan(a)redhat.com>
---
src/util/virpolkit.c | 2 +-
src/util/virstring.c | 14 --------------
src/util/virstring.h | 2 --
3 files changed, 1 insertion(+), 17 deletions(-)
diff --git a/src/util/virpolkit.c b/src/util/virpolkit.c
index ae7ec132b229..8da91f2cdb0a 100644
--- a/src/util/virpolkit.c
+++ b/src/util/virpolkit.c
@@ -90,7 +90,7 @@ int virPolkitCheckAuth(const char *actionid,
"start-time", "t", startTime,
"uid", "i", (int)uid,
actionid,
- virStringListLen(details) / 2,
+ virStringListLength(details) / 2,
details,
allowInteraction,
"" /* cancellation ID */) < 0)
diff --git a/src/util/virstring.c b/src/util/virstring.c
index 8cd4bdd16ece..fc4f5ba7e641 100644
--- a/src/util/virstring.c
+++ b/src/util/virstring.c
@@ -208,20 +208,6 @@ virStringFreeListCount(char **strings,
}
-size_t virStringListLen(const char **strings)
-{
- size_t i = 0;
-
- if (!strings)
- return 0;
-
- while (strings[i] != NULL)
- i++;
-
- return i;
-}
-
-
bool
virStringArrayHasString(char **strings, const char *needle)
{
diff --git a/src/util/virstring.h b/src/util/virstring.h
index df5928fb1363..cdf10588259c 100644
--- a/src/util/virstring.h
+++ b/src/util/virstring.h
@@ -44,8 +44,6 @@ char *virStringJoin(const char **strings,
void virStringFreeList(char **strings);
void virStringFreeListCount(char **strings, size_t count);
-size_t virStringListLen(const char **strings);
-
bool virStringArrayHasString(char **strings, const char *needle);
char *virStringGetFirstWithPrefix(char **strings, const char *prefix)
ATTRIBUTE_NONNULL(2);
--
2.7.1
9 years, 2 months
[libvirt] [PATCH 0/2] Check return status for virDomainGraphicsListenSetAddress
by John Ferlan
The second patch is a result of a Coverity found issue - the first one is
collateral damage found because my first pass just checked the status and
went to error resulting in a resource leak.... Rather than add two more
lines for calling the graphic def free function, it was just easier to
refactor the code.
John Ferlan (2):
qemu: Refactor qemuParseCommandLine error path for vnc parse
qemu: Check return status for virDomainGraphicsListenSetAddress
src/qemu/qemu_command.c | 41 +++++++++++++++++------------------------
1 file changed, 17 insertions(+), 24 deletions(-)
--
2.5.0
9 years, 2 months
[libvirt] [PATCHv2] leaseshelper: split out virLeaseNew
by Ján Tomko
For the actions ADD and OLD, split out creating the new lease object,
as well as getting the environment variables that do not affect
the parsing of command line arguments.
---
v2: do not pass argc, argv to the function
src/network/leaseshelper.c | 127 +++++++++++++++++++++++++++------------------
1 file changed, 77 insertions(+), 50 deletions(-)
diff --git a/src/network/leaseshelper.c b/src/network/leaseshelper.c
index f560206..2a0b18c 100644
--- a/src/network/leaseshelper.c
+++ b/src/network/leaseshelper.c
@@ -285,10 +285,82 @@ virLeasePrintLeases(virJSONValuePtr leases_array_new,
return ret;
}
+static int
+virLeaseNew(virJSONValuePtr *lease_ret,
+ const char *mac,
+ const char *clientid,
+ const char *ip,
+ const char *hostname,
+ const char *iaid,
+ const char *server_duid)
+{
+ virJSONValuePtr lease_new = NULL;
+ const char *exptime_tmp = virGetEnvAllowSUID("DNSMASQ_LEASE_EXPIRES");
+ long long expirytime = 0;
+ char *exptime = NULL;
+ int ret = -1;
+
+ /* In case hostname is still unknown, use the last known one */
+ if (!hostname)
+ hostname = virGetEnvAllowSUID("DNSMASQ_OLD_HOSTNAME");
+
+ if (!mac) {
+ ret = 0;
+ goto cleanup;
+ }
+
+ if (exptime_tmp) {
+ if (VIR_STRDUP(exptime, exptime_tmp) < 0)
+ goto cleanup;
+
+ /* Removed extraneous trailing space in DNSMASQ_LEASE_EXPIRES
+ * (dnsmasq < 2.52) */
+ if (exptime[strlen(exptime) - 1] == ' ')
+ exptime[strlen(exptime) - 1] = '\0';
+ }
+
+ if (!exptime ||
+ virStrToLong_ll(exptime, NULL, 10, &expirytime) < 0) {
+ virReportError(VIR_ERR_INTERNAL_ERROR,
+ _("Unable to convert lease expiry time to long long: %s"),
+ NULLSTR(exptime));
+ goto cleanup;
+ }
+
+ /* Create new lease */
+ if (!(lease_new = virJSONValueNewObject())) {
+ virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+ _("failed to create json"));
+ goto cleanup;
+ }
+
+ if (iaid && virJSONValueObjectAppendString(lease_new, "iaid", iaid) < 0)
+ goto cleanup;
+ if (ip && virJSONValueObjectAppendString(lease_new, "ip-address", ip) < 0)
+ goto cleanup;
+ if (mac && virJSONValueObjectAppendString(lease_new, "mac-address", mac) < 0)
+ goto cleanup;
+ if (hostname && virJSONValueObjectAppendString(lease_new, "hostname", hostname) < 0)
+ goto cleanup;
+ if (clientid && virJSONValueObjectAppendString(lease_new, "client-id", clientid) < 0)
+ goto cleanup;
+ if (server_duid && virJSONValueObjectAppendString(lease_new, "server-duid", server_duid) < 0)
+ goto cleanup;
+ if (expirytime && virJSONValueObjectAppendNumberLong(lease_new, "expiry-time", expirytime) < 0)
+ goto cleanup;
+
+ ret = 0;
+ *lease_ret = lease_new;
+ lease_new = NULL;
+ cleanup:
+ VIR_FREE(exptime);
+ virJSONValueFree(lease_new);
+ return ret;
+}
+
int
main(int argc, char **argv)
{
- char *exptime = NULL;
char *pid_file = NULL;
char *custom_lease_file = NULL;
const char *ip = NULL;
@@ -297,10 +369,8 @@ main(int argc, char **argv)
const char *iaid = virGetEnvAllowSUID("DNSMASQ_IAID");
const char *clientid = virGetEnvAllowSUID("DNSMASQ_CLIENT_ID");
const char *interface = virGetEnvAllowSUID("DNSMASQ_INTERFACE");
- const char *exptime_tmp = virGetEnvAllowSUID("DNSMASQ_LEASE_EXPIRES");
const char *hostname = virGetEnvAllowSUID("DNSMASQ_SUPPLIED_HOSTNAME");
char *server_duid = NULL;
- long long expirytime = 0;
int action = -1;
int pid_file_fd = -1;
int rv = EXIT_FAILURE;
@@ -362,20 +432,6 @@ main(int argc, char **argv)
if (argc == 5)
hostname = argv[4];
- /* In case hostname is still unknown, use the last known one */
- if (!hostname)
- hostname = virGetEnvAllowSUID("DNSMASQ_OLD_HOSTNAME");
-
- if (exptime_tmp) {
- if (VIR_STRDUP(exptime, exptime_tmp) < 0)
- goto cleanup;
-
- /* Removed extraneous trailing space in DNSMASQ_LEASE_EXPIRES
- * (dnsmasq < 2.52) */
- if (exptime[strlen(exptime) - 1] == ' ')
- exptime[strlen(exptime) - 1] = '\0';
- }
-
/* Check if it is an IPv6 lease */
if (iaid) {
mac = virGetEnvAllowSUID("DNSMASQ_MAC");
@@ -405,6 +461,9 @@ main(int argc, char **argv)
switch ((enum virLeaseActionFlags) action) {
case VIR_LEASE_ACTION_ADD:
case VIR_LEASE_ACTION_OLD:
+ /* Create new lease */
+ if (virLeaseNew(&lease_new, mac, clientid, ip, hostname, server_duid, iaid) < 0)
+ goto cleanup;
/* Custom ipv6 leases *will not* be created if the env-var DNSMASQ_MAC
* is not set. In the special case, when the $(interface).status file
* is not already present and dnsmasq is (re)started, the corresponding
@@ -418,40 +477,9 @@ main(int argc, char **argv)
* the new lease will be created irrespective of whether the MACID is
* known or not.
*/
- if (!mac)
+ if (!lease_new)
break;
- /* Create new lease */
- if (!(lease_new = virJSONValueNewObject())) {
- virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
- _("failed to create json"));
- goto cleanup;
- }
-
- if (!exptime ||
- virStrToLong_ll(exptime, NULL, 10, &expirytime) < 0) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("Unable to convert lease expiry time to long long: %s"),
- NULLSTR(exptime));
- goto cleanup;
- }
-
- if (iaid && virJSONValueObjectAppendString(lease_new, "iaid", iaid) < 0)
- goto cleanup;
- if (ip && virJSONValueObjectAppendString(lease_new, "ip-address", ip) < 0)
- goto cleanup;
- if (mac && virJSONValueObjectAppendString(lease_new, "mac-address", mac) < 0)
- goto cleanup;
- if (hostname && virJSONValueObjectAppendString(lease_new, "hostname", hostname) < 0)
- goto cleanup;
- if (clientid && virJSONValueObjectAppendString(lease_new, "client-id", clientid) < 0)
- goto cleanup;
- if (server_duid && virJSONValueObjectAppendString(lease_new, "server-duid", server_duid) < 0)
- goto cleanup;
- if (expirytime && virJSONValueObjectAppendNumberLong(lease_new, "expiry-time", expirytime) < 0)
- goto cleanup;
-
-
/* fallthrough */
case VIR_LEASE_ACTION_DEL:
/* Delete the corresponding lease, if it already exists */
@@ -514,7 +542,6 @@ main(int argc, char **argv)
virPidFileReleasePath(pid_file, pid_file_fd);
VIR_FREE(pid_file);
- VIR_FREE(exptime);
VIR_FREE(server_duid);
VIR_FREE(custom_lease_file);
virJSONValueFree(lease_new);
--
2.4.10
9 years, 2 months
[libvirt] [PATCH] leaseshelper: swap two parameters of virLeaseNew
by Ján Tomko
My commit e11aa74 messed up the parameter order.
Reported by John Ferlan.
---
src/network/leaseshelper.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Pushed as trivial.
diff --git a/src/network/leaseshelper.c b/src/network/leaseshelper.c
index 2a0b18c..55ddd58 100644
--- a/src/network/leaseshelper.c
+++ b/src/network/leaseshelper.c
@@ -462,7 +462,7 @@ main(int argc, char **argv)
case VIR_LEASE_ACTION_ADD:
case VIR_LEASE_ACTION_OLD:
/* Create new lease */
- if (virLeaseNew(&lease_new, mac, clientid, ip, hostname, server_duid, iaid) < 0)
+ if (virLeaseNew(&lease_new, mac, clientid, ip, hostname, iaid, server_duid) < 0)
goto cleanup;
/* Custom ipv6 leases *will not* be created if the env-var DNSMASQ_MAC
* is not set. In the special case, when the $(interface).status file
--
2.4.10
9 years, 2 months
[libvirt] [PATCH] Fix '-pie' build with clang
by Martin Kletzander
Commit 97e70a593589e8f0432a748b4b93c3cdc18b9e5a added the option -pie to
CFLAGS and LDFLAGS, however '-pie' is just a linker option. That
wouldn't be a problem. However, clang is checking for that and outputs
an error or unused argument:
error: argument unused during compilation: '-pie'
Signed-off-by: Martin Kletzander <mkletzan(a)redhat.com>
---
m4/virt-compile-pie.m4 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/m4/virt-compile-pie.m4 b/m4/virt-compile-pie.m4
index c0fb346ff784..a2df38ea7272 100644
--- a/m4/virt-compile-pie.m4
+++ b/m4/virt-compile-pie.m4
@@ -26,7 +26,7 @@ AC_DEFUN([LIBVIRT_COMPILE_PIE],[
;; dnl All code is position independent on Win32 target
*)
gl_COMPILER_OPTION_IF([-fPIE -DPIE -pie], [
- PIE_CFLAGS="-fPIE -DPIE -pie"
+ PIE_CFLAGS="-fPIE -DPIE"
PIE_LDFLAGS="-pie"
])
esac
--
2.7.1
9 years, 2 months
[libvirt] [libvirt-glib 1/3] Add GVirConfigDomainHostdev
by Zeeshan Ali (Khattak)
Add API to read and write domain/devices/hostdev nodes. This patch only
adds the baseclass and hence is not useful on it's own. A more specific
subclass to represent PCI devices will be added in a following patch.
---
libvirt-gconfig/Makefile.am | 2 +
.../libvirt-gconfig-domain-device-private.h | 3 +
libvirt-gconfig/libvirt-gconfig-domain-device.c | 2 +-
libvirt-gconfig/libvirt-gconfig-domain-hostdev.c | 180 +++++++++++++++++++++
libvirt-gconfig/libvirt-gconfig-domain-hostdev.h | 76 +++++++++
libvirt-gconfig/libvirt-gconfig.h | 1 +
libvirt-gconfig/libvirt-gconfig.sym | 11 ++
7 files changed, 274 insertions(+), 1 deletion(-)
create mode 100644 libvirt-gconfig/libvirt-gconfig-domain-hostdev.c
create mode 100644 libvirt-gconfig/libvirt-gconfig-domain-hostdev.h
diff --git a/libvirt-gconfig/Makefile.am b/libvirt-gconfig/Makefile.am
index 77b2032..4294bab 100644
--- a/libvirt-gconfig/Makefile.am
+++ b/libvirt-gconfig/Makefile.am
@@ -50,6 +50,7 @@ GCONFIG_HEADER_FILES = \
libvirt-gconfig-domain-graphics-sdl.h \
libvirt-gconfig-domain-graphics-spice.h \
libvirt-gconfig-domain-graphics-vnc.h \
+ libvirt-gconfig-domain-hostdev.h \
libvirt-gconfig-domain-input.h \
libvirt-gconfig-domain-interface.h \
libvirt-gconfig-domain-interface-bridge.h \
@@ -141,6 +142,7 @@ GCONFIG_SOURCE_FILES = \
libvirt-gconfig-domain-graphics-sdl.c \
libvirt-gconfig-domain-graphics-spice.c \
libvirt-gconfig-domain-graphics-vnc.c \
+ libvirt-gconfig-domain-hostdev.c \
libvirt-gconfig-domain-input.c \
libvirt-gconfig-domain-interface.c \
libvirt-gconfig-domain-interface-bridge.c \
diff --git a/libvirt-gconfig/libvirt-gconfig-domain-device-private.h b/libvirt-gconfig/libvirt-gconfig-domain-device-private.h
index 062c0e2..c45e1df 100644
--- a/libvirt-gconfig/libvirt-gconfig-domain-device-private.h
+++ b/libvirt-gconfig/libvirt-gconfig-domain-device-private.h
@@ -43,6 +43,9 @@ GVirConfigDomainDevice *
gvir_config_domain_graphics_new_from_tree(GVirConfigXmlDoc *doc,
xmlNodePtr tree);
GVirConfigDomainDevice *
+gvir_config_domain_hostdev_new_from_tree(GVirConfigXmlDoc *doc,
+ xmlNodePtr tree);
+GVirConfigDomainDevice *
gvir_config_domain_interface_new_from_tree(GVirConfigXmlDoc *doc,
xmlNodePtr tree);
GVirConfigDomainDevice *
diff --git a/libvirt-gconfig/libvirt-gconfig-domain-device.c b/libvirt-gconfig/libvirt-gconfig-domain-device.c
index 3d2b9b3..8a75cea 100644
--- a/libvirt-gconfig/libvirt-gconfig-domain-device.c
+++ b/libvirt-gconfig/libvirt-gconfig-domain-device.c
@@ -66,7 +66,7 @@ gvir_config_domain_device_new_from_tree(GVirConfigXmlDoc *doc,
} else if (xmlStrEqual(tree->name, (xmlChar*)"lease")) {
goto unimplemented;
} else if (xmlStrEqual(tree->name, (xmlChar*)"hostdev")) {
- goto unimplemented;
+ return gvir_config_domain_hostdev_new_from_tree(doc, tree);
} else if (xmlStrEqual(tree->name, (xmlChar*)"redirdev")) {
type = GVIR_CONFIG_TYPE_DOMAIN_REDIRDEV;
} else if (xmlStrEqual(tree->name, (xmlChar*)"smartcard")) {
diff --git a/libvirt-gconfig/libvirt-gconfig-domain-hostdev.c b/libvirt-gconfig/libvirt-gconfig-domain-hostdev.c
new file mode 100644
index 0000000..42eb184
--- /dev/null
+++ b/libvirt-gconfig/libvirt-gconfig-domain-hostdev.c
@@ -0,0 +1,180 @@
+/*
+ * libvirt-gconfig-domain-hostdev.c: libvirt domain hostdev configuration
+ *
+ * Copyright (C) 2012 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see
+ * <http://www.gnu.org/licenses/>.
+ *
+ * Authors: Zeeshan Ali (Khattak) <zeeshanak(a)gnome.org>
+ * Christophe Fergeau <cfergeau(a)redhat.com>
+ */
+
+#include <config.h>
+
+#include "libvirt-gconfig/libvirt-gconfig.h"
+#include "libvirt-gconfig/libvirt-gconfig-private.h"
+
+#define GVIR_CONFIG_DOMAIN_HOSTDEV_GET_PRIVATE(obj) \
+ (G_TYPE_INSTANCE_GET_PRIVATE((obj), GVIR_CONFIG_TYPE_DOMAIN_HOSTDEV, GVirConfigDomainHostdevPrivate))
+
+struct _GVirConfigDomainHostdevPrivate
+{
+ gboolean unused;
+};
+
+G_DEFINE_ABSTRACT_TYPE(GVirConfigDomainHostdev, gvir_config_domain_hostdev, GVIR_CONFIG_TYPE_DOMAIN_DEVICE);
+
+
+static void gvir_config_domain_hostdev_class_init(GVirConfigDomainHostdevClass *klass)
+{
+ g_type_class_add_private(klass, sizeof(GVirConfigDomainHostdevPrivate));
+}
+
+
+static void gvir_config_domain_hostdev_init(GVirConfigDomainHostdev *hostdev)
+{
+ hostdev->priv = GVIR_CONFIG_DOMAIN_HOSTDEV_GET_PRIVATE(hostdev);
+}
+
+G_GNUC_INTERNAL GVirConfigDomainDevice *
+gvir_config_domain_hostdev_new_from_tree(GVirConfigXmlDoc *doc,
+ xmlNodePtr tree)
+{
+ const char *type;
+ GType gtype;
+
+ type = gvir_config_xml_get_attribute_content(tree, "type");
+ if (type == NULL)
+ return NULL;
+
+ if (g_str_equal(type, "usb")) {
+ goto unimplemented;
+ } else if (g_str_equal(type, "pci")) {
+ goto unimplemented;
+ } else if (g_str_equal(type, "scsi")) {
+ goto unimplemented;
+ } else {
+ g_debug("Unknown domain hostdev node: %s", type);
+ return NULL;
+ }
+
+ return GVIR_CONFIG_DOMAIN_DEVICE(gvir_config_object_new_from_tree(gtype, doc, NULL, tree));
+
+unimplemented:
+ g_debug("Parsing of '%s' domain hostdev nodes is unimplemented", type);
+ return NULL;
+}
+
+void gvir_config_domain_hostdev_set_boot_order(GVirConfigDomainHostdev *hostdev,
+ gint order)
+{
+ g_return_if_fail(GVIR_CONFIG_IS_DOMAIN_HOSTDEV(hostdev));
+
+ if (order >= 0) {
+ char *order_str = g_strdup_printf("%u", order);
+
+ gvir_config_object_replace_child_with_attribute(GVIR_CONFIG_OBJECT(hostdev),
+ "boot",
+ "order",
+ order_str);
+ g_free(order_str);
+ } else {
+ gvir_config_object_delete_child(GVIR_CONFIG_OBJECT(hostdev),
+ "boot",
+ NULL);
+ }
+}
+
+gint gvir_config_domain_hostdev_get_boot_order(GVirConfigDomainHostdev *hostdev)
+{
+ xmlNodePtr hostdev_node;
+ xmlNodePtr boot_node;
+ const char *order_str;
+ char *end;
+ guint order;
+
+ g_return_val_if_fail(GVIR_CONFIG_IS_DOMAIN_HOSTDEV(hostdev), -1);
+
+ hostdev_node = gvir_config_object_get_xml_node(GVIR_CONFIG_OBJECT(hostdev));
+ g_return_val_if_fail(hostdev_node != NULL, -1);
+
+ boot_node = gvir_config_xml_get_element(hostdev_node, "boot", NULL);
+ if (boot_node == NULL)
+ return -1;
+
+ order_str = gvir_config_xml_get_attribute_content(boot_node, "order");
+ g_return_val_if_fail(order_str != NULL, -1);
+
+ order = strtoul(order_str, &end, 0);
+ g_return_val_if_fail(*end == '\0', -1);
+
+ return order;
+}
+
+void gvir_config_domain_hostdev_set_readonly(GVirConfigDomainHostdev *hostdev,
+ gboolean readonly)
+{
+ g_return_if_fail(GVIR_CONFIG_IS_DOMAIN_HOSTDEV(hostdev));
+
+ if (readonly) {
+ GVirConfigObject *node = gvir_config_object_replace_child(GVIR_CONFIG_OBJECT(hostdev), "readonly");
+ g_object_unref(node);
+ } else {
+ gvir_config_object_delete_child(GVIR_CONFIG_OBJECT(hostdev), "readonly", NULL);
+ }
+}
+
+gboolean gvir_config_domain_hostdev_get_readonly(GVirConfigDomainHostdev *hostdev)
+{
+ xmlNodePtr hostdev_node;
+ xmlNodePtr ro_node;
+
+ g_return_val_if_fail(GVIR_CONFIG_IS_DOMAIN_HOSTDEV(hostdev), FALSE);
+
+ hostdev_node = gvir_config_object_get_xml_node(GVIR_CONFIG_OBJECT(hostdev));
+ g_return_val_if_fail(hostdev_node != NULL, FALSE);
+
+ ro_node = gvir_config_xml_get_element(hostdev_node, "readonly", NULL);
+
+ return (ro_node != NULL);
+}
+
+void gvir_config_domain_hostdev_set_shareable(GVirConfigDomainHostdev *hostdev,
+ gboolean shareable)
+{
+ g_return_if_fail(GVIR_CONFIG_IS_DOMAIN_HOSTDEV(hostdev));
+
+ if (shareable) {
+ GVirConfigObject *node = gvir_config_object_replace_child(GVIR_CONFIG_OBJECT(hostdev), "shareable");
+ g_object_unref(node);
+ } else {
+ gvir_config_object_delete_child(GVIR_CONFIG_OBJECT(hostdev), "shareable", NULL);
+ }
+}
+
+gboolean gvir_config_domain_hostdev_get_shareable(GVirConfigDomainHostdev *hostdev)
+{
+ xmlNodePtr hostdev_node;
+ xmlNodePtr shareable_node;
+
+ g_return_val_if_fail(GVIR_CONFIG_IS_DOMAIN_HOSTDEV(hostdev), FALSE);
+
+ hostdev_node = gvir_config_object_get_xml_node(GVIR_CONFIG_OBJECT(hostdev));
+ g_return_val_if_fail(hostdev_node != NULL, FALSE);
+
+ shareable_node = gvir_config_xml_get_element(hostdev_node, "shareable", NULL);
+
+ return (shareable_node != NULL);
+}
diff --git a/libvirt-gconfig/libvirt-gconfig-domain-hostdev.h b/libvirt-gconfig/libvirt-gconfig-domain-hostdev.h
new file mode 100644
index 0000000..b26100f
--- /dev/null
+++ b/libvirt-gconfig/libvirt-gconfig-domain-hostdev.h
@@ -0,0 +1,76 @@
+/*
+ * libvirt-gconfig-domain-hostdev.h: libvirt domain hostdev configuration
+ *
+ * Copyright (C) 2012 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see
+ * <http://www.gnu.org/licenses/>.
+ *
+ * Authors: Zeeshan Ali (Khattak) <zeeshanak(a)gnome.org>
+ * Christophe Fergeau <cfergeau(a)redhat.com>
+ */
+
+#if !defined(__LIBVIRT_GCONFIG_H__) && !defined(LIBVIRT_GCONFIG_BUILD)
+#error "Only <libvirt-gconfig/libvirt-gconfig.h> can be included directly."
+#endif
+
+#ifndef __LIBVIRT_GCONFIG_DOMAIN_HOSTDEV_H__
+#define __LIBVIRT_GCONFIG_DOMAIN_HOSTDEV_H__
+
+G_BEGIN_DECLS
+
+#define GVIR_CONFIG_TYPE_DOMAIN_HOSTDEV (gvir_config_domain_hostdev_get_type ())
+#define GVIR_CONFIG_DOMAIN_HOSTDEV(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GVIR_CONFIG_TYPE_DOMAIN_HOSTDEV, GVirConfigDomainHostdev))
+#define GVIR_CONFIG_DOMAIN_HOSTDEV_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GVIR_CONFIG_TYPE_DOMAIN_HOSTDEV, GVirConfigDomainHostdevClass))
+#define GVIR_CONFIG_IS_DOMAIN_HOSTDEV(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GVIR_CONFIG_TYPE_DOMAIN_HOSTDEV))
+#define GVIR_CONFIG_IS_DOMAIN_HOSTDEV_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GVIR_CONFIG_TYPE_DOMAIN_HOSTDEV))
+#define GVIR_CONFIG_DOMAIN_HOSTDEV_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GVIR_CONFIG_TYPE_DOMAIN_HOSTDEV, GVirConfigDomainHostdevClass))
+
+typedef struct _GVirConfigDomainHostdev GVirConfigDomainHostdev;
+typedef struct _GVirConfigDomainHostdevPrivate GVirConfigDomainHostdevPrivate;
+typedef struct _GVirConfigDomainHostdevClass GVirConfigDomainHostdevClass;
+
+struct _GVirConfigDomainHostdev
+{
+ GVirConfigDomainDevice parent;
+
+ GVirConfigDomainHostdevPrivate *priv;
+
+ /* Do not add fields to this struct */
+};
+
+struct _GVirConfigDomainHostdevClass
+{
+ GVirConfigDomainDeviceClass parent_class;
+
+ gpointer padding[20];
+};
+
+GType gvir_config_domain_hostdev_get_type(void);
+
+void gvir_config_domain_hostdev_set_boot_order(GVirConfigDomainHostdev *hostdev,
+ gint order);
+gint gvir_config_domain_hostdev_get_boot_order(GVirConfigDomainHostdev *hostdev);
+
+void gvir_config_domain_hostdev_set_readonly(GVirConfigDomainHostdev *hostdev,
+ gboolean readonly);
+gboolean gvir_config_domain_hostdev_get_readonly(GVirConfigDomainHostdev *hostdev);
+
+void gvir_config_domain_hostdev_set_shareable(GVirConfigDomainHostdev *hostdev,
+ gboolean shareable);
+gboolean gvir_config_domain_hostdev_get_shareable(GVirConfigDomainHostdev *hostdev);
+
+G_END_DECLS
+
+#endif /* __LIBVIRT_GCONFIG_DOMAIN_HOSTDEV_H__ */
diff --git a/libvirt-gconfig/libvirt-gconfig.h b/libvirt-gconfig/libvirt-gconfig.h
index 4624003..cfa9dd3 100644
--- a/libvirt-gconfig/libvirt-gconfig.h
+++ b/libvirt-gconfig/libvirt-gconfig.h
@@ -67,6 +67,7 @@
#include <libvirt-gconfig/libvirt-gconfig-domain-graphics-sdl.h>
#include <libvirt-gconfig/libvirt-gconfig-domain-graphics-spice.h>
#include <libvirt-gconfig/libvirt-gconfig-domain-graphics-vnc.h>
+#include <libvirt-gconfig/libvirt-gconfig-domain-hostdev.h>
#include <libvirt-gconfig/libvirt-gconfig-domain-input.h>
#include <libvirt-gconfig/libvirt-gconfig-domain-interface.h>
#include <libvirt-gconfig/libvirt-gconfig-domain-interface-bridge.h>
diff --git a/libvirt-gconfig/libvirt-gconfig.sym b/libvirt-gconfig/libvirt-gconfig.sym
index 89dd589..0a12ce4 100644
--- a/libvirt-gconfig/libvirt-gconfig.sym
+++ b/libvirt-gconfig/libvirt-gconfig.sym
@@ -733,4 +733,15 @@ global:
gvir_config_domain_video_set_vgamem;
} LIBVIRT_GCONFIG_0.2.1;
+LIBVIRT_GCONFIG_0.2.3 {
+global:
+ gvir_config_domain_hostdev_get_boot_order;
+ gvir_config_domain_hostdev_get_readonly;
+ gvir_config_domain_hostdev_get_shareable;
+ gvir_config_domain_hostdev_get_type;
+ gvir_config_domain_hostdev_set_boot_order;
+ gvir_config_domain_hostdev_set_readonly;
+ gvir_config_domain_hostdev_set_shareable;
+} LIBVIRT_GCONFIG_0.2.2;
+
# .... define new API here using predicted next version number ....
--
2.5.0
9 years, 2 months