[PATCH 2/3] tests: change qemuxml2argv pseries tests to TEST_CAPS_LATEST

Daniel Henrique Barboza danielhb413 at gmail.com
Mon Sep 19 16:39:48 UTC 2022


Eliminate most of the pseries tests that are using explicit qemu caps
instead of CAPS_LATEST. The remaining tests will be handled in the next
patch.

The changes made are trivial: rename the .args/.err files to
ppc64-latest.(args/err) and do the required changes to match the newest
capabilities.

A notable expection were tests pseries-console-native,
pseries-serial-compat and pseries-serial+console-native. These are
aliases of the pseries-serial-native tests.  In this case we needed to
re-create the symlink accordingly.

Signed-off-by: Daniel Henrique Barboza <danielhb413 at gmail.com>
---
 ...s.args => pseries-basic.ppc64-latest.args} |  11 +-
 .../pseries-console-native.args               |   1 -
 .../pseries-console-native.ppc64-latest.args  |   1 +
 ... pseries-console-virtio.ppc64-latest.args} |  11 +-
 ...s => pseries-cpu-compat.ppc64-latest.args} |  10 +-
 ...gs => pseries-cpu-exact.ppc64-latest.args} |  10 +-
 ....args => pseries-cpu-le.ppc64-latest.args} |  11 +-
 ...es-default-phb-numa-node.ppc64-latest.err} |   0
 ...rgs => pseries-features.ppc64-latest.args} |   7 +-
 .../pseries-hostdevs-1.ppc64-latest.args      |  36 +++++
 .../pseries-hostdevs-2.ppc64-latest.args      |  36 +++++
 .../qemuxml2argvdata/pseries-hostdevs-3.args  |  32 ----
 .../pseries-hostdevs-3.ppc64-latest.args      |  35 +++++
 .../pseries-many-buses-1.args                 |  30 ----
 ...=> pseries-many-buses-1.ppc64-latest.args} |  14 +-
 .../pseries-many-buses-2.args                 |  30 ----
 ...=> pseries-many-buses-2.ppc64-latest.args} |  14 +-
 .../pseries-many-devices.args                 |  61 --------
 .../pseries-many-devices.ppc64-latest.args    |  64 ++++++++
 ...m.args => pseries-nvram.ppc64-latest.args} |   9 +-
 ...=> pseries-panic-address.ppc64-latest.err} |   0
 .../pseries-panic-missing.ppc64-latest.args   |  34 +++++
 ...pseries-panic-no-address.ppc64-latest.args |  34 +++++
 .../pseries-phb-default-missing.args          |  30 ----
 ...ies-phb-default-missing.ppc64-latest.args} |  12 +-
 ...> pseries-phb-numa-node.ppc64-latest.args} |  16 +-
 .../qemuxml2argvdata/pseries-phb-simple.args  |  30 ----
 ...s => pseries-phb-simple.ppc64-latest.args} |  12 +-
 .../pseries-serial+console-native.args        |   1 -
 ...es-serial+console-native.ppc64-latest.args |   1 +
 .../pseries-serial-compat.args                |   1 -
 .../pseries-serial-compat.ppc64-latest.args   |   1 +
 ...> pseries-serial-native.ppc64-latest.args} |   9 +-
 ...s => pseries-serial-pci.ppc64-latest.args} |   9 +-
 ...s => pseries-serial-usb.ppc64-latest.args} |  11 +-
 .../qemuxml2argvdata/pseries-usb-default.args |  31 ----
 .../pseries-usb-default.ppc64-latest.args     |  34 +++++
 tests/qemuxml2argvdata/pseries-usb-kbd.args   |  32 ----
 .../pseries-usb-kbd.ppc64-latest.args         |  35 +++++
 tests/qemuxml2argvdata/pseries-usb-multi.args |  32 ----
 .../pseries-usb-multi.ppc64-latest.args       |  35 +++++
 ...eries-vio-user-assigned.ppc64-latest.args} |  19 ++-
 ...ned.args => pseries-vio.ppc64-latest.args} |  19 ++-
 tests/qemuxml2argvtest.c                      | 144 +++++-------------
 44 files changed, 502 insertions(+), 503 deletions(-)
 rename tests/qemuxml2argvdata/{pseries-panic-no-address.args => pseries-basic.ppc64-latest.args} (58%)
 delete mode 120000 tests/qemuxml2argvdata/pseries-console-native.args
 create mode 120000 tests/qemuxml2argvdata/pseries-console-native.ppc64-latest.args
 rename tests/qemuxml2argvdata/{pseries-console-virtio.args => pseries-console-virtio.ppc64-latest.args} (57%)
 rename tests/qemuxml2argvdata/{pseries-cpu-compat.args => pseries-cpu-compat.ppc64-latest.args} (58%)
 rename tests/qemuxml2argvdata/{pseries-cpu-exact.args => pseries-cpu-exact.ppc64-latest.args} (59%)
 rename tests/qemuxml2argvdata/{pseries-cpu-le.args => pseries-cpu-le.ppc64-latest.args} (58%)
 rename tests/qemuxml2argvdata/{pseries-default-phb-numa-node.err => pseries-default-phb-numa-node.ppc64-latest.err} (100%)
 rename tests/qemuxml2argvdata/{pseries-features.args => pseries-features.ppc64-latest.args} (68%)
 create mode 100644 tests/qemuxml2argvdata/pseries-hostdevs-1.ppc64-latest.args
 create mode 100644 tests/qemuxml2argvdata/pseries-hostdevs-2.ppc64-latest.args
 delete mode 100644 tests/qemuxml2argvdata/pseries-hostdevs-3.args
 create mode 100644 tests/qemuxml2argvdata/pseries-hostdevs-3.ppc64-latest.args
 delete mode 100644 tests/qemuxml2argvdata/pseries-many-buses-1.args
 rename tests/qemuxml2argvdata/{pseries-hostdevs-2.args => pseries-many-buses-1.ppc64-latest.args} (57%)
 delete mode 100644 tests/qemuxml2argvdata/pseries-many-buses-2.args
 rename tests/qemuxml2argvdata/{pseries-hostdevs-1.args => pseries-many-buses-2.ppc64-latest.args} (58%)
 delete mode 100644 tests/qemuxml2argvdata/pseries-many-devices.args
 create mode 100644 tests/qemuxml2argvdata/pseries-many-devices.ppc64-latest.args
 rename tests/qemuxml2argvdata/{pseries-nvram.args => pseries-nvram.ppc64-latest.args} (63%)
 rename tests/qemuxml2argvdata/{pseries-panic-address.err => pseries-panic-address.ppc64-latest.err} (100%)
 create mode 100644 tests/qemuxml2argvdata/pseries-panic-missing.ppc64-latest.args
 create mode 100644 tests/qemuxml2argvdata/pseries-panic-no-address.ppc64-latest.args
 delete mode 100644 tests/qemuxml2argvdata/pseries-phb-default-missing.args
 rename tests/qemuxml2argvdata/{pseries-basic.args => pseries-phb-default-missing.ppc64-latest.args} (58%)
 rename tests/qemuxml2argvdata/{pseries-phb-numa-node.args => pseries-phb-numa-node.ppc64-latest.args} (53%)
 delete mode 100644 tests/qemuxml2argvdata/pseries-phb-simple.args
 rename tests/qemuxml2argvdata/{pseries-panic-missing.args => pseries-phb-simple.ppc64-latest.args} (58%)
 delete mode 120000 tests/qemuxml2argvdata/pseries-serial+console-native.args
 create mode 120000 tests/qemuxml2argvdata/pseries-serial+console-native.ppc64-latest.args
 delete mode 120000 tests/qemuxml2argvdata/pseries-serial-compat.args
 create mode 120000 tests/qemuxml2argvdata/pseries-serial-compat.ppc64-latest.args
 rename tests/qemuxml2argvdata/{pseries-serial-native.args => pseries-serial-native.ppc64-latest.args} (61%)
 rename tests/qemuxml2argvdata/{pseries-serial-pci.args => pseries-serial-pci.ppc64-latest.args} (60%)
 rename tests/qemuxml2argvdata/{pseries-serial-usb.args => pseries-serial-usb.ppc64-latest.args} (57%)
 delete mode 100644 tests/qemuxml2argvdata/pseries-usb-default.args
 create mode 100644 tests/qemuxml2argvdata/pseries-usb-default.ppc64-latest.args
 delete mode 100644 tests/qemuxml2argvdata/pseries-usb-kbd.args
 create mode 100644 tests/qemuxml2argvdata/pseries-usb-kbd.ppc64-latest.args
 delete mode 100644 tests/qemuxml2argvdata/pseries-usb-multi.args
 create mode 100644 tests/qemuxml2argvdata/pseries-usb-multi.ppc64-latest.args
 rename tests/qemuxml2argvdata/{pseries-vio.args => pseries-vio-user-assigned.ppc64-latest.args} (52%)
 rename tests/qemuxml2argvdata/{pseries-vio-user-assigned.args => pseries-vio.ppc64-latest.args} (52%)

diff --git a/tests/qemuxml2argvdata/pseries-panic-no-address.args b/tests/qemuxml2argvdata/pseries-basic.ppc64-latest.args
similarity index 58%
rename from tests/qemuxml2argvdata/pseries-panic-no-address.args
rename to tests/qemuxml2argvdata/pseries-basic.ppc64-latest.args
index 67f927a1fa..6960c88a25 100644
--- a/tests/qemuxml2argvdata/pseries-panic-no-address.args
+++ b/tests/qemuxml2argvdata/pseries-basic.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=QEMUGuest1,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
@@ -24,8 +26,9 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--usb \
+-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \
 -chardev pty,id=charserial0 \
--device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \
+-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-console-native.args b/tests/qemuxml2argvdata/pseries-console-native.args
deleted file mode 120000
index 1c09cf2102..0000000000
--- a/tests/qemuxml2argvdata/pseries-console-native.args
+++ /dev/null
@@ -1 +0,0 @@
-pseries-serial-native.args
\ No newline at end of file
diff --git a/tests/qemuxml2argvdata/pseries-console-native.ppc64-latest.args b/tests/qemuxml2argvdata/pseries-console-native.ppc64-latest.args
new file mode 120000
index 0000000000..c3b96bc117
--- /dev/null
+++ b/tests/qemuxml2argvdata/pseries-console-native.ppc64-latest.args
@@ -0,0 +1 @@
+pseries-serial-native.ppc64-latest.args
\ No newline at end of file
diff --git a/tests/qemuxml2argvdata/pseries-console-virtio.args b/tests/qemuxml2argvdata/pseries-console-virtio.ppc64-latest.args
similarity index 57%
rename from tests/qemuxml2argvdata/pseries-console-virtio.args
rename to tests/qemuxml2argvdata/pseries-console-virtio.ppc64-latest.args
index 2e9d1bd831..83fe2990b3 100644
--- a/tests/qemuxml2argvdata/pseries-console-virtio.args
+++ b/tests/qemuxml2argvdata/pseries-console-virtio.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=guest,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-guest/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-guest/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
@@ -24,8 +26,9 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x1 \
+-device '{"driver":"virtio-serial-pci","id":"virtio-serial0","bus":"pci.0","addr":"0x1"}' \
 -chardev pty,id=charconsole0 \
--device virtconsole,chardev=charconsole0,id=console0 \
+-device '{"driver":"virtconsole","chardev":"charconsole0","id":"console0"}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-cpu-compat.args b/tests/qemuxml2argvdata/pseries-cpu-compat.ppc64-latest.args
similarity index 58%
rename from tests/qemuxml2argvdata/pseries-cpu-compat.args
rename to tests/qemuxml2argvdata/pseries-cpu-compat.ppc64-latest.args
index 5e35726566..58533c751f 100644
--- a/tests/qemuxml2argvdata/pseries-cpu-compat.args
+++ b/tests/qemuxml2argvdata/pseries-cpu-compat.ppc64-latest.args
@@ -9,11 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=QEMUGuest1,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off,max-cpu-compat=power7 \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram,max-cpu-compat=power7 \
 -accel kvm \
 -cpu host \
 -m 256 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":268435456}' \
 -overcommit mem-lock=off \
 -smp 4,sockets=4,cores=1,threads=1 \
 -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
@@ -25,8 +26,9 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--usb \
+-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \
 -chardev pty,id=charserial0 \
--device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \
+-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-cpu-exact.args b/tests/qemuxml2argvdata/pseries-cpu-exact.ppc64-latest.args
similarity index 59%
rename from tests/qemuxml2argvdata/pseries-cpu-exact.args
rename to tests/qemuxml2argvdata/pseries-cpu-exact.ppc64-latest.args
index 6059c5a31c..4f6cf05658 100644
--- a/tests/qemuxml2argvdata/pseries-cpu-exact.args
+++ b/tests/qemuxml2argvdata/pseries-cpu-exact.ppc64-latest.args
@@ -9,11 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=QEMUGuest1,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
 -cpu POWER7 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
@@ -25,8 +26,9 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--usb \
+-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \
 -chardev pty,id=charserial0 \
--device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \
+-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-cpu-le.args b/tests/qemuxml2argvdata/pseries-cpu-le.ppc64-latest.args
similarity index 58%
rename from tests/qemuxml2argvdata/pseries-cpu-le.args
rename to tests/qemuxml2argvdata/pseries-cpu-le.ppc64-latest.args
index 667264ac82..d28f7392ce 100644
--- a/tests/qemuxml2argvdata/pseries-cpu-le.args
+++ b/tests/qemuxml2argvdata/pseries-cpu-le.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=QEMUGuest1,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel kvm \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
@@ -24,8 +26,9 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--usb \
+-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \
 -chardev pty,id=charserial0 \
--device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \
+-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-default-phb-numa-node.err b/tests/qemuxml2argvdata/pseries-default-phb-numa-node.ppc64-latest.err
similarity index 100%
rename from tests/qemuxml2argvdata/pseries-default-phb-numa-node.err
rename to tests/qemuxml2argvdata/pseries-default-phb-numa-node.ppc64-latest.err
diff --git a/tests/qemuxml2argvdata/pseries-features.args b/tests/qemuxml2argvdata/pseries-features.ppc64-latest.args
similarity index 68%
rename from tests/qemuxml2argvdata/pseries-features.args
rename to tests/qemuxml2argvdata/pseries-features.ppc64-latest.args
index 427feaa808..ee6473410a 100644
--- a/tests/qemuxml2argvdata/pseries-features.args
+++ b/tests/qemuxml2argvdata/pseries-features.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=guest,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-guest/master-key.aes \
--machine pseries,usb=off,resize-hpt=required,cap-hpt-max-page-size=1048576k,cap-htm=on,cap-nested-hv=off,cap-ccf-assist=on,cap-cfpc=fixed,cap-sbbc=broken,cap-ibs=fixed-ccd,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-guest/master-key.aes"}' \
+-machine pseries,usb=off,resize-hpt=required,cap-hpt-max-page-size=1048576k,cap-htm=on,cap-nested-hv=off,cap-ccf-assist=on,cap-cfpc=fixed,cap-sbbc=broken,cap-ibs=fixed-ccd,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
@@ -25,4 +27,5 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 -no-shutdown \
 -boot strict=on \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-hostdevs-1.ppc64-latest.args b/tests/qemuxml2argvdata/pseries-hostdevs-1.ppc64-latest.args
new file mode 100644
index 0000000000..810379f1b9
--- /dev/null
+++ b/tests/qemuxml2argvdata/pseries-hostdevs-1.ppc64-latest.args
@@ -0,0 +1,36 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-guest \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-guest/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-guest/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
+/usr/bin/qemu-system-ppc64 \
+-name guest=guest,debug-threads=on \
+-S \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-guest/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
+-accel tcg \
+-cpu POWER9 \
+-m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-boot strict=on \
+-device '{"driver":"spapr-pci-host-bridge","index":1,"id":"pci.1"}' \
+-device '{"driver":"spapr-pci-host-bridge","index":2,"id":"pci.2"}' \
+-audiodev '{"id":"audio1","driver":"none"}' \
+-device '{"driver":"vfio-pci","host":"0005:90:01.0","id":"hostdev0","bus":"pci.1.0","addr":"0x1"}' \
+-device '{"driver":"vfio-pci","host":"0001:01:00.0","id":"hostdev1","bus":"pci.2.0","addr":"0x1"}' \
+-device '{"driver":"vfio-pci","host":"0001:01:00.1","id":"hostdev2","bus":"pci.2.0","addr":"0x2"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-hostdevs-2.ppc64-latest.args b/tests/qemuxml2argvdata/pseries-hostdevs-2.ppc64-latest.args
new file mode 100644
index 0000000000..bd5ffe5c54
--- /dev/null
+++ b/tests/qemuxml2argvdata/pseries-hostdevs-2.ppc64-latest.args
@@ -0,0 +1,36 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-guest \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-guest/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-guest/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
+/usr/bin/qemu-system-ppc64 \
+-name guest=guest,debug-threads=on \
+-S \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-guest/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
+-accel tcg \
+-cpu POWER9 \
+-m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-boot strict=on \
+-device '{"driver":"spapr-pci-host-bridge","index":1,"id":"pci.1"}' \
+-device '{"driver":"spapr-pci-host-bridge","index":2,"id":"pci.2"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi0","bus":"pci.1.0","addr":"0x1"}' \
+-audiodev '{"id":"audio1","driver":"none"}' \
+-device '{"driver":"vfio-pci","host":"0001:01:00.0","id":"hostdev0","bus":"pci.1.0","addr":"0x2"}' \
+-device '{"driver":"vfio-pci","host":"0005:90:01.0","id":"hostdev1","bus":"pci.2.0","addr":"0x1"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-hostdevs-3.args b/tests/qemuxml2argvdata/pseries-hostdevs-3.args
deleted file mode 100644
index c236d0b38f..0000000000
--- a/tests/qemuxml2argvdata/pseries-hostdevs-3.args
+++ /dev/null
@@ -1,32 +0,0 @@
-LC_ALL=C \
-PATH=/bin \
-HOME=/tmp/lib/domain--1-guest \
-USER=test \
-LOGNAME=test \
-XDG_DATA_HOME=/tmp/lib/domain--1-guest/.local/share \
-XDG_CACHE_HOME=/tmp/lib/domain--1-guest/.cache \
-XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
-/usr/bin/qemu-system-ppc64 \
--name guest=guest,debug-threads=on \
--S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-guest/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
--accel tcg \
--m 512 \
--overcommit mem-lock=off \
--smp 1,sockets=1,cores=1,threads=1 \
--uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
--display none \
--no-user-config \
--nodefaults \
--chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
--mon chardev=charmonitor,id=monitor,mode=control \
--rtc base=utc \
--no-shutdown \
--boot strict=on \
--device spapr-pci-host-bridge,index=1,id=pci.1 \
--device spapr-pci-host-bridge,index=2,id=pci.2 \
--audiodev '{"id":"audio1","driver":"none"}' \
--device vfio-pci,host=0001:01:00.0,id=hostdev0,bus=pci.2.0,addr=0x1 \
--device vfio-pci,host=0001:01:00.1,id=hostdev1,bus=pci.2.0,addr=0x2 \
--msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-hostdevs-3.ppc64-latest.args b/tests/qemuxml2argvdata/pseries-hostdevs-3.ppc64-latest.args
new file mode 100644
index 0000000000..dcc09f1435
--- /dev/null
+++ b/tests/qemuxml2argvdata/pseries-hostdevs-3.ppc64-latest.args
@@ -0,0 +1,35 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-guest \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-guest/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-guest/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
+/usr/bin/qemu-system-ppc64 \
+-name guest=guest,debug-threads=on \
+-S \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-guest/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
+-accel tcg \
+-cpu POWER9 \
+-m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-boot strict=on \
+-device '{"driver":"spapr-pci-host-bridge","index":1,"id":"pci.1"}' \
+-device '{"driver":"spapr-pci-host-bridge","index":2,"id":"pci.2"}' \
+-audiodev '{"id":"audio1","driver":"none"}' \
+-device '{"driver":"vfio-pci","host":"0001:01:00.0","id":"hostdev0","bus":"pci.2.0","addr":"0x1"}' \
+-device '{"driver":"vfio-pci","host":"0001:01:00.1","id":"hostdev1","bus":"pci.2.0","addr":"0x2"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-many-buses-1.args b/tests/qemuxml2argvdata/pseries-many-buses-1.args
deleted file mode 100644
index bbb7c90707..0000000000
--- a/tests/qemuxml2argvdata/pseries-many-buses-1.args
+++ /dev/null
@@ -1,30 +0,0 @@
-LC_ALL=C \
-PATH=/bin \
-HOME=/tmp/lib/domain--1-guest \
-USER=test \
-LOGNAME=test \
-XDG_DATA_HOME=/tmp/lib/domain--1-guest/.local/share \
-XDG_CACHE_HOME=/tmp/lib/domain--1-guest/.cache \
-XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
-/usr/bin/qemu-system-ppc64 \
--name guest=guest,debug-threads=on \
--S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-guest/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
--accel tcg \
--m 512 \
--overcommit mem-lock=off \
--smp 1,sockets=1,cores=1,threads=1 \
--uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
--display none \
--no-user-config \
--nodefaults \
--chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
--mon chardev=charmonitor,id=monitor,mode=control \
--rtc base=utc \
--no-shutdown \
--boot strict=on \
--device spapr-pci-host-bridge,index=1,id=pci.1 \
--device virtio-scsi-pci,id=scsi0,bus=pci.1.0,addr=0x1 \
--audiodev '{"id":"audio1","driver":"none"}' \
--msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-hostdevs-2.args b/tests/qemuxml2argvdata/pseries-many-buses-1.ppc64-latest.args
similarity index 57%
rename from tests/qemuxml2argvdata/pseries-hostdevs-2.args
rename to tests/qemuxml2argvdata/pseries-many-buses-1.ppc64-latest.args
index fca68ff76a..e9ef6944fd 100644
--- a/tests/qemuxml2argvdata/pseries-hostdevs-2.args
+++ b/tests/qemuxml2argvdata/pseries-many-buses-1.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=guest,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-guest/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-guest/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
@@ -24,10 +26,8 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--device spapr-pci-host-bridge,index=1,id=pci.1 \
--device spapr-pci-host-bridge,index=2,id=pci.2 \
--device virtio-scsi-pci,id=scsi0,bus=pci.1.0,addr=0x1 \
+-device '{"driver":"spapr-pci-host-bridge","index":1,"id":"pci.1"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi0","bus":"pci.1.0","addr":"0x1"}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
--device vfio-pci,host=0001:01:00.0,id=hostdev0,bus=pci.1.0,addr=0x2 \
--device vfio-pci,host=0005:90:01.0,id=hostdev1,bus=pci.2.0,addr=0x1 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-many-buses-2.args b/tests/qemuxml2argvdata/pseries-many-buses-2.args
deleted file mode 100644
index 961c62971c..0000000000
--- a/tests/qemuxml2argvdata/pseries-many-buses-2.args
+++ /dev/null
@@ -1,30 +0,0 @@
-LC_ALL=C \
-PATH=/bin \
-HOME=/tmp/lib/domain--1-guest \
-USER=test \
-LOGNAME=test \
-XDG_DATA_HOME=/tmp/lib/domain--1-guest/.local/share \
-XDG_CACHE_HOME=/tmp/lib/domain--1-guest/.cache \
-XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
-/usr/bin/qemu-system-ppc64 \
--name guest=guest,debug-threads=on \
--S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-guest/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
--accel tcg \
--m 512 \
--overcommit mem-lock=off \
--smp 1,sockets=1,cores=1,threads=1 \
--uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
--display none \
--no-user-config \
--nodefaults \
--chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
--mon chardev=charmonitor,id=monitor,mode=control \
--rtc base=utc \
--no-shutdown \
--boot strict=on \
--device spapr-pci-host-bridge,index=1,id=pci.2 \
--device spapr-pci-host-bridge,index=2,id=pci.1 \
--audiodev '{"id":"audio1","driver":"none"}' \
--msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-hostdevs-1.args b/tests/qemuxml2argvdata/pseries-many-buses-2.ppc64-latest.args
similarity index 58%
rename from tests/qemuxml2argvdata/pseries-hostdevs-1.args
rename to tests/qemuxml2argvdata/pseries-many-buses-2.ppc64-latest.args
index 3339187420..824abb3688 100644
--- a/tests/qemuxml2argvdata/pseries-hostdevs-1.args
+++ b/tests/qemuxml2argvdata/pseries-many-buses-2.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=guest,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-guest/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-guest/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
@@ -24,10 +26,8 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--device spapr-pci-host-bridge,index=1,id=pci.1 \
--device spapr-pci-host-bridge,index=2,id=pci.2 \
+-device '{"driver":"spapr-pci-host-bridge","index":1,"id":"pci.2"}' \
+-device '{"driver":"spapr-pci-host-bridge","index":2,"id":"pci.1"}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
--device vfio-pci,host=0005:90:01.0,id=hostdev0,bus=pci.1.0,addr=0x1 \
--device vfio-pci,host=0001:01:00.0,id=hostdev1,bus=pci.2.0,addr=0x1 \
--device vfio-pci,host=0001:01:00.1,id=hostdev2,bus=pci.2.0,addr=0x2 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-many-devices.args b/tests/qemuxml2argvdata/pseries-many-devices.args
deleted file mode 100644
index a108e44136..0000000000
--- a/tests/qemuxml2argvdata/pseries-many-devices.args
+++ /dev/null
@@ -1,61 +0,0 @@
-LC_ALL=C \
-PATH=/bin \
-HOME=/tmp/lib/domain--1-guest \
-USER=test \
-LOGNAME=test \
-XDG_DATA_HOME=/tmp/lib/domain--1-guest/.local/share \
-XDG_CACHE_HOME=/tmp/lib/domain--1-guest/.cache \
-XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
-/usr/bin/qemu-system-ppc64 \
--name guest=guest,debug-threads=on \
--S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-guest/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
--accel tcg \
--m 512 \
--overcommit mem-lock=off \
--smp 1,sockets=1,cores=1,threads=1 \
--uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
--display none \
--no-user-config \
--nodefaults \
--chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
--mon chardev=charmonitor,id=monitor,mode=control \
--rtc base=utc \
--no-shutdown \
--boot strict=on \
--device spapr-pci-host-bridge,index=1,id=pci.1 \
--device virtio-scsi-pci,id=scsi0,bus=pci.0,addr=0x1 \
--device virtio-scsi-pci,id=scsi1,bus=pci.0,addr=0x2 \
--device virtio-scsi-pci,id=scsi2,bus=pci.0,addr=0x3 \
--device virtio-scsi-pci,id=scsi3,bus=pci.0,addr=0x4 \
--device virtio-scsi-pci,id=scsi4,bus=pci.0,addr=0x5 \
--device virtio-scsi-pci,id=scsi5,bus=pci.0,addr=0x6 \
--device virtio-scsi-pci,id=scsi6,bus=pci.0,addr=0x7 \
--device virtio-scsi-pci,id=scsi7,bus=pci.0,addr=0x8 \
--device virtio-scsi-pci,id=scsi8,bus=pci.0,addr=0x9 \
--device virtio-scsi-pci,id=scsi9,bus=pci.0,addr=0xa \
--device virtio-scsi-pci,id=scsi10,bus=pci.0,addr=0xb \
--device virtio-scsi-pci,id=scsi11,bus=pci.0,addr=0xc \
--device virtio-scsi-pci,id=scsi12,bus=pci.0,addr=0xd \
--device virtio-scsi-pci,id=scsi13,bus=pci.0,addr=0xe \
--device virtio-scsi-pci,id=scsi14,bus=pci.0,addr=0xf \
--device virtio-scsi-pci,id=scsi15,bus=pci.0,addr=0x10 \
--device virtio-scsi-pci,id=scsi16,bus=pci.0,addr=0x11 \
--device virtio-scsi-pci,id=scsi17,bus=pci.0,addr=0x12 \
--device virtio-scsi-pci,id=scsi18,bus=pci.0,addr=0x13 \
--device virtio-scsi-pci,id=scsi19,bus=pci.0,addr=0x14 \
--device virtio-scsi-pci,id=scsi20,bus=pci.0,addr=0x15 \
--device virtio-scsi-pci,id=scsi21,bus=pci.0,addr=0x16 \
--device virtio-scsi-pci,id=scsi22,bus=pci.0,addr=0x17 \
--device virtio-scsi-pci,id=scsi23,bus=pci.0,addr=0x18 \
--device virtio-scsi-pci,id=scsi24,bus=pci.0,addr=0x19 \
--device virtio-scsi-pci,id=scsi25,bus=pci.0,addr=0x1a \
--device virtio-scsi-pci,id=scsi26,bus=pci.0,addr=0x1b \
--device virtio-scsi-pci,id=scsi27,bus=pci.0,addr=0x1c \
--device virtio-scsi-pci,id=scsi28,bus=pci.0,addr=0x1d \
--device virtio-scsi-pci,id=scsi29,bus=pci.0,addr=0x1e \
--device virtio-scsi-pci,id=scsi30,bus=pci.0,addr=0x1f \
--device virtio-scsi-pci,id=scsi31,bus=pci.1.0,addr=0x1 \
--audiodev '{"id":"audio1","driver":"none"}' \
--msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-many-devices.ppc64-latest.args b/tests/qemuxml2argvdata/pseries-many-devices.ppc64-latest.args
new file mode 100644
index 0000000000..584e39529f
--- /dev/null
+++ b/tests/qemuxml2argvdata/pseries-many-devices.ppc64-latest.args
@@ -0,0 +1,64 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-guest \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-guest/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-guest/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
+/usr/bin/qemu-system-ppc64 \
+-name guest=guest,debug-threads=on \
+-S \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-guest/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
+-accel tcg \
+-cpu POWER9 \
+-m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-boot strict=on \
+-device '{"driver":"spapr-pci-host-bridge","index":1,"id":"pci.1"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi0","bus":"pci.0","addr":"0x1"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi1","bus":"pci.0","addr":"0x2"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi2","bus":"pci.0","addr":"0x3"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi3","bus":"pci.0","addr":"0x4"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi4","bus":"pci.0","addr":"0x5"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi5","bus":"pci.0","addr":"0x6"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi6","bus":"pci.0","addr":"0x7"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi7","bus":"pci.0","addr":"0x8"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi8","bus":"pci.0","addr":"0x9"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi9","bus":"pci.0","addr":"0xa"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi10","bus":"pci.0","addr":"0xb"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi11","bus":"pci.0","addr":"0xc"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi12","bus":"pci.0","addr":"0xd"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi13","bus":"pci.0","addr":"0xe"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi14","bus":"pci.0","addr":"0xf"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi15","bus":"pci.0","addr":"0x10"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi16","bus":"pci.0","addr":"0x11"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi17","bus":"pci.0","addr":"0x12"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi18","bus":"pci.0","addr":"0x13"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi19","bus":"pci.0","addr":"0x14"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi20","bus":"pci.0","addr":"0x15"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi21","bus":"pci.0","addr":"0x16"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi22","bus":"pci.0","addr":"0x17"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi23","bus":"pci.0","addr":"0x18"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi24","bus":"pci.0","addr":"0x19"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi25","bus":"pci.0","addr":"0x1a"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi26","bus":"pci.0","addr":"0x1b"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi27","bus":"pci.0","addr":"0x1c"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi28","bus":"pci.0","addr":"0x1d"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi29","bus":"pci.0","addr":"0x1e"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi30","bus":"pci.0","addr":"0x1f"}' \
+-device '{"driver":"virtio-scsi-pci","id":"scsi31","bus":"pci.1.0","addr":"0x1"}' \
+-audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-nvram.args b/tests/qemuxml2argvdata/pseries-nvram.ppc64-latest.args
similarity index 63%
rename from tests/qemuxml2argvdata/pseries-nvram.args
rename to tests/qemuxml2argvdata/pseries-nvram.ppc64-latest.args
index f411777dc5..06e984c83e 100644
--- a/tests/qemuxml2argvdata/pseries-nvram.args
+++ b/tests/qemuxml2argvdata/pseries-nvram.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=QEMUGuest1,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
@@ -24,7 +26,8 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--usb \
+-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
 -global spapr-nvram.reg=0x4000 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-panic-address.err b/tests/qemuxml2argvdata/pseries-panic-address.ppc64-latest.err
similarity index 100%
rename from tests/qemuxml2argvdata/pseries-panic-address.err
rename to tests/qemuxml2argvdata/pseries-panic-address.ppc64-latest.err
diff --git a/tests/qemuxml2argvdata/pseries-panic-missing.ppc64-latest.args b/tests/qemuxml2argvdata/pseries-panic-missing.ppc64-latest.args
new file mode 100644
index 0000000000..6960c88a25
--- /dev/null
+++ b/tests/qemuxml2argvdata/pseries-panic-missing.ppc64-latest.args
@@ -0,0 +1,34 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-ppc64 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
+-accel tcg \
+-cpu POWER9 \
+-m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-boot strict=on \
+-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \
+-chardev pty,id=charserial0 \
+-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \
+-audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-panic-no-address.ppc64-latest.args b/tests/qemuxml2argvdata/pseries-panic-no-address.ppc64-latest.args
new file mode 100644
index 0000000000..6960c88a25
--- /dev/null
+++ b/tests/qemuxml2argvdata/pseries-panic-no-address.ppc64-latest.args
@@ -0,0 +1,34 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-ppc64 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
+-accel tcg \
+-cpu POWER9 \
+-m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-boot strict=on \
+-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \
+-chardev pty,id=charserial0 \
+-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \
+-audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-phb-default-missing.args b/tests/qemuxml2argvdata/pseries-phb-default-missing.args
deleted file mode 100644
index 6891512a31..0000000000
--- a/tests/qemuxml2argvdata/pseries-phb-default-missing.args
+++ /dev/null
@@ -1,30 +0,0 @@
-LC_ALL=C \
-PATH=/bin \
-HOME=/tmp/lib/domain--1-QEMUGuest1 \
-USER=test \
-LOGNAME=test \
-XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
-XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
-XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
-/usr/bin/qemu-system-ppc64 \
--name guest=QEMUGuest1,debug-threads=on \
--S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
--accel tcg \
--m 512 \
--overcommit mem-lock=off \
--smp 1,sockets=1,cores=1,threads=1 \
--uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
--display none \
--no-user-config \
--nodefaults \
--chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
--mon chardev=charmonitor,id=monitor,mode=control \
--rtc base=utc \
--no-shutdown \
--boot strict=on \
--device spapr-pci-host-bridge,index=1,id=pci.1 \
--device spapr-pci-host-bridge,index=2,id=pci.2 \
--audiodev '{"id":"audio1","driver":"none"}' \
--msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-basic.args b/tests/qemuxml2argvdata/pseries-phb-default-missing.ppc64-latest.args
similarity index 58%
rename from tests/qemuxml2argvdata/pseries-basic.args
rename to tests/qemuxml2argvdata/pseries-phb-default-missing.ppc64-latest.args
index 67f927a1fa..df93a3b79c 100644
--- a/tests/qemuxml2argvdata/pseries-basic.args
+++ b/tests/qemuxml2argvdata/pseries-phb-default-missing.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=QEMUGuest1,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
@@ -24,8 +26,8 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--usb \
--chardev pty,id=charserial0 \
--device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \
+-device '{"driver":"spapr-pci-host-bridge","index":1,"id":"pci.1"}' \
+-device '{"driver":"spapr-pci-host-bridge","index":2,"id":"pci.2"}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-phb-numa-node.args b/tests/qemuxml2argvdata/pseries-phb-numa-node.ppc64-latest.args
similarity index 53%
rename from tests/qemuxml2argvdata/pseries-phb-numa-node.args
rename to tests/qemuxml2argvdata/pseries-phb-numa-node.ppc64-latest.args
index 62d38ce2b6..c373f992ff 100644
--- a/tests/qemuxml2argvdata/pseries-phb-numa-node.args
+++ b/tests/qemuxml2argvdata/pseries-phb-numa-node.ppc64-latest.args
@@ -9,15 +9,16 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=QEMUGuest1,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
 -machine pseries,usb=off,dump-guest-core=off \
 -accel tcg \
+-cpu POWER9 \
 -m 2048 \
 -overcommit mem-lock=off \
--smp 8,sockets=2,cores=1,threads=4 \
--object memory-backend-ram,id=ram-node0,size=1073741824,host-nodes=1,policy=bind \
+-smp 8,sockets=2,dies=1,cores=1,threads=4 \
+-object '{"qom-type":"memory-backend-ram","id":"ram-node0","size":1073741824,"host-nodes":[1],"policy":"bind"}' \
 -numa node,nodeid=0,cpus=0-3,memdev=ram-node0 \
--object memory-backend-ram,id=ram-node1,size=1073741824,host-nodes=2,policy=bind \
+-object '{"qom-type":"memory-backend-ram","id":"ram-node1","size":1073741824,"host-nodes":[2],"policy":"bind"}' \
 -numa node,nodeid=1,cpus=4-7,memdev=ram-node1 \
 -uuid 87eedafe-eedc-4336-8130-ed9fe5dc90c8 \
 -display none \
@@ -28,8 +29,9 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--device spapr-pci-host-bridge,index=1,id=pci.1,numa_node=1 \
--device spapr-pci-host-bridge,index=2,id=pci.2 \
--device spapr-pci-host-bridge,index=3,id=pci.3,numa_node=0 \
+-device '{"driver":"spapr-pci-host-bridge","index":1,"id":"pci.1","numa_node":1}' \
+-device '{"driver":"spapr-pci-host-bridge","index":2,"id":"pci.2"}' \
+-device '{"driver":"spapr-pci-host-bridge","index":3,"id":"pci.3","numa_node":0}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-phb-simple.args b/tests/qemuxml2argvdata/pseries-phb-simple.args
deleted file mode 100644
index 6891512a31..0000000000
--- a/tests/qemuxml2argvdata/pseries-phb-simple.args
+++ /dev/null
@@ -1,30 +0,0 @@
-LC_ALL=C \
-PATH=/bin \
-HOME=/tmp/lib/domain--1-QEMUGuest1 \
-USER=test \
-LOGNAME=test \
-XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
-XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
-XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
-/usr/bin/qemu-system-ppc64 \
--name guest=QEMUGuest1,debug-threads=on \
--S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
--accel tcg \
--m 512 \
--overcommit mem-lock=off \
--smp 1,sockets=1,cores=1,threads=1 \
--uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
--display none \
--no-user-config \
--nodefaults \
--chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
--mon chardev=charmonitor,id=monitor,mode=control \
--rtc base=utc \
--no-shutdown \
--boot strict=on \
--device spapr-pci-host-bridge,index=1,id=pci.1 \
--device spapr-pci-host-bridge,index=2,id=pci.2 \
--audiodev '{"id":"audio1","driver":"none"}' \
--msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-panic-missing.args b/tests/qemuxml2argvdata/pseries-phb-simple.ppc64-latest.args
similarity index 58%
rename from tests/qemuxml2argvdata/pseries-panic-missing.args
rename to tests/qemuxml2argvdata/pseries-phb-simple.ppc64-latest.args
index 67f927a1fa..df93a3b79c 100644
--- a/tests/qemuxml2argvdata/pseries-panic-missing.args
+++ b/tests/qemuxml2argvdata/pseries-phb-simple.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=QEMUGuest1,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
@@ -24,8 +26,8 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--usb \
--chardev pty,id=charserial0 \
--device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \
+-device '{"driver":"spapr-pci-host-bridge","index":1,"id":"pci.1"}' \
+-device '{"driver":"spapr-pci-host-bridge","index":2,"id":"pci.2"}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-serial+console-native.args b/tests/qemuxml2argvdata/pseries-serial+console-native.args
deleted file mode 120000
index 1c09cf2102..0000000000
--- a/tests/qemuxml2argvdata/pseries-serial+console-native.args
+++ /dev/null
@@ -1 +0,0 @@
-pseries-serial-native.args
\ No newline at end of file
diff --git a/tests/qemuxml2argvdata/pseries-serial+console-native.ppc64-latest.args b/tests/qemuxml2argvdata/pseries-serial+console-native.ppc64-latest.args
new file mode 120000
index 0000000000..c3b96bc117
--- /dev/null
+++ b/tests/qemuxml2argvdata/pseries-serial+console-native.ppc64-latest.args
@@ -0,0 +1 @@
+pseries-serial-native.ppc64-latest.args
\ No newline at end of file
diff --git a/tests/qemuxml2argvdata/pseries-serial-compat.args b/tests/qemuxml2argvdata/pseries-serial-compat.args
deleted file mode 120000
index 1c09cf2102..0000000000
--- a/tests/qemuxml2argvdata/pseries-serial-compat.args
+++ /dev/null
@@ -1 +0,0 @@
-pseries-serial-native.args
\ No newline at end of file
diff --git a/tests/qemuxml2argvdata/pseries-serial-compat.ppc64-latest.args b/tests/qemuxml2argvdata/pseries-serial-compat.ppc64-latest.args
new file mode 120000
index 0000000000..c3b96bc117
--- /dev/null
+++ b/tests/qemuxml2argvdata/pseries-serial-compat.ppc64-latest.args
@@ -0,0 +1 @@
+pseries-serial-native.ppc64-latest.args
\ No newline at end of file
diff --git a/tests/qemuxml2argvdata/pseries-serial-native.args b/tests/qemuxml2argvdata/pseries-serial-native.ppc64-latest.args
similarity index 61%
rename from tests/qemuxml2argvdata/pseries-serial-native.args
rename to tests/qemuxml2argvdata/pseries-serial-native.ppc64-latest.args
index 1fb4b31dd2..12df0c8927 100644
--- a/tests/qemuxml2argvdata/pseries-serial-native.args
+++ b/tests/qemuxml2argvdata/pseries-serial-native.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=guest,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-guest/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-guest/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
@@ -25,6 +27,7 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 -no-shutdown \
 -boot strict=on \
 -chardev pty,id=charserial0 \
--device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \
+-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-serial-pci.args b/tests/qemuxml2argvdata/pseries-serial-pci.ppc64-latest.args
similarity index 60%
rename from tests/qemuxml2argvdata/pseries-serial-pci.args
rename to tests/qemuxml2argvdata/pseries-serial-pci.ppc64-latest.args
index 458970c329..33e51a4fd9 100644
--- a/tests/qemuxml2argvdata/pseries-serial-pci.args
+++ b/tests/qemuxml2argvdata/pseries-serial-pci.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=guest,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-guest/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-guest/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
@@ -25,6 +27,7 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 -no-shutdown \
 -boot strict=on \
 -chardev pty,id=charserial0 \
--device pci-serial,chardev=charserial0,id=serial0,bus=pci.0,addr=0x1 \
+-device '{"driver":"pci-serial","chardev":"charserial0","id":"serial0","bus":"pci.0","addr":"0x1"}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-serial-usb.args b/tests/qemuxml2argvdata/pseries-serial-usb.ppc64-latest.args
similarity index 57%
rename from tests/qemuxml2argvdata/pseries-serial-usb.args
rename to tests/qemuxml2argvdata/pseries-serial-usb.ppc64-latest.args
index e4c3ef54ec..c8f3bca3a4 100644
--- a/tests/qemuxml2argvdata/pseries-serial-usb.args
+++ b/tests/qemuxml2argvdata/pseries-serial-usb.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=guest,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-guest/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-guest/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
@@ -24,8 +26,9 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--device qemu-xhci,id=usb,bus=pci.0,addr=0x1 \
+-device '{"driver":"qemu-xhci","id":"usb","bus":"pci.0","addr":"0x1"}' \
 -chardev pty,id=charserial0 \
--device usb-serial,chardev=charserial0,id=serial0,bus=usb.0,port=1 \
+-device '{"driver":"usb-serial","chardev":"charserial0","id":"serial0","bus":"usb.0","port":"1"}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-usb-default.args b/tests/qemuxml2argvdata/pseries-usb-default.args
deleted file mode 100644
index c491eb69b2..0000000000
--- a/tests/qemuxml2argvdata/pseries-usb-default.args
+++ /dev/null
@@ -1,31 +0,0 @@
-LC_ALL=C \
-PATH=/bin \
-HOME=/tmp/lib/domain--1-QEMUGuest1 \
-USER=test \
-LOGNAME=test \
-XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
-XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
-XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
-/usr/bin/qemu-system-ppc64 \
--name guest=QEMUGuest1,debug-threads=on \
--S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
--accel tcg \
--m 512 \
--overcommit mem-lock=off \
--smp 1,sockets=1,cores=1,threads=1 \
--uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
--display none \
--no-user-config \
--nodefaults \
--chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
--mon chardev=charmonitor,id=monitor,mode=control \
--rtc base=utc \
--no-shutdown \
--boot strict=on \
--device pci-ohci,id=usb,bus=pci.0,addr=0x1 \
--chardev pty,id=charserial0 \
--device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \
--audiodev '{"id":"audio1","driver":"none"}' \
--msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-usb-default.ppc64-latest.args b/tests/qemuxml2argvdata/pseries-usb-default.ppc64-latest.args
new file mode 100644
index 0000000000..6960c88a25
--- /dev/null
+++ b/tests/qemuxml2argvdata/pseries-usb-default.ppc64-latest.args
@@ -0,0 +1,34 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-ppc64 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
+-accel tcg \
+-cpu POWER9 \
+-m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-boot strict=on \
+-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \
+-chardev pty,id=charserial0 \
+-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \
+-audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-usb-kbd.args b/tests/qemuxml2argvdata/pseries-usb-kbd.args
deleted file mode 100644
index 2a725806af..0000000000
--- a/tests/qemuxml2argvdata/pseries-usb-kbd.args
+++ /dev/null
@@ -1,32 +0,0 @@
-LC_ALL=C \
-PATH=/bin \
-HOME=/tmp/lib/domain--1-QEMUGuest1 \
-USER=test \
-LOGNAME=test \
-XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
-XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
-XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
-/usr/bin/qemu-system-ppc64 \
--name guest=QEMUGuest1,debug-threads=on \
--S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
--accel tcg \
--m 512 \
--overcommit mem-lock=off \
--smp 1,sockets=1,cores=1,threads=1 \
--uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
--display none \
--no-user-config \
--nodefaults \
--chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
--mon chardev=charmonitor,id=monitor,mode=control \
--rtc base=utc \
--no-shutdown \
--boot strict=on \
--device pci-ohci,id=usb,bus=pci.0,addr=0x1 \
--chardev pty,id=charserial0 \
--device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \
--device usb-kbd,id=input0,bus=usb.0,port=1 \
--audiodev '{"id":"audio1","driver":"none"}' \
--msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-usb-kbd.ppc64-latest.args b/tests/qemuxml2argvdata/pseries-usb-kbd.ppc64-latest.args
new file mode 100644
index 0000000000..ddb9300cd4
--- /dev/null
+++ b/tests/qemuxml2argvdata/pseries-usb-kbd.ppc64-latest.args
@@ -0,0 +1,35 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-ppc64 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
+-accel tcg \
+-cpu POWER9 \
+-m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-boot strict=on \
+-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \
+-chardev pty,id=charserial0 \
+-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \
+-device '{"driver":"usb-kbd","id":"input0","bus":"usb.0","port":"1"}' \
+-audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-usb-multi.args b/tests/qemuxml2argvdata/pseries-usb-multi.args
deleted file mode 100644
index ac122b6586..0000000000
--- a/tests/qemuxml2argvdata/pseries-usb-multi.args
+++ /dev/null
@@ -1,32 +0,0 @@
-LC_ALL=C \
-PATH=/bin \
-HOME=/tmp/lib/domain--1-QEMUGuest1 \
-USER=test \
-LOGNAME=test \
-XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
-XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
-XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
-/usr/bin/qemu-system-ppc64 \
--name guest=QEMUGuest1,debug-threads=on \
--S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
--accel tcg \
--m 512 \
--overcommit mem-lock=off \
--smp 1,sockets=1,cores=1,threads=1 \
--uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
--display none \
--no-user-config \
--nodefaults \
--chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
--mon chardev=charmonitor,id=monitor,mode=control \
--rtc base=utc \
--no-shutdown \
--boot strict=on \
--device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1 \
--device pci-ohci,id=usb1,bus=pci.0,addr=0x2 \
--chardev pty,id=charserial0 \
--device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \
--audiodev '{"id":"audio1","driver":"none"}' \
--msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-usb-multi.ppc64-latest.args b/tests/qemuxml2argvdata/pseries-usb-multi.ppc64-latest.args
new file mode 100644
index 0000000000..5c6f82a620
--- /dev/null
+++ b/tests/qemuxml2argvdata/pseries-usb-multi.ppc64-latest.args
@@ -0,0 +1,35 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-ppc64 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
+-accel tcg \
+-cpu POWER9 \
+-m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-boot strict=on \
+-device '{"driver":"piix3-usb-uhci","id":"usb","bus":"pci.0","addr":"0x1"}' \
+-device '{"driver":"pci-ohci","id":"usb1","bus":"pci.0","addr":"0x2"}' \
+-chardev pty,id=charserial0 \
+-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \
+-audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-vio.args b/tests/qemuxml2argvdata/pseries-vio-user-assigned.ppc64-latest.args
similarity index 52%
rename from tests/qemuxml2argvdata/pseries-vio.args
rename to tests/qemuxml2argvdata/pseries-vio-user-assigned.ppc64-latest.args
index f83d891682..3d95c3374b 100644
--- a/tests/qemuxml2argvdata/pseries-vio.args
+++ b/tests/qemuxml2argvdata/pseries-vio-user-assigned.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=QEMUGuest1,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 2754dd7b-ac8a-4850-aec0-1f3fcd43235b \
@@ -24,15 +26,16 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--device spapr-vscsi,id=scsi0,reg=8192 \
--device spapr-vscsi,id=scsi1,reg=12288 \
--usb \
+-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \
+-device '{"driver":"spapr-vscsi","id":"scsi0","reg":8192}' \
+-device '{"driver":"spapr-vscsi","id":"scsi1","reg":805306368}' \
 -blockdev '{"driver":"file","filename":"/tmp/scsidisk.img","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
 -blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"raw","file":"libvirt-1-storage"}' \
--device scsi-hd,bus=scsi1.0,channel=0,scsi-id=0,lun=0,device_id=drive-scsi1-0-0-0,drive=libvirt-1-format,id=scsi1-0-0-0,bootindex=1 \
+-device '{"driver":"scsi-hd","bus":"scsi1.0","channel":0,"scsi-id":0,"lun":0,"device_id":"drive-scsi1-0-0-0","drive":"libvirt-1-format","id":"scsi1-0-0-0","bootindex":1}' \
 -chardev pty,id=charserial0 \
--device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \
+-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":536870912}' \
 -chardev pty,id=charserial1 \
--device spapr-vty,chardev=charserial1,id=serial1,reg=805310464 \
+-device '{"driver":"spapr-vty","chardev":"charserial1","id":"serial1","reg":805310464}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvdata/pseries-vio-user-assigned.args b/tests/qemuxml2argvdata/pseries-vio.ppc64-latest.args
similarity index 52%
rename from tests/qemuxml2argvdata/pseries-vio-user-assigned.args
rename to tests/qemuxml2argvdata/pseries-vio.ppc64-latest.args
index 88ff276a4b..f6fecba1d8 100644
--- a/tests/qemuxml2argvdata/pseries-vio-user-assigned.args
+++ b/tests/qemuxml2argvdata/pseries-vio.ppc64-latest.args
@@ -9,10 +9,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 /usr/bin/qemu-system-ppc64 \
 -name guest=QEMUGuest1,debug-threads=on \
 -S \
--object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
--machine pseries,usb=off,dump-guest-core=off \
+-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
+-machine pseries,usb=off,dump-guest-core=off,memory-backend=ppc_spapr.ram \
 -accel tcg \
+-cpu POWER9 \
 -m 512 \
+-object '{"qom-type":"memory-backend-ram","id":"ppc_spapr.ram","size":536870912}' \
 -overcommit mem-lock=off \
 -smp 1,sockets=1,cores=1,threads=1 \
 -uuid 2754dd7b-ac8a-4850-aec0-1f3fcd43235b \
@@ -24,15 +26,16 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 -rtc base=utc \
 -no-shutdown \
 -boot strict=on \
--device spapr-vscsi,id=scsi0,reg=8192 \
--device spapr-vscsi,id=scsi1,reg=805306368 \
--usb \
+-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \
+-device '{"driver":"spapr-vscsi","id":"scsi0","reg":8192}' \
+-device '{"driver":"spapr-vscsi","id":"scsi1","reg":12288}' \
 -blockdev '{"driver":"file","filename":"/tmp/scsidisk.img","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
 -blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"raw","file":"libvirt-1-storage"}' \
--device scsi-hd,bus=scsi1.0,channel=0,scsi-id=0,lun=0,device_id=drive-scsi1-0-0-0,drive=libvirt-1-format,id=scsi1-0-0-0,bootindex=1 \
+-device '{"driver":"scsi-hd","bus":"scsi1.0","channel":0,"scsi-id":0,"lun":0,"device_id":"drive-scsi1-0-0-0","drive":"libvirt-1-format","id":"scsi1-0-0-0","bootindex":1}' \
 -chardev pty,id=charserial0 \
--device spapr-vty,chardev=charserial0,id=serial0,reg=536870912 \
+-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \
 -chardev pty,id=charserial1 \
--device spapr-vty,chardev=charserial1,id=serial1,reg=805310464 \
+-device '{"driver":"spapr-vty","chardev":"charserial1","id":"serial1","reg":805310464}' \
 -audiodev '{"id":"audio1","driver":"none"}' \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
 -msg timestamp=on
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
index b7c3bc0e2d..67b9ffb3e7 100644
--- a/tests/qemuxml2argvtest.c
+++ b/tests/qemuxml2argvtest.c
@@ -2122,45 +2122,20 @@ mymain(void)
     DO_TEST_PARSE_ERROR_NOCAPS("seclabel-multiple");
     DO_TEST_PARSE_ERROR_NOCAPS("seclabel-device-duplicates");
 
-    DO_TEST("pseries-basic",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY);
-    DO_TEST("pseries-vio",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY);
-    DO_TEST("pseries-usb-default",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY,
-            QEMU_CAPS_PIIX3_USB_UHCI,
-            QEMU_CAPS_PCI_OHCI);
-    DO_TEST("pseries-usb-multi",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY,
-            QEMU_CAPS_PIIX3_USB_UHCI,
-            QEMU_CAPS_PCI_OHCI);
-    DO_TEST("pseries-vio-user-assigned",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY);
-    DO_TEST_PARSE_ERROR_NOCAPS("pseries-vio-address-clash");
-    DO_TEST("pseries-nvram",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_NVRAM);
-    DO_TEST("pseries-usb-kbd", QEMU_CAPS_PCI_OHCI,
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_USB_KBD,
-            QEMU_CAPS_DEVICE_SPAPR_VTY);
-    DO_TEST("pseries-cpu-exact",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY);
+    DO_TEST_CAPS_LATEST_PPC64("pseries-basic");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-vio");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-usb-default");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-usb-multi");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-vio-user-assigned");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-nvram");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-usb-kbd");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-cpu-exact");
     DO_TEST_PARSE_ERROR_NOCAPS("pseries-no-parallel");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-cpu-le");
 
     qemuTestSetHostArch(&driver, VIR_ARCH_PPC64);
-    DO_TEST("pseries-cpu-compat", QEMU_CAPS_KVM,
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY);
-    DO_TEST("pseries-cpu-le", QEMU_CAPS_KVM,
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY);
+    DO_TEST_CAPS_LATEST_PPC64_HOSTCPU("pseries-cpu-compat",
+                                      QEMU_CPU_DEF_POWER9);
     DO_TEST_CAPS_LATEST_PPC64_HOSTCPU_FAILURE("pseries-cpu-compat-power9",
                                               QEMU_CPU_DEF_POWER8);
     DO_TEST_CAPS_LATEST_PPC64_HOSTCPU("pseries-cpu-compat-power9",
@@ -2172,64 +2147,27 @@ mymain(void)
 
     qemuTestSetHostArch(&driver, VIR_ARCH_NONE);
 
-    DO_TEST("pseries-panic-missing",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY);
-    DO_TEST("pseries-panic-no-address",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY);
-    DO_TEST_PARSE_ERROR("pseries-panic-address",
-                        QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE);
-
-    DO_TEST("pseries-phb-simple",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE);
-    DO_TEST("pseries-phb-default-missing",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE);
-    DO_TEST("pseries-phb-numa-node",
-            QEMU_CAPS_NUMA,
-            QEMU_CAPS_OBJECT_MEMORY_RAM,
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_SPAPR_PCI_HOST_BRIDGE_NUMA_NODE);
-    DO_TEST_PARSE_ERROR("pseries-default-phb-numa-node",
-                        QEMU_CAPS_NUMA,
-                        QEMU_CAPS_OBJECT_MEMORY_RAM,
-                        QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-                        QEMU_CAPS_SPAPR_PCI_HOST_BRIDGE_NUMA_NODE);
+    DO_TEST_CAPS_LATEST_PPC64("pseries-panic-missing");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-panic-no-address");
+    DO_TEST_CAPS_ARCH_LATEST_PARSE_ERROR("pseries-panic-address", "ppc64");
+
+    DO_TEST_CAPS_LATEST_PPC64("pseries-phb-simple");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-phb-default-missing");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-phb-numa-node");
+    DO_TEST_CAPS_ARCH_LATEST_PARSE_ERROR("pseries-default-phb-numa-node",
+                                         "ppc64");
     DO_TEST_PARSE_ERROR_NOCAPS("pseries-phb-invalid-target-index-1");
     DO_TEST_PARSE_ERROR_NOCAPS("pseries-phb-invalid-target-index-2");
     DO_TEST_PARSE_ERROR_NOCAPS("pseries-phb-invalid-target-index-3");
 
-    DO_TEST("pseries-many-devices",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_VIRTIO_SCSI);
-    DO_TEST("pseries-many-buses-1",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_VIRTIO_SCSI);
-    DO_TEST("pseries-many-buses-2",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_VIRTIO_SCSI);
-    DO_TEST("pseries-hostdevs-1",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_VIRTIO_SCSI,
-            QEMU_CAPS_DEVICE_VFIO_PCI);
-    DO_TEST("pseries-hostdevs-2",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_VIRTIO_SCSI,
-            QEMU_CAPS_DEVICE_VFIO_PCI);
-    DO_TEST("pseries-hostdevs-3",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_VIRTIO_SCSI,
-            QEMU_CAPS_DEVICE_VFIO_PCI);
+    DO_TEST_CAPS_LATEST_PPC64("pseries-many-devices");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-many-buses-1");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-many-buses-2");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-hostdevs-1");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-hostdevs-2");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-hostdevs-3");
 
-    DO_TEST("pseries-features",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_MACHINE_PSERIES_CAP_HPT_MAX_PAGE_SIZE,
-            QEMU_CAPS_MACHINE_PSERIES_CAP_HTM,
-            QEMU_CAPS_MACHINE_PSERIES_CAP_NESTED_HV,
-            QEMU_CAPS_MACHINE_PSERIES_CAP_CCF_ASSIST,
-            QEMU_CAPS_MACHINE_PSERIES_CAP_CFPC,
-            QEMU_CAPS_MACHINE_PSERIES_CAP_SBBC,
-            QEMU_CAPS_MACHINE_PSERIES_CAP_IBS);
+    DO_TEST_CAPS_LATEST_PPC64("pseries-features");
 
     /* parse error: no QEMU_CAPS_MACHINE_PSERIES_CAP_HPT_MAX_PAGE_SIZE */
     DO_TEST_PARSE_ERROR("pseries-features-hpt-pagesize",
@@ -2303,27 +2241,13 @@ mymain(void)
 
     DO_TEST_PARSE_ERROR_NOCAPS("pseries-features-invalid-machine");
 
-    DO_TEST("pseries-serial-native",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY);
-    DO_TEST("pseries-serial+console-native",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY);
-    DO_TEST("pseries-serial-compat",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY);
-    DO_TEST("pseries-serial-pci",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_PCI_SERIAL);
-    DO_TEST("pseries-serial-usb",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_QEMU_XHCI,
-            QEMU_CAPS_DEVICE_USB_SERIAL);
-    DO_TEST("pseries-console-native",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,
-            QEMU_CAPS_DEVICE_SPAPR_VTY);
-    DO_TEST("pseries-console-virtio",
-            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE);
+    DO_TEST_CAPS_LATEST_PPC64("pseries-serial-native");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-serial+console-native");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-serial-compat");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-serial-pci");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-serial-usb");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-console-native");
+    DO_TEST_CAPS_LATEST_PPC64("pseries-console-virtio");
     DO_TEST_PARSE_ERROR_NOCAPS("pseries-serial-invalid-machine");
     DO_TEST_PARSE_ERROR_NOCAPS("pseries-spaprvio-invalid");
 
-- 
2.37.3



More information about the libvir-list mailing list