[PATCH 00/31] qemu capability testing cleanups and improvements (part 1)

The idea of this series is to start cleaning out fake caps testing as much as possible in favor of real capabilities (as much as possible). The end goal is to replace all fake caps test cases with real caps. This series was inspired by the effort to remove/deprecate qemu-system-i386 and qemu-system-arm. This series cleans up less-tested arches and finishes off with cleaning out 'qemu-system-arm' Further work is with other arches which have far more fake tests. Peter Krempa (31): tests: domainschemadata: Drop redundant tests tests: qemu: Move testing of default cache and disk source with space to 'sata-device' util: virfilecache: Introduce virFileCacheClear for usage in tests qemuxml2argvtest: Fix serial-unix-missing-source case qemuTestCapsCacheInsert*: Drop the file cache rather than poisoning it qemuTestCapsCacheInsert*: Directly insert real capabilities qemuxml2argvtest: Convert 'sparc-minimal' case to DO_TEST_CAPS_ARCH_LATEST testutilsqemu: Drop support for fake-caps testing of 'sparc' architecture testutilsqemu: Unify array for filling fake machine types testutilsqemu: Drop support for fake-caps testing of 'riscv32' architecture qemu: capabilities: Don't make callers check return of virQEMUCapsNew(Binary) qemu: capabilities: Remove return value from virQEMUCaps(SEV|SGX)InfoCopy qemu: domain: Restructure control flow in qemuDomainFixupCPUs cpu: Remove return value from virCPUDefCopyModel(Filter) conf: cpu: Remove NULL check from virCPUDefCopyWithoutModel conf: cpu: Remove NULL check from virCPUDefCopy qemu: capabilities: Remove return value from virQEMUCapsHostCPUDataCopy qemu: capabilities: Remove return value from virQEMUCapsAccelCopy qemu: Remove return value checks from calls to virQEMUCapsNewCopy qemuTestCapsCacheInsertImpl: Require that callers always pass capabilities testutilsqemu: Rework setting of fake capabilities testutilsqemu: Introduce ARG_QEMU_CAPS_DEL, to mask out flags from real caps qemuxml2(argv|xml)test: Convert last fake-caps riscv64 tests to real caps testutilsqemu: Drop support for fake-caps testing of 'riscv64' architecture tests: qemu: Add 'ppc' machine caps based on 'qemu-system-ppc' on fedora qemuxml2argvdata: Convert test cases for 'ppc' architecture to latest caps testutilsqemu: Drop support for fake-caps testing of 'ppc' architecture qemu: Always assume QEMU_CAPS_CPU_AARCH64_OFF qemu: capabilities: Retire QEMU_CAPS_CPU_AARCH64_OFF tests: qemuxml2argvdata: Port 'qemu-system-arm' cases with fake tests to 'qemu-system-aarch64' testutilsqemu: Drop support for fake-caps testing of 'arm' architecture src/conf/cpu_conf.c | 19 +- src/conf/cpu_conf.h | 10 +- src/cpu/cpu_arm.c | 8 +- src/cpu/cpu_ppc64.c | 8 +- src/cpu/cpu_s390.c | 8 +- src/cpu/cpu_x86.c | 29 +- src/libvirt_private.syms | 1 + src/qemu/qemu_capabilities.c | 104 +- src/qemu/qemu_capabilities.h | 2 +- src/qemu/qemu_domain.c | 27 +- src/qemu/qemu_driver.c | 12 +- src/qemu/qemu_migration_cookie.c | 3 +- src/qemu/qemu_process.c | 12 +- src/qemu/qemu_validate.c | 9 - src/util/virfilecache.c | 16 + src/util/virfilecache.h | 4 + tests/cputest.c | 3 +- tests/domaincapsdata/qemu_7.2.0.ppc.xml | 158 + tests/domainschemadata/backing-chains.xml | 94 - tests/domainschemadata/default-cache-mode.xml | 26 - .../domain-disk-source-space.xml | 36 - tests/domainschemadata/maxMemory.xml | 19 - .../qemu-simple-description-title.xml | 27 - tests/domainschemadata/timers.xml | 28 - .../caps_4.2.0.aarch64.xml | 1 - .../caps_5.0.0.aarch64.xml | 1 - .../caps_5.2.0.aarch64.xml | 1 - .../caps_6.0.0.aarch64.xml | 1 - .../caps_6.2.0.aarch64.xml | 1 - .../caps_7.0.0.aarch64.xml | 1 - .../caps_7.2.0.ppc.replies | 32233 ++++++++++++++++ tests/qemucapabilitiesdata/caps_7.2.0.ppc.xml | 559 + tests/qemucapabilitiestest.c | 9 +- tests/qemucaps2xmloutdata/caps.ppc.xml | 25 + tests/qemucaps2xmltest.c | 3 +- tests/qemuhotplugtest.c | 3 +- tests/qemumemlocktest.c | 5 +- tests/qemusecuritytest.c | 2 + tests/qemustatusxml2xmltest.c | 2 + ... aarch64-kvm-32-on-64.aarch64-latest.args} | 15 +- .../qemuxml2argvdata/aarch64-kvm-32-on-64.err | 1 - .../qemuxml2argvdata/aarch64-kvm-32-on-64.xml | 2 +- ... arm-vexpressa9-basic.aarch64-latest.args} | 9 +- .../qemuxml2argvdata/arm-vexpressa9-basic.xml | 2 +- ...arm-vexpressa9-nodevs.aarch64-latest.args} | 9 +- .../arm-vexpressa9-nodevs.xml | 2 +- ...arm-vexpressa9-virtio.aarch64-latest.args} | 23 +- .../arm-vexpressa9-virtio.xml | 2 +- .../arm-virt-virtio.aarch64-latest.args | 54 + tests/qemuxml2argvdata/arm-virt-virtio.args | 45 - tests/qemuxml2argvdata/arm-virt-virtio.xml | 2 +- .../disk-sata-device.x86_64-latest.args | 2 +- tests/qemuxml2argvdata/disk-sata-device.xml | 3 +- .../{ppc-dtb.args => ppc-dtb.ppc-latest.args} | 12 +- tests/qemuxml2argvdata/ppc-dtb.xml | 2 +- ...al.args => ppce500-serial.ppc-latest.args} | 12 +- tests/qemuxml2argvdata/ppce500-serial.xml | 2 +- ...s => riscv64-virt-pci.riscv64-latest.args} | 8 +- ....args => riscv64-virt.riscv64-latest.args} | 10 +- .../serial-unix-missing-source.err | 1 - ...rial-unix-missing-source.x86_64-latest.err | 2 +- .../serial-unix-missing-source.xml | 4 +- ...l.args => sparc-minimal.sparc-latest.args} | 1 + tests/qemuxml2argvtest.c | 43 +- .../disk-sata-device.x86_64-latest.xml | 40 + ...ml => riscv64-virt-pci.riscv64-latest.xml} | 0 ...rt.xml => riscv64-virt.riscv64-latest.xml} | 20 +- tests/qemuxml2xmltest.c | 9 +- tests/securityselinuxlabeltest.c | 3 +- tests/testutilshostcpus.h | 10 + tests/testutilsqemu.c | 227 +- tests/testutilsqemu.h | 5 +- 72 files changed, 33400 insertions(+), 692 deletions(-) create mode 100644 tests/domaincapsdata/qemu_7.2.0.ppc.xml delete mode 100644 tests/domainschemadata/backing-chains.xml delete mode 100644 tests/domainschemadata/default-cache-mode.xml delete mode 100644 tests/domainschemadata/domain-disk-source-space.xml delete mode 100644 tests/domainschemadata/maxMemory.xml delete mode 100644 tests/domainschemadata/qemu-simple-description-title.xml delete mode 100644 tests/domainschemadata/timers.xml create mode 100644 tests/qemucapabilitiesdata/caps_7.2.0.ppc.replies create mode 100644 tests/qemucapabilitiesdata/caps_7.2.0.ppc.xml create mode 100644 tests/qemucaps2xmloutdata/caps.ppc.xml rename tests/qemuxml2argvdata/{aarch64-kvm-32-on-64.args => aarch64-kvm-32-on-64.aarch64-latest.args} (53%) delete mode 100644 tests/qemuxml2argvdata/aarch64-kvm-32-on-64.err rename tests/qemuxml2argvdata/{arm-vexpressa9-basic.args => arm-vexpressa9-basic.aarch64-latest.args} (71%) rename tests/qemuxml2argvdata/{arm-vexpressa9-nodevs.args => arm-vexpressa9-nodevs.aarch64-latest.args} (65%) rename tests/qemuxml2argvdata/{arm-vexpressa9-virtio.args => arm-vexpressa9-virtio.aarch64-latest.args} (54%) create mode 100644 tests/qemuxml2argvdata/arm-virt-virtio.aarch64-latest.args delete mode 100644 tests/qemuxml2argvdata/arm-virt-virtio.args rename tests/qemuxml2argvdata/{ppc-dtb.args => ppc-dtb.ppc-latest.args} (62%) rename tests/qemuxml2argvdata/{ppce500-serial.args => ppce500-serial.ppc-latest.args} (62%) rename tests/qemuxml2argvdata/{riscv64-virt-pci.args => riscv64-virt-pci.riscv64-latest.args} (67%) rename tests/qemuxml2argvdata/{riscv64-virt.args => riscv64-virt.riscv64-latest.args} (67%) delete mode 100644 tests/qemuxml2argvdata/serial-unix-missing-source.err rename tests/qemuxml2argvdata/{sparc-minimal.args => sparc-minimal.sparc-latest.args} (95%) create mode 100644 tests/qemuxml2xmloutdata/disk-sata-device.x86_64-latest.xml rename tests/qemuxml2xmloutdata/{riscv64-virt-pci.xml => riscv64-virt-pci.riscv64-latest.xml} (100%) rename tests/qemuxml2xmloutdata/{riscv64-virt.xml => riscv64-virt.riscv64-latest.xml} (53%) -- 2.39.2

The schema tested by removed test cases is tested by other, more useful, test cases: - 'maxMemory' - qemuxmlargvdata/memory-hotplug* - 'backingChains' - qemuxmlargvdata/disk-backing-chains* - 'timers' - qemuxml2argvdata/kvm-pit-delay.xml - qemuxml2argvdata/clock-catchup.xml - 'qemu-simple-description-title.xml' - 'qemuxml2argvdata/minimal.xml Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/domainschemadata/backing-chains.xml | 94 ------------------- tests/domainschemadata/maxMemory.xml | 19 ---- .../qemu-simple-description-title.xml | 27 ------ tests/domainschemadata/timers.xml | 28 ------ 4 files changed, 168 deletions(-) delete mode 100644 tests/domainschemadata/backing-chains.xml delete mode 100644 tests/domainschemadata/maxMemory.xml delete mode 100644 tests/domainschemadata/qemu-simple-description-title.xml delete mode 100644 tests/domainschemadata/timers.xml diff --git a/tests/domainschemadata/backing-chains.xml b/tests/domainschemadata/backing-chains.xml deleted file mode 100644 index 908eba5c1a..0000000000 --- a/tests/domainschemadata/backing-chains.xml +++ /dev/null @@ -1,94 +0,0 @@ -<domain type='qemu'> - <name>QEMUGuest1</name> - <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> - <memory unit='KiB'>219136</memory> - <currentMemory unit='KiB'>219136</currentMemory> - <vcpu placement='static'>1</vcpu> - <os> - <type arch='i686' machine='pc'>hvm</type> - <boot dev='hd'/> - </os> - <clock offset='utc'/> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>destroy</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-i386</emulator> - <disk type='network' device='disk'> - <driver name='qemu' type='qcow2'/> - <source protocol='gluster' name='Volume2/Image'> - <host transport='unix' socket='/path/to/sock'/> - </source> - <backingStore type='file' index='1'> - <format type='qcow2'/> - <source file='/tmp/missing-backing-store.qcow'/> - </backingStore> - <target dev='vda' bus='virtio'/> - </disk> - <disk type='network' device='disk'> - <driver name='qemu' type='qcow2'/> - <source protocol='nbd' name='bar'> - <host transport='unix' socket='/var/run/nbdsock'/> - </source> - <backingStore type='block' index='1'> - <format type='qcow2'/> - <source dev='/dev/HostVG/QEMUGuest1'/> - <backingStore type='file' index='2'> - <format type='qcow2'/> - <source file='/tmp/image2.qcow'/> - <backingStore type='file' index='3'> - <format type='qcow2'/> - <source file='/tmp/image3.qcow'/> - <backingStore type='file' index='4'> - <format type='qcow2'/> - <source file='/tmp/image4.qcow'/> - <backingStore type='file' index='5'> - <source file='/tmp/image5.qcow'/> - <format type='qcow2'/> - <backingStore type='file' index='6'> - <format type='raw'/> - <source file='/tmp/Fedora-17-x86_64-Live-KDE.iso'/> - <backingStore/> - </backingStore> - </backingStore> - </backingStore> - </backingStore> - </backingStore> - </backingStore> - <target dev='vdb' bus='virtio'/> - </disk> - <disk type='network' device='disk'> - <driver name='qemu' type='raw'/> - <backingStore/> - <source protocol='gluster' name='Volume1/Image'> - <host name='example.org' port='6000'/> - </source> - <target dev='vdc' bus='virtio'/> - </disk> - <disk type='network' device='disk'> - <driver name='qemu' type='qcow2'/> - <auth username='myname'> - <secret type='ceph' usage='mycluster_myname'/> - </auth> - <source protocol='rbd' name='pool/image'> - <host name='mon1.example.org' port='6321'/> - <host name='mon2.example.org' port='6322'/> - <host name='mon3.example.org' port='6322'/> - </source> - <backingStore type='file' index='1'> - <source file='/tmp/image.qcow'/> - <backingStore/> - <format type='qcow2'/> - </backingStore> - <target dev='vdd' bus='virtio'/> - </disk> - <disk type='block' device='disk'> - <driver name='qemu' type='qcow2'/> - <source dev='/dev/HostVG/QEMUGuest11'/> - <target dev='vde' bus='virtio'/> - </disk> - <controller type='usb' index='0'/> - <controller type='pci' index='0' model='pci-root'/> - <memballoon model='virtio'/> - </devices> -</domain> diff --git a/tests/domainschemadata/maxMemory.xml b/tests/domainschemadata/maxMemory.xml deleted file mode 100644 index 366442999c..0000000000 --- a/tests/domainschemadata/maxMemory.xml +++ /dev/null @@ -1,19 +0,0 @@ -<domain type='qemu'> - <name>QEMUGuest1</name> - <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> - <maxMemory slots='9' unit='KiB'>1233456789</maxMemory> - <memory unit='KiB'>219136</memory> - <currentMemory unit='KiB'>219136</currentMemory> - <vcpu placement='static'>1</vcpu> - <os> - <type arch='i686' machine='pc'>hvm</type> - <boot dev='hd'/> - </os> - <clock offset='utc'/> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>destroy</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-i386</emulator> - </devices> -</domain> diff --git a/tests/domainschemadata/qemu-simple-description-title.xml b/tests/domainschemadata/qemu-simple-description-title.xml deleted file mode 100644 index d402cf0ab1..0000000000 --- a/tests/domainschemadata/qemu-simple-description-title.xml +++ /dev/null @@ -1,27 +0,0 @@ -<domain type='qemu'> - <name>qemu-demo</name> - <uuid>603cc28c-9841-864e-0949-8cc7d3bae9f8</uuid> - <memory unit='KiB'>65536</memory> - <currentMemory unit='KiB'>65536</currentMemory> - <title>A short description of this domain</title> - <description> - A longer explanation that this domain is a test domain - for validating domain schemas. - </description> - <vcpu>1</vcpu> - <os> - <type arch='x86_64' machine='pc-0.14'>hvm</type> - </os> - <features> - <acpi/> - <apic/> - <pae/> - </features> - <clock offset='utc'/> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>restart</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-x86_64</emulator> - </devices> -</domain> diff --git a/tests/domainschemadata/timers.xml b/tests/domainschemadata/timers.xml deleted file mode 100644 index 75131bd7c1..0000000000 --- a/tests/domainschemadata/timers.xml +++ /dev/null @@ -1,28 +0,0 @@ -<domain type='qemu'> - <name>QEMUGuest1</name> - <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> - <memory unit='KiB'>219200</memory> - <currentMemory unit='KiB'>219200</currentMemory> - <vcpu>1</vcpu> - <os> - <type arch='i686' machine='pc'>hvm</type> - <boot dev='hd'/> - </os> - <clock offset='utc'> - <timer name='pit' tickpolicy='delay'/> - <timer name='hpet'/> - </clock> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>destroy</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-i386</emulator> - <disk type='block' device='disk'> - <source dev='/dev/HostVG/QEMUGuest1'/> - <target dev='hda' bus='ide'/> - <address type='drive' controller='0' bus='0' unit='0'/> - </disk> - <controller type='ide' index='0'/> - <memballoon model='virtio'/> - </devices> -</domain> -- 2.39.2

Integrate the two special cases used for schema testing into the more useful qemuxml2argvtest, whose input data is still tested against the schema. Add also a xml output variant. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/domainschemadata/default-cache-mode.xml | 26 ------------ .../domain-disk-source-space.xml | 36 ----------------- .../disk-sata-device.x86_64-latest.args | 2 +- tests/qemuxml2argvdata/disk-sata-device.xml | 3 +- .../disk-sata-device.x86_64-latest.xml | 40 +++++++++++++++++++ tests/qemuxml2xmltest.c | 1 + 6 files changed, 44 insertions(+), 64 deletions(-) delete mode 100644 tests/domainschemadata/default-cache-mode.xml delete mode 100644 tests/domainschemadata/domain-disk-source-space.xml create mode 100644 tests/qemuxml2xmloutdata/disk-sata-device.x86_64-latest.xml diff --git a/tests/domainschemadata/default-cache-mode.xml b/tests/domainschemadata/default-cache-mode.xml deleted file mode 100644 index a11232316d..0000000000 --- a/tests/domainschemadata/default-cache-mode.xml +++ /dev/null @@ -1,26 +0,0 @@ -<domain type='qemu'> - <name>QEMUGuest1</name> - <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> - <memory unit='KiB'>219200</memory> - <currentMemory unit='KiB'>219200</currentMemory> - <vcpu>1</vcpu> - <os> - <type arch='i686' machine='pc'>hvm</type> - <boot dev='hd'/> - </os> - <clock offset='utc'/> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>destroy</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-i386</emulator> - <disk type='file' device='disk'> - <driver name='qemu' type='raw' cache='default'/> - <source file='/var/lib/libvirt/images/QEMUGuest1'/> - <target dev='hda' bus='ide'/> - <address type='drive' controller='0' bus='0' unit='0'/> - </disk> - <controller type='ide' index='0'/> - <memballoon model='virtio'/> - </devices> -</domain> diff --git a/tests/domainschemadata/domain-disk-source-space.xml b/tests/domainschemadata/domain-disk-source-space.xml deleted file mode 100644 index 553b6c7f01..0000000000 --- a/tests/domainschemadata/domain-disk-source-space.xml +++ /dev/null @@ -1,36 +0,0 @@ -<domain type='kvm'> - <name>dummy</name> - <uuid>aa86471a-e67b-41b1-8d7d-2dc37c2ac5ec</uuid> - <memory unit='KiB'>2097152</memory> - <currentMemory unit='KiB'>2097152</currentMemory> - <vcpu placement='static'>4</vcpu> - <os> - <type arch='x86_64' machine='pc-i440fx-2.5'>hvm</type> - </os> - <features> - <acpi/> - <apic/> - </features> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>restart</on_crash> - <pm> - <suspend-to-mem enabled='no'/> - <suspend-to-disk enabled='no'/> - </pm> - <devices> - <emulator>/usr/bin/qemu-system-x86_64</emulator> - <disk type='file' device='cdrom'> - <driver name='qemu' type='raw'/> - <source file='/a/path/with some space in it.iso'/> - <target dev='hda' bus='ide'/> - <readonly/> - <boot order='1'/> - <address type='drive' controller='0' bus='0' target='0' unit='0'/> - </disk> - <controller type='pci' index='0' model='pci-root'/> - <controller type='ide' index='0'> - <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> - </controller> - </devices> -</domain> diff --git a/tests/qemuxml2argvdata/disk-sata-device.x86_64-latest.args b/tests/qemuxml2argvdata/disk-sata-device.x86_64-latest.args index 9365104c20..3cf305f14c 100644 --- a/tests/qemuxml2argvdata/disk-sata-device.x86_64-latest.args +++ b/tests/qemuxml2argvdata/disk-sata-device.x86_64-latest.args @@ -29,7 +29,7 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \ -boot strict=on \ -device '{"driver":"piix3-usb-uhci","id":"usb","bus":"pci.0","addr":"0x1.0x2"}' \ -device '{"driver":"ahci","id":"sata0","bus":"pci.0","addr":"0x2"}' \ --blockdev '{"driver":"host_device","filename":"/dev/HostVG/QEMUGuest1","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \ +-blockdev '{"driver":"host_device","filename":"/dev/HostVG/QEMUG uest1","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 '{"driver":"ide-hd","bus":"sata0.0","drive":"libvirt-1-format","id":"sata0-0-0","bootindex":1}' \ -audiodev '{"id":"audio1","driver":"none"}' \ diff --git a/tests/qemuxml2argvdata/disk-sata-device.xml b/tests/qemuxml2argvdata/disk-sata-device.xml index 5dbf08ef1d..a9def2923e 100644 --- a/tests/qemuxml2argvdata/disk-sata-device.xml +++ b/tests/qemuxml2argvdata/disk-sata-device.xml @@ -15,7 +15,8 @@ <devices> <emulator>/usr/bin/qemu-system-x86_64</emulator> <disk type='block' device='disk'> - <source dev='/dev/HostVG/QEMUGuest1'/> + <driver cache='default'/> + <source dev='/dev/HostVG/QEMUG uest1'/> <target dev='sda' bus='sata'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk> diff --git a/tests/qemuxml2xmloutdata/disk-sata-device.x86_64-latest.xml b/tests/qemuxml2xmloutdata/disk-sata-device.x86_64-latest.xml new file mode 100644 index 0000000000..cd20f5185b --- /dev/null +++ b/tests/qemuxml2xmloutdata/disk-sata-device.x86_64-latest.xml @@ -0,0 +1,40 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> + <memory unit='KiB'>219136</memory> + <currentMemory unit='KiB'>219136</currentMemory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='x86_64' machine='pc'>hvm</type> + <boot dev='hd'/> + </os> + <cpu mode='custom' match='exact' check='none'> + <model fallback='forbid'>qemu64</model> + </cpu> + <clock offset='utc'/> + <on_poweroff>destroy</on_poweroff> + <on_reboot>restart</on_reboot> + <on_crash>destroy</on_crash> + <devices> + <emulator>/usr/bin/qemu-system-x86_64</emulator> + <disk type='block' device='disk'> + <driver name='qemu' type='raw'/> + <source dev='/dev/HostVG/QEMUG uest1'/> + <target dev='sda' bus='sata'/> + <address type='drive' controller='0' bus='0' target='0' unit='0'/> + </disk> + <controller type='usb' index='0' model='piix3-uhci'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> + </controller> + <controller type='sata' index='0'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> + </controller> + <controller type='pci' index='0' model='pci-root'/> + <input type='mouse' bus='ps2'/> + <input type='keyboard' bus='ps2'/> + <audio id='1' type='none'/> + <memballoon model='virtio'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> + </memballoon> + </devices> +</domain> diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 2d2d800523..9c7d6c6b2b 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -348,6 +348,7 @@ mymain(void) DO_TEST_NOCAPS("disk-network-tlsx509-vxhs"); DO_TEST_CAPS_LATEST("disk-nvme"); DO_TEST_CAPS_LATEST("disk-vhostuser"); + DO_TEST_CAPS_LATEST("disk-sata-device"); DO_TEST_CAPS_LATEST("disk-scsi"); DO_TEST("disk-virtio-scsi-reservations", QEMU_CAPS_VIRTIO_SCSI, -- 2.39.2

In tests we need to be able to populate the cache with a deterministic set of entries. This means we need to drop the contents of the cache between runs to prevent spillage between test cases. virFileCacheClear drops all entries from the hash table used for the cache. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/libvirt_private.syms | 1 + src/util/virfilecache.c | 16 ++++++++++++++++ src/util/virfilecache.h | 4 ++++ 3 files changed, 21 insertions(+) diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index f1bed27ba7..1159889bd6 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -2352,6 +2352,7 @@ virFindFileInPath; # util/virfilecache.h +virFileCacheClear; virFileCacheGetPriv; virFileCacheInsertData; virFileCacheLookup; diff --git a/src/util/virfilecache.c b/src/util/virfilecache.c index bad37c9f00..b9e06545c0 100644 --- a/src/util/virfilecache.c +++ b/src/util/virfilecache.c @@ -407,3 +407,19 @@ virFileCacheInsertData(virFileCache *cache, return ret; } + + +/** + * virFileCacheClear: + * @cache: existing cache object + * + * Drops all entries from the cache. This is useful in tests to clean out + * previous usage. + */ +void +virFileCacheClear(virFileCache *cache) +{ + virObjectLock(cache); + virHashRemoveAll(cache->table); + virObjectUnlock(cache); +} diff --git a/src/util/virfilecache.h b/src/util/virfilecache.h index 81be8feef5..c3bc0f529c 100644 --- a/src/util/virfilecache.h +++ b/src/util/virfilecache.h @@ -135,3 +135,7 @@ int virFileCacheInsertData(virFileCache *cache, const char *name, void *data); + +/* for testing usage */ +void +virFileCacheClear(virFileCache *cache); -- 2.39.2

Use x86_64 emulator and machine and remove the nocaps version of the test. Fixes: 80a37e96a95 Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/qemuxml2argvdata/serial-unix-missing-source.err | 1 - .../serial-unix-missing-source.x86_64-latest.err | 2 +- tests/qemuxml2argvdata/serial-unix-missing-source.xml | 4 ++-- tests/qemuxml2argvtest.c | 1 - 4 files changed, 3 insertions(+), 5 deletions(-) delete mode 100644 tests/qemuxml2argvdata/serial-unix-missing-source.err diff --git a/tests/qemuxml2argvdata/serial-unix-missing-source.err b/tests/qemuxml2argvdata/serial-unix-missing-source.err deleted file mode 100644 index bfbefc8cce..0000000000 --- a/tests/qemuxml2argvdata/serial-unix-missing-source.err +++ /dev/null @@ -1 +0,0 @@ -internal error: Missing source path attribute for char device diff --git a/tests/qemuxml2argvdata/serial-unix-missing-source.x86_64-latest.err b/tests/qemuxml2argvdata/serial-unix-missing-source.x86_64-latest.err index 86be3aead4..bfbefc8cce 100644 --- a/tests/qemuxml2argvdata/serial-unix-missing-source.x86_64-latest.err +++ b/tests/qemuxml2argvdata/serial-unix-missing-source.x86_64-latest.err @@ -1 +1 @@ -unsupported configuration: Emulator '/usr/bin/qemu-system-aarch64' does not support arch 'aarch64' +internal error: Missing source path attribute for char device diff --git a/tests/qemuxml2argvdata/serial-unix-missing-source.xml b/tests/qemuxml2argvdata/serial-unix-missing-source.xml index 1e1221f12d..462f2b429e 100644 --- a/tests/qemuxml2argvdata/serial-unix-missing-source.xml +++ b/tests/qemuxml2argvdata/serial-unix-missing-source.xml @@ -4,10 +4,10 @@ <memory unit='KiB'>1048576</memory> <vcpu placement='static'>1</vcpu> <os> - <type arch='aarch64' machine='virt'>hvm</type> + <type arch='x86_64' machine='pc'>hvm</type> </os> <devices> - <emulator>/usr/bin/qemu-system-aarch64</emulator> + <emulator>/usr/bin/qemu-system-x86_64</emulator> <serial type='unix'> <target type='pci-serial'/> </serial> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 5a33c336c8..fa60028cf0 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -1551,7 +1551,6 @@ mymain(void) DO_TEST_CAPS_LATEST("serial-dev-chardev-iobase"); DO_TEST_CAPS_LATEST("serial-file-chardev"); DO_TEST_CAPS_LATEST("serial-unix-chardev"); - DO_TEST_PARSE_ERROR_NOCAPS("serial-unix-missing-source"); DO_TEST("serial-tcp-chardev", QEMU_CAPS_DEVICE_ISA_SERIAL); DO_TEST("serial-udp-chardev", -- 2.39.2

Make callers use virFileCacheClear to clear the cache before populating it rather than trying to overwrite what's in it. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/qemusecuritytest.c | 2 ++ tests/qemustatusxml2xmltest.c | 2 ++ tests/qemuxml2argvtest.c | 2 ++ tests/qemuxml2xmltest.c | 2 ++ tests/testutilsqemu.c | 25 ++++++------------------- 5 files changed, 14 insertions(+), 19 deletions(-) diff --git a/tests/qemusecuritytest.c b/tests/qemusecuritytest.c index 0596783b6c..e2989c05aa 100644 --- a/tests/qemusecuritytest.c +++ b/tests/qemusecuritytest.c @@ -64,6 +64,8 @@ prepareObjects(virQEMUDriver *driver, if (!(priv->qemuCaps = qemuTestParseCapabilitiesArch(VIR_ARCH_X86_64, latestCapsFile))) return -1; + virFileCacheClear(driver->qemuCapsCache); + if (qemuTestCapsCacheInsert(driver->qemuCapsCache, priv->qemuCaps) < 0) return -1; diff --git a/tests/qemustatusxml2xmltest.c b/tests/qemustatusxml2xmltest.c index db82a1a980..c69ff5e5e1 100644 --- a/tests/qemustatusxml2xmltest.c +++ b/tests/qemustatusxml2xmltest.c @@ -26,6 +26,8 @@ testCompareStatusXMLToXMLFiles(const void *opaque) if (testQemuInfoInitArgs((struct testQemuInfo *) data) < 0) return -1; + virFileCacheClear(driver.qemuCapsCache); + if (qemuTestCapsCacheInsert(driver.qemuCapsCache, data->qemuCaps) < 0) return -1; diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index fa60028cf0..4aecbe57f6 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -664,6 +664,8 @@ testCompareXMLToArgv(const void *data) goto cleanup; } + virFileCacheClear(driver.qemuCapsCache); + if (info->args.hostOS == HOST_OS_MACOS) rc = qemuTestCapsCacheInsertMacOS(driver.qemuCapsCache, info->qemuCaps); else diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 9c7d6c6b2b..787e51956f 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -44,6 +44,8 @@ testXML2XMLCommon(const struct testQemuInfo *info) if (!(info->flags & FLAG_REAL_CAPS)) virQEMUCapsInitQMPBasicArch(info->qemuCaps); + virFileCacheClear(driver.qemuCapsCache); + if (info->args.hostOS == HOST_OS_MACOS) rc = qemuTestCapsCacheInsertMacOS(driver.qemuCapsCache, info->qemuCaps); else diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index 396803c40b..9d7bc2ed51 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -524,17 +524,16 @@ qemuTestCapsCacheInsertImpl(virFileCache *cache, size_t i; if (caps && virQEMUCapsGetArch(caps) != VIR_ARCH_NONE) { - /* for capabilities which have architecture set we populate only the - * given architecture and poison all other so that the test doesn't - * accidentally test a weird combination */ + /* all tests using real caps or arcitecture are expected to call: + * + * virFileCacheClear(driver.qemuCapsCache); + * + * before populating the cache; + */ virArch arch = virQEMUCapsGetArch(caps); - g_autoptr(virQEMUCaps) emptyCaps = virQEMUCapsNew(); g_autoptr(virQEMUCaps) copyCaps = NULL; virQEMUCaps *effCaps = caps; - if (!emptyCaps) - return -1; - if (arch_alias[arch] != VIR_ARCH_NONE) arch = arch_alias[arch]; @@ -550,18 +549,6 @@ qemuTestCapsCacheInsertImpl(virFileCache *cache, if (qemuTestCapsCacheInsertData(cache, qemu_emulators[arch], effCaps) < 0) return -1; } - - - for (i = 0; i < G_N_ELEMENTS(qemu_emulators); i++) { - if (!qemu_emulators[i]) - continue; - - if (i == arch) - continue; - - if (qemuTestCapsCacheInsertData(cache, qemu_emulators[i], emptyCaps) < 0) - return -1; - } } else { /* in case when caps are missing or are missing architecture, we populate * everything */ -- 2.39.2

Real capabilities populate the binary name, while fake don't. We can directly insert the capabilities using the real binary name. This will allow to remove 'qemu_emulators' entries once all tests are converted to real capabilties. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/testutilsqemu.c | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index 9d7bc2ed51..588abf662d 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -530,24 +530,30 @@ qemuTestCapsCacheInsertImpl(virFileCache *cache, * * before populating the cache; */ - virArch arch = virQEMUCapsGetArch(caps); - g_autoptr(virQEMUCaps) copyCaps = NULL; - virQEMUCaps *effCaps = caps; + /* caps->binary is populated only for real capabilities */ + if (virQEMUCapsGetBinary(caps)) { + if (qemuTestCapsCacheInsertData(cache, virQEMUCapsGetBinary(caps), caps) < 0) + return -1; + } else { + virArch arch = virQEMUCapsGetArch(caps); + g_autoptr(virQEMUCaps) copyCaps = NULL; + virQEMUCaps *effCaps = caps; - if (arch_alias[arch] != VIR_ARCH_NONE) - arch = arch_alias[arch]; + if (arch_alias[arch] != VIR_ARCH_NONE) + arch = arch_alias[arch]; - if (qemu_emulators[arch]) { - /* if we are dealing with fake caps we need to populate machine types */ - if (!virQEMUCapsHasMachines(caps)) { - if (!(copyCaps = effCaps = virQEMUCapsNewCopy(caps))) - return -1; + if (qemu_emulators[arch]) { + /* if we are dealing with fake caps we need to populate machine types */ + if (!virQEMUCapsHasMachines(caps)) { + if (!(copyCaps = effCaps = virQEMUCapsNewCopy(caps))) + return -1; - qemuTestCapsPopulateFakeMachines(copyCaps, arch, hostOS); - } + qemuTestCapsPopulateFakeMachines(copyCaps, arch, hostOS); + } - if (qemuTestCapsCacheInsertData(cache, qemu_emulators[arch], effCaps) < 0) - return -1; + if (qemuTestCapsCacheInsertData(cache, qemu_emulators[arch], effCaps) < 0) + return -1; + } } } else { /* in case when caps are missing or are missing architecture, we populate -- 2.39.2

Convert the only outstanding test case for a 'sparc' machine to modern test infrastructure. 'sparc' machine type also needs to be added to the list of supported arches in testQemuGetLatestCaps. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- .../{sparc-minimal.args => sparc-minimal.sparc-latest.args} | 1 + tests/qemuxml2argvtest.c | 3 +-- tests/testutilsqemu.c | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) rename tests/qemuxml2argvdata/{sparc-minimal.args => sparc-minimal.sparc-latest.args} (95%) diff --git a/tests/qemuxml2argvdata/sparc-minimal.args b/tests/qemuxml2argvdata/sparc-minimal.sparc-latest.args similarity index 95% rename from tests/qemuxml2argvdata/sparc-minimal.args rename to tests/qemuxml2argvdata/sparc-minimal.sparc-latest.args index 63930f20c4..75c33631cf 100644 --- a/tests/qemuxml2argvdata/sparc-minimal.args +++ b/tests/qemuxml2argvdata/sparc-minimal.sparc-latest.args @@ -32,4 +32,5 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-redhat62sparc/.config \ -blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw","file":"libvirt-1-storage"}' \ -device scsi-cd,bus=scsi.0,scsi-id=1,device_id=drive-scsi0-0-0-1,drive=libvirt-1-format,id=scsi0-0-0-1 \ -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 4aecbe57f6..90d96f2109 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2780,8 +2780,7 @@ mymain(void) QEMU_CAPS_OBJECT_GPEX, QEMU_CAPS_NEC_USB_XHCI); - DO_TEST("sparc-minimal", - QEMU_CAPS_SCSI_NCR53C90); + DO_TEST_CAPS_ARCH_LATEST("sparc-minimal", "sparc"); DO_TEST_CAPS_LATEST_PARSE_ERROR("missing-machine"); diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index 588abf662d..6d2d2dc83e 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -777,6 +777,7 @@ testQemuGetLatestCaps(void) "riscv64", "s390x", "x86_64", + "sparc", }; g_autoptr(GHashTable) capslatest = virHashNew(g_free); size_t i; -- 2.39.2

All tests were converted to use real capabilities so there's no need to support the infrastructure for fake tests. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/testutilsqemu.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index 6d2d2dc83e..3acad37f26 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -35,7 +35,6 @@ static const char *qemu_emulators[VIR_ARCH_LAST] = { [VIR_ARCH_RISCV32] = "/usr/bin/qemu-system-riscv32", [VIR_ARCH_RISCV64] = "/usr/bin/qemu-system-riscv64", [VIR_ARCH_S390X] = "/usr/bin/qemu-system-s390x", - [VIR_ARCH_SPARC] = "/usr/bin/qemu-system-sparc", }; static const virArch arch_alias[VIR_ARCH_LAST] = { @@ -71,9 +70,6 @@ static const char *const riscv64_machines[] = { static const char *const s390x_machines[] = { "s390-ccw-virtio", NULL }; -static const char *const sparc_machines[] = { - "SS-5", NULL -}; static const char *const *qemu_machines[VIR_ARCH_LAST] = { [VIR_ARCH_I686] = i386_machines, @@ -85,7 +81,6 @@ static const char *const *qemu_machines[VIR_ARCH_LAST] = { [VIR_ARCH_RISCV32] = riscv32_machines, [VIR_ARCH_RISCV64] = riscv64_machines, [VIR_ARCH_S390X] = s390x_machines, - [VIR_ARCH_SPARC] = sparc_machines, }; static const char *const *kvm_machines[VIR_ARCH_LAST] = { @@ -120,7 +115,6 @@ static const char *qemu_default_ram_id[VIR_ARCH_LAST] = { [VIR_ARCH_PPC64] = "ppc_spapr.ram", [VIR_ARCH_PPC] = "ppc_spapr.ram", [VIR_ARCH_S390X] = "s390.ram", - [VIR_ARCH_SPARC] = "sun4m.ram", }; char * -- 2.39.2

Both 'kvm_machines' and 'qemu_machines' now have the same members so we can simply drop kvm_machines. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/testutilsqemu.c | 62 +++++++++++++++---------------------------- 1 file changed, 22 insertions(+), 40 deletions(-) diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index 3acad37f26..b22540dfa4 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -83,18 +83,6 @@ static const char *const *qemu_machines[VIR_ARCH_LAST] = { [VIR_ARCH_S390X] = s390x_machines, }; -static const char *const *kvm_machines[VIR_ARCH_LAST] = { - [VIR_ARCH_I686] = i386_machines, - [VIR_ARCH_X86_64] = x86_64_machines, - [VIR_ARCH_AARCH64] = aarch64_machines, - [VIR_ARCH_ARMV7L] = arm_machines, - [VIR_ARCH_PPC64] = ppc64_machines, - [VIR_ARCH_PPC] = ppc_machines, - [VIR_ARCH_RISCV32] = riscv32_machines, - [VIR_ARCH_RISCV64] = riscv64_machines, - [VIR_ARCH_S390X] = s390x_machines, -}; - static const char *const *hvf_machines[VIR_ARCH_LAST] = { [VIR_ARCH_I686] = NULL, [VIR_ARCH_X86_64] = x86_64_machines, @@ -238,17 +226,15 @@ testQemuAddGuest(virCaps *caps, NULL, NULL, 0, NULL); if (hostOS == HOST_OS_LINUX) { - if (kvm_machines[emu_arch] != NULL) { - nmachines = g_strv_length((char **)kvm_machines[emu_arch]); - machines = virCapabilitiesAllocMachines(kvm_machines[emu_arch], - nmachines); - if (machines == NULL) - goto error; - - virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_KVM, - qemu_emulators[emu_arch], - NULL, nmachines, machines); - } + nmachines = g_strv_length((char **)qemu_machines[emu_arch]); + machines = virCapabilitiesAllocMachines(qemu_machines[emu_arch], + nmachines); + if (machines == NULL) + goto error; + + virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_KVM, + qemu_emulators[emu_arch], + NULL, nmachines, machines); } if (hostOS == HOST_OS_MACOS) { @@ -454,24 +440,20 @@ qemuTestCapsPopulateFakeMachines(virQEMUCaps *caps, defaultRAMid, false); virQEMUCapsSet(caps, QEMU_CAPS_TCG); - } - if (hostOS == HOST_OS_LINUX) { - if (kvm_machines[arch] != NULL) { - for (i = 0; kvm_machines[arch][i] != NULL; i++) { - virQEMUCapsAddMachine(caps, - VIR_DOMAIN_VIRT_KVM, - kvm_machines[arch][i], - NULL, - NULL, - 0, - false, - false, - true, - defaultRAMid, - false); - virQEMUCapsSet(caps, QEMU_CAPS_KVM); - } + if (hostOS == HOST_OS_LINUX) { + virQEMUCapsAddMachine(caps, + VIR_DOMAIN_VIRT_KVM, + qemu_machines[arch][i], + NULL, + NULL, + 0, + false, + false, + true, + defaultRAMid, + false); + virQEMUCapsSet(caps, QEMU_CAPS_KVM); } } -- 2.39.2

All tests were converted to use real capabilities so there's no need to support the infrastructure for fake tests. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/testutilsqemu.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index b22540dfa4..b5bf6829b7 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -32,7 +32,6 @@ static const char *qemu_emulators[VIR_ARCH_LAST] = { [VIR_ARCH_ARMV7L] = "/usr/bin/qemu-system-arm", [VIR_ARCH_PPC64] = "/usr/bin/qemu-system-ppc64", [VIR_ARCH_PPC] = "/usr/bin/qemu-system-ppc", - [VIR_ARCH_RISCV32] = "/usr/bin/qemu-system-riscv32", [VIR_ARCH_RISCV64] = "/usr/bin/qemu-system-riscv64", [VIR_ARCH_S390X] = "/usr/bin/qemu-system-s390x", }; @@ -61,9 +60,6 @@ static const char *const ppc64_machines[] = { static const char *const ppc_machines[] = { "ppce500", NULL }; -static const char *const riscv32_machines[] = { - "virt", NULL -}; static const char *const riscv64_machines[] = { "virt", NULL }; @@ -78,7 +74,6 @@ static const char *const *qemu_machines[VIR_ARCH_LAST] = { [VIR_ARCH_ARMV7L] = arm_machines, [VIR_ARCH_PPC64] = ppc64_machines, [VIR_ARCH_PPC] = ppc_machines, - [VIR_ARCH_RISCV32] = riscv32_machines, [VIR_ARCH_RISCV64] = riscv64_machines, [VIR_ARCH_S390X] = s390x_machines, }; @@ -90,7 +85,6 @@ static const char *const *hvf_machines[VIR_ARCH_LAST] = { [VIR_ARCH_ARMV7L] = NULL, [VIR_ARCH_PPC64] = NULL, [VIR_ARCH_PPC] = NULL, - [VIR_ARCH_RISCV32] = NULL, [VIR_ARCH_RISCV64] = NULL, [VIR_ARCH_S390X] = NULL, }; -- 2.39.2

The allocation of the object itself can't fail. What can fail is the creation of the class on a programmign error. Rather than punting the error up the stack abort() directly on the first occurence as the error can't be fixed during runtime. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_capabilities.c | 20 ++++---------------- src/qemu/qemu_domain.c | 3 +-- tests/cputest.c | 3 +-- tests/qemucapabilitiestest.c | 6 +++--- tests/qemucaps2xmltest.c | 3 +-- tests/qemuhotplugtest.c | 3 +-- tests/qemumemlocktest.c | 5 +---- tests/securityselinuxlabeltest.c | 3 +-- tests/testutilsqemu.c | 8 +++----- 9 files changed, 16 insertions(+), 38 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 3cb5785baa..35f8e9828a 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1828,11 +1828,9 @@ virQEMUCapsNew(void) virQEMUCaps *qemuCaps; if (virQEMUCapsInitialize() < 0) - return NULL; - - if (!(qemuCaps = virObjectNew(virQEMUCapsClass))) - return NULL; + abort(); + qemuCaps = virObjectNew(virQEMUCapsClass); qemuCaps->invalidation = true; qemuCaps->flags = virBitmapNew(QEMU_CAPS_LAST); @@ -1845,8 +1843,7 @@ virQEMUCapsNewBinary(const char *binary) { virQEMUCaps *qemuCaps = virQEMUCapsNew(); - if (qemuCaps) - qemuCaps->binary = g_strdup(binary); + qemuCaps->binary = g_strdup(binary); return qemuCaps; } @@ -1990,9 +1987,6 @@ virQEMUCaps *virQEMUCapsNewCopy(virQEMUCaps *qemuCaps) g_autoptr(virQEMUCaps) ret = virQEMUCapsNewBinary(qemuCaps->binary); size_t i; - if (!ret) - return NULL; - ret->invalidation = qemuCaps->invalidation; ret->kvmSupportsNesting = qemuCaps->kvmSupportsNesting; ret->kvmSupportsSecureGuest = qemuCaps->kvmSupportsSecureGuest; @@ -5858,12 +5852,9 @@ virQEMUCapsNewForBinaryInternal(virArch hostArch, const char *kernelVersion, virCPUData* cpuData) { - g_autoptr(virQEMUCaps) qemuCaps = NULL; + g_autoptr(virQEMUCaps) qemuCaps = virQEMUCapsNewBinary(binary); struct stat sb; - if (!(qemuCaps = virQEMUCapsNewBinary(binary))) - return NULL; - /* We would also want to check faccessat if we cared about ACLs, * but we don't. */ if (stat(binary, &sb) < 0) { @@ -5949,9 +5940,6 @@ virQEMUCapsLoadFile(const char *filename, virQEMUCapsCachePriv *priv = privData; int ret; - if (!qemuCaps) - return NULL; - ret = virQEMUCapsLoadCache(priv->hostArch, qemuCaps, filename, false); if (ret < 0) return NULL; diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index a083e7e1ef..a44ac83295 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -3197,8 +3197,7 @@ qemuDomainObjPrivateXMLParse(xmlXPathContextPtr ctxt, return -1; } if (n > 0) { - if (!(qemuCaps = virQEMUCapsNew())) - return -1; + qemuCaps = virQEMUCapsNew(); for (i = 0; i < n; i++) { g_autofree char *str = virXMLPropString(nodes[i], "name"); diff --git a/tests/cputest.c b/tests/cputest.c index 9b76cce2a8..b3253e3116 100644 --- a/tests/cputest.c +++ b/tests/cputest.c @@ -458,8 +458,7 @@ cpuTestMakeQEMUCaps(const struct data *data) cpu, true, false, fail_no_props, &model) < 0) return NULL; - if (!(qemuCaps = virQEMUCapsNew())) - return NULL; + qemuCaps = virQEMUCapsNew(); virQEMUCapsSet(qemuCaps, QEMU_CAPS_KVM); if (data->flags == JSON_MODELS || diff --git a/tests/qemucapabilitiestest.c b/tests/qemucapabilitiestest.c index 0066ba15fa..58beeb48cb 100644 --- a/tests/qemucapabilitiestest.c +++ b/tests/qemucapabilitiestest.c @@ -95,9 +95,9 @@ testQemuCaps(const void *opaque) binary = g_strdup_printf("/usr/bin/qemu-system-%s", data->archName); - if (!(capsActual = virQEMUCapsNewBinary(binary)) || - virQEMUCapsInitQMPMonitor(capsActual, - qemuMonitorTestGetMonitor(mon)) < 0) + capsActual = virQEMUCapsNewBinary(binary); + + if (virQEMUCapsInitQMPMonitor(capsActual, qemuMonitorTestGetMonitor(mon)) < 0) return -1; if (virQEMUCapsGet(capsActual, QEMU_CAPS_KVM)) { diff --git a/tests/qemucaps2xmltest.c b/tests/qemucaps2xmltest.c index 942c8e7aa4..badbce986e 100644 --- a/tests/qemucaps2xmltest.c +++ b/tests/qemucaps2xmltest.c @@ -64,8 +64,7 @@ testQemuGetCaps(char *caps) return NULL; } - if (!(qemuCaps = virQEMUCapsNew())) - return NULL; + qemuCaps = virQEMUCapsNew(); for (i = 0; i < n; i++) { g_autofree char *str = virXMLPropString(nodes[i], "name"); diff --git a/tests/qemuhotplugtest.c b/tests/qemuhotplugtest.c index 215837fc8f..a82e35f087 100644 --- a/tests/qemuhotplugtest.c +++ b/tests/qemuhotplugtest.c @@ -68,8 +68,7 @@ qemuHotplugCreateObjects(virDomainXMLOption *xmlopt, priv = (*vm)->privateData; - if (!(priv->qemuCaps = virQEMUCapsNew())) - return -1; + priv->qemuCaps = virQEMUCapsNew(); virQEMUCapsInitQMPBasicArch(priv->qemuCaps); diff --git a/tests/qemumemlocktest.c b/tests/qemumemlocktest.c index b303f70e9d..f2e1714841 100644 --- a/tests/qemumemlocktest.c +++ b/tests/qemumemlocktest.c @@ -95,10 +95,7 @@ mymain(void) DO_TEST("pc-kvm", 0); DO_TEST("pc-tcg", 0); - if (!(qemuCaps = virQEMUCapsNew())) { - ret = -1; - goto cleanup; - } + qemuCaps = virQEMUCapsNew(); virQEMUCapsSet(qemuCaps, QEMU_CAPS_DEVICE_VFIO_PCI); diff --git a/tests/securityselinuxlabeltest.c b/tests/securityselinuxlabeltest.c index 4f97edad17..30bd68b550 100644 --- a/tests/securityselinuxlabeltest.c +++ b/tests/securityselinuxlabeltest.c @@ -322,8 +322,7 @@ mymain(void) if (qemuTestDriverInit(&driver) < 0) return EXIT_FAILURE; - if (!(qemuCaps = virQEMUCapsNew())) - return EXIT_FAILURE; + qemuCaps = virQEMUCapsNew(); virQEMUCapsSet(qemuCaps, QEMU_CAPS_DEVICE_CIRRUS_VGA); virQEMUCapsSet(qemuCaps, QEMU_CAPS_VNC); diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index b5bf6829b7..ef78616062 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -372,12 +372,11 @@ virQEMUCaps * qemuTestParseCapabilitiesArch(virArch arch, const char *capsFile) { - g_autoptr(virQEMUCaps) qemuCaps = NULL; g_autofree char *binary = g_strdup_printf("/usr/bin/qemu-system-%s", virArchToString(arch)); + g_autoptr(virQEMUCaps) qemuCaps = virQEMUCapsNewBinary(binary); - if (!(qemuCaps = virQEMUCapsNewBinary(binary)) || - virQEMUCapsLoadCache(arch, qemuCaps, capsFile, true) < 0) + if (virQEMUCapsLoadCache(arch, qemuCaps, capsFile, true) < 0) return NULL; return g_steal_pointer(&qemuCaps); @@ -844,8 +843,7 @@ testQemuInfoSetArgs(struct testQemuInfo *info, testQemuInfoArgName argname; int flag; - if (!(info->args.fakeCaps = virQEMUCapsNew())) - abort(); + info->args.fakeCaps = virQEMUCapsNew(); info->conf = conf; info->args.newargs = true; -- 2.39.2

On a Friday in 2023, Peter Krempa wrote:
The allocation of the object itself can't fail. What can fail is the creation of the class on a programmign error. Rather than punting the
*programming
error up the stack abort() directly on the first occurence as the error can't be fixed during runtime.
Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_capabilities.c | 20 ++++---------------- src/qemu/qemu_domain.c | 3 +-- tests/cputest.c | 3 +-- tests/qemucapabilitiestest.c | 6 +++--- tests/qemucaps2xmltest.c | 3 +-- tests/qemuhotplugtest.c | 3 +-- tests/qemumemlocktest.c | 5 +---- tests/securityselinuxlabeltest.c | 3 +-- tests/testutilsqemu.c | 8 +++----- 9 files changed, 16 insertions(+), 38 deletions(-)
Reviewed-by: Ján Tomko <jtomko@redhat.com> Jano

Both functions always return 0. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_capabilities.c | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 35f8e9828a..826293a879 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1885,7 +1885,7 @@ virQEMUCapsHostCPUDataClear(virQEMUCapsHostCPUData *cpuData) } -static int +static void virQEMUCapsSEVInfoCopy(virSEVCapability **dst, virSEVCapability *src) { @@ -1893,7 +1893,7 @@ virQEMUCapsSEVInfoCopy(virSEVCapability **dst, if (!src) { *dst = NULL; - return 0; + return; } tmp = g_new0(virSEVCapability, 1); @@ -1910,11 +1910,10 @@ virQEMUCapsSEVInfoCopy(virSEVCapability **dst, tmp->max_es_guests = src->max_es_guests; *dst = g_steal_pointer(&tmp); - return 0; } -static int +static void virQEMUCapsSGXInfoCopy(virSGXCapability **dst, virSGXCapability *src) { @@ -1922,7 +1921,7 @@ virQEMUCapsSGXInfoCopy(virSGXCapability **dst, if (!src) { *dst = NULL; - return 0; + return; } tmp = g_new0(virSGXCapability, 1); @@ -1940,7 +1939,6 @@ virQEMUCapsSGXInfoCopy(virSGXCapability **dst, } *dst = g_steal_pointer(&tmp); - return 0; } @@ -2017,16 +2015,11 @@ virQEMUCaps *virQEMUCapsNewCopy(virQEMUCaps *qemuCaps) for (i = 0; i < qemuCaps->ngicCapabilities; i++) ret->gicCapabilities[i] = qemuCaps->gicCapabilities[i]; - if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_SEV_GUEST) && - virQEMUCapsSEVInfoCopy(&ret->sevCapabilities, - qemuCaps->sevCapabilities) < 0) - return NULL; - + if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_SEV_GUEST)) + virQEMUCapsSEVInfoCopy(&ret->sevCapabilities, qemuCaps->sevCapabilities); - if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_SGX_EPC) && - virQEMUCapsSGXInfoCopy(&ret->sgxCapabilities, - qemuCaps->sgxCapabilities) < 0) - return NULL; + if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_SGX_EPC)) + virQEMUCapsSGXInfoCopy(&ret->sgxCapabilities, qemuCaps->sgxCapabilities); ret->hypervCapabilities = g_memdup(qemuCaps->hypervCapabilities, sizeof(virDomainCapsFeatureHyperv)); -- 2.39.2

Do the two fixups of CPU as one block and split up the return value checks to separate conditions. This will make the upcoming refactors simpler. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_domain.c | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index a44ac83295..74e20c4edb 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -10758,8 +10758,6 @@ int qemuDomainFixupCPUs(virDomainObj *vm, virCPUDef **origCPU) { - g_autoptr(virCPUDef) fixedCPU = NULL; - g_autoptr(virCPUDef) fixedOrig = NULL; virArch arch = vm->def->os.arch; if (!ARCH_IS_X86(arch)) @@ -10777,24 +10775,30 @@ qemuDomainFixupCPUs(virDomainObj *vm, if (!*origCPU) return 0; - if (virCPUDefFindFeature(vm->def->cpu, "cmt") && - (!(fixedCPU = virCPUDefCopyWithoutModel(vm->def->cpu)) || - virCPUDefCopyModelFilter(fixedCPU, vm->def->cpu, false, - virQEMUCapsCPUFilterFeatures, &arch) < 0)) - return -1; + if (virCPUDefFindFeature(vm->def->cpu, "cmt")) { + g_autoptr(virCPUDef) fixedCPU = virCPUDefCopyWithoutModel(vm->def->cpu); - if (virCPUDefFindFeature(*origCPU, "cmt") && - (!(fixedOrig = virCPUDefCopyWithoutModel(*origCPU)) || - virCPUDefCopyModelFilter(fixedOrig, *origCPU, false, - virQEMUCapsCPUFilterFeatures, &arch) < 0)) - return -1; + if (!fixedCPU) + return -1; + + if (virCPUDefCopyModelFilter(fixedCPU, vm->def->cpu, false, + virQEMUCapsCPUFilterFeatures, &arch) < 0) + return -1; - if (fixedCPU) { virCPUDefFree(vm->def->cpu); vm->def->cpu = g_steal_pointer(&fixedCPU); } - if (fixedOrig) { + if (virCPUDefFindFeature(*origCPU, "cmt")) { + g_autoptr(virCPUDef) fixedOrig = virCPUDefCopyWithoutModel(*origCPU); + + if (!fixedOrig) + return -1; + + if (virCPUDefCopyModelFilter(fixedOrig, *origCPU, false, + virQEMUCapsCPUFilterFeatures, &arch) < 0) + return -1; + virCPUDefFree(*origCPU); *origCPU = g_steal_pointer(&fixedOrig); } -- 2.39.2

The functions were always returning 0. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/conf/cpu_conf.c | 11 ++++------- src/conf/cpu_conf.h | 4 ++-- src/cpu/cpu_arm.c | 3 +-- src/cpu/cpu_s390.c | 3 +-- src/cpu/cpu_x86.c | 11 +++++------ src/qemu/qemu_capabilities.c | 10 ++++------ src/qemu/qemu_domain.c | 10 ++++------ src/qemu/qemu_driver.c | 9 +++------ src/qemu/qemu_process.c | 8 ++++---- 9 files changed, 28 insertions(+), 41 deletions(-) diff --git a/src/conf/cpu_conf.c b/src/conf/cpu_conf.c index a33f39ef31..1227db1201 100644 --- a/src/conf/cpu_conf.c +++ b/src/conf/cpu_conf.c @@ -140,16 +140,16 @@ virCPUDefFree(virCPUDef *def) } -int ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2) +void ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2) virCPUDefCopyModel(virCPUDef *dst, const virCPUDef *src, bool resetPolicy) { - return virCPUDefCopyModelFilter(dst, src, resetPolicy, NULL, NULL); + virCPUDefCopyModelFilter(dst, src, resetPolicy, NULL, NULL); } -int +void virCPUDefCopyModelFilter(virCPUDef *dst, const virCPUDef *src, bool resetPolicy, @@ -185,8 +185,6 @@ virCPUDefCopyModelFilter(virCPUDef *dst, dst->features[n].name = g_strdup(src->features[i].name); } - - return 0; } @@ -281,8 +279,7 @@ virCPUDefCopy(const virCPUDef *cpu) if (!(copy = virCPUDefCopyWithoutModel(cpu))) return NULL; - if (virCPUDefCopyModel(copy, cpu, false) < 0) - return NULL; + virCPUDefCopyModel(copy, cpu, false); return g_steal_pointer(©); } diff --git a/src/conf/cpu_conf.h b/src/conf/cpu_conf.h index 113d349708..5d69b4d2e0 100644 --- a/src/conf/cpu_conf.h +++ b/src/conf/cpu_conf.h @@ -175,7 +175,7 @@ void virCPUDefFree(virCPUDef *def); G_DEFINE_AUTOPTR_CLEANUP_FUNC(virCPUDef, virCPUDefFree); -int ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2) +void ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2) virCPUDefCopyModel(virCPUDef *dst, const virCPUDef *src, bool resetPolicy); @@ -187,7 +187,7 @@ typedef bool (*virCPUDefFeatureFilter)(const char *name, virCPUFeaturePolicy policy, void *opaque); -int +void virCPUDefCopyModelFilter(virCPUDef *dst, const virCPUDef *src, bool resetPolicy, diff --git a/src/cpu/cpu_arm.c b/src/cpu/cpu_arm.c index 3ec06edef4..a890ed6ba3 100644 --- a/src/cpu/cpu_arm.c +++ b/src/cpu/cpu_arm.c @@ -465,8 +465,7 @@ virCPUarmUpdate(virCPUDef *guest, return -1; updated->mode = VIR_CPU_MODE_CUSTOM; - if (virCPUDefCopyModel(updated, host, true) < 0) - return -1; + virCPUDefCopyModel(updated, host, true); virCPUDefStealModel(guest, updated, false); guest->mode = VIR_CPU_MODE_CUSTOM; diff --git a/src/cpu/cpu_s390.c b/src/cpu/cpu_s390.c index 81a1513ecb..0f3b5c6820 100644 --- a/src/cpu/cpu_s390.c +++ b/src/cpu/cpu_s390.c @@ -72,8 +72,7 @@ virCPUs390Update(virCPUDef *guest, return -1; updated->mode = VIR_CPU_MODE_CUSTOM; - if (virCPUDefCopyModel(updated, host, true) < 0) - return -1; + virCPUDefCopyModel(updated, host, true); for (i = 0; i < guest->nfeatures; i++) { if (virCPUDefUpdateFeature(updated, diff --git a/src/cpu/cpu_x86.c b/src/cpu/cpu_x86.c index c6323ce8c7..2fede8e5fa 100644 --- a/src/cpu/cpu_x86.c +++ b/src/cpu/cpu_x86.c @@ -2943,8 +2943,7 @@ x86UpdateHostModel(virCPUDef *guest, updated->type = VIR_CPU_TYPE_GUEST; updated->mode = VIR_CPU_MODE_CUSTOM; - if (virCPUDefCopyModel(updated, host, true) < 0) - return -1; + virCPUDefCopyModel(updated, host, true); if (guest->vendor_id) { g_free(updated->vendor_id); @@ -3257,7 +3256,9 @@ virCPUx86ExpandFeatures(virCPUDef *cpu) virCPUDefFreeModel(cpu); - return virCPUDefCopyModel(cpu, expanded, false); + virCPUDefCopyModel(cpu, expanded, false); + + return 0; } @@ -3282,9 +3283,7 @@ virCPUx86CopyMigratable(virCPUDef *cpu) if (!(copy = virCPUDefCopyWithoutModel(cpu))) return NULL; - if (virCPUDefCopyModelFilter(copy, cpu, false, - x86FeatureFilterMigratable, map) < 0) - return NULL; + virCPUDefCopyModelFilter(copy, cpu, false, x86FeatureFilterMigratable, map); return g_steal_pointer(©); } diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 826293a879..9fe6579dfe 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -3852,13 +3852,11 @@ virQEMUCapsInitHostCPUModel(virQEMUCaps *qemuCaps, VIR_DEBUG("No host CPU model info from QEMU; probing host CPU directly"); cpuModels = virQEMUCapsGetCPUModels(qemuCaps, type, NULL, NULL); - hostCPU = virQEMUCapsProbeHostCPU(hostArch, cpuModels); - - if (!hostCPU || - virCPUDefCopyModelFilter(cpu, hostCPU, true, - virQEMUCapsCPUFilterFeatures, - &qemuCaps->arch) < 0) + if (!(hostCPU = virQEMUCapsProbeHostCPU(hostArch, cpuModels))) goto error; + + virCPUDefCopyModelFilter(cpu, hostCPU, true, virQEMUCapsCPUFilterFeatures, + &qemuCaps->arch); } else if (rc == 2) { VIR_DEBUG("QEMU does not provide CPU model for arch=%s virttype=%s", virArchToString(qemuCaps->arch), diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 74e20c4edb..9791fa1dca 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -10781,9 +10781,8 @@ qemuDomainFixupCPUs(virDomainObj *vm, if (!fixedCPU) return -1; - if (virCPUDefCopyModelFilter(fixedCPU, vm->def->cpu, false, - virQEMUCapsCPUFilterFeatures, &arch) < 0) - return -1; + virCPUDefCopyModelFilter(fixedCPU, vm->def->cpu, false, + virQEMUCapsCPUFilterFeatures, &arch); virCPUDefFree(vm->def->cpu); vm->def->cpu = g_steal_pointer(&fixedCPU); @@ -10795,9 +10794,8 @@ qemuDomainFixupCPUs(virDomainObj *vm, if (!fixedOrig) return -1; - if (virCPUDefCopyModelFilter(fixedOrig, *origCPU, false, - virQEMUCapsCPUFilterFeatures, &arch) < 0) - return -1; + virCPUDefCopyModelFilter(fixedOrig, *origCPU, false, + virQEMUCapsCPUFilterFeatures, &arch); virCPUDefFree(*origCPU); *origCPU = g_steal_pointer(&fixedOrig); diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index d00eb1796f..146318c6db 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -12196,10 +12196,8 @@ qemuConnectBaselineCPU(virConnectPtr conn G_GNUC_UNUSED, if (!(cpu = virCPUDefCopyWithoutModel(baseline))) goto cleanup; - if (virCPUDefCopyModelFilter(cpu, baseline, false, - virQEMUCapsCPUFilterFeatures, - &cpus[0]->arch) < 0) - goto cleanup; + virCPUDefCopyModelFilter(cpu, baseline, false, virQEMUCapsCPUFilterFeatures, + &cpus[0]->arch); if ((flags & VIR_CONNECT_BASELINE_CPU_EXPAND_FEATURES) && virCPUExpandFeatures(cpus[0]->arch, cpu) < 0) @@ -12295,8 +12293,7 @@ qemuConnectCPUModelBaseline(virQEMUCaps *qemuCaps, baseline = g_new0(virCPUDef, 1); - if (virCPUDefCopyModel(baseline, cpus[0], false) < 0) - return NULL; + virCPUDefCopyModel(baseline, cpus[0], false); for (i = 1; i < ncpus; i++) { if (qemuMonitorGetCPUModelBaseline(proc->mon, baseline, diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 63d7e1138d..27973a2e03 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -8853,12 +8853,12 @@ qemuProcessRefreshCPU(virQEMUDriver *driver, if (!(hostmig = virCPUCopyMigratable(host->arch, host))) return -1; - if (!(cpu = virCPUDefCopyWithoutModel(hostmig)) || - virCPUDefCopyModelFilter(cpu, hostmig, false, - virQEMUCapsCPUFilterFeatures, - &host->arch) < 0) + if (!(cpu = virCPUDefCopyWithoutModel(hostmig))) return -1; + virCPUDefCopyModelFilter(cpu, hostmig, false, virQEMUCapsCPUFilterFeatures, + &host->arch); + if (virCPUUpdate(vm->def->os.arch, vm->def->cpu, cpu) < 0) return -1; -- 2.39.2

Make all callers always pass a valid pointer which in turn allows us to remove return value check from the callers. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/conf/cpu_conf.c | 7 +++---- src/conf/cpu_conf.h | 3 ++- src/cpu/cpu_arm.c | 5 +---- src/cpu/cpu_s390.c | 5 +---- src/cpu/cpu_x86.c | 13 ++++--------- src/qemu/qemu_domain.c | 6 ------ src/qemu/qemu_driver.c | 3 +-- src/qemu/qemu_process.c | 3 +-- 8 files changed, 13 insertions(+), 32 deletions(-) diff --git a/src/conf/cpu_conf.c b/src/conf/cpu_conf.c index 1227db1201..3b824e85d2 100644 --- a/src/conf/cpu_conf.c +++ b/src/conf/cpu_conf.c @@ -233,9 +233,6 @@ virCPUDefCopyWithoutModel(const virCPUDef *cpu) { g_autoptr(virCPUDef) copy = NULL; - if (!cpu) - return NULL; - copy = virCPUDefNew(); copy->type = cpu->type; copy->mode = cpu->mode; @@ -276,9 +273,11 @@ virCPUDefCopy(const virCPUDef *cpu) { g_autoptr(virCPUDef) copy = NULL; - if (!(copy = virCPUDefCopyWithoutModel(cpu))) + if (!cpu) return NULL; + copy = virCPUDefCopyWithoutModel(cpu); + virCPUDefCopyModel(copy, cpu, false); return g_steal_pointer(©); diff --git a/src/conf/cpu_conf.h b/src/conf/cpu_conf.h index 5d69b4d2e0..560b597777 100644 --- a/src/conf/cpu_conf.h +++ b/src/conf/cpu_conf.h @@ -204,7 +204,8 @@ virCPUDef * virCPUDefCopy(const virCPUDef *cpu); virCPUDef * -virCPUDefCopyWithoutModel(const virCPUDef *cpu); +virCPUDefCopyWithoutModel(const virCPUDef *cpu) + ATTRIBUTE_NONNULL(1); int virCPUDefParseXMLString(const char *xml, diff --git a/src/cpu/cpu_arm.c b/src/cpu/cpu_arm.c index a890ed6ba3..8e562bd7a3 100644 --- a/src/cpu/cpu_arm.c +++ b/src/cpu/cpu_arm.c @@ -450,7 +450,7 @@ virCPUarmUpdate(virCPUDef *guest, const virCPUDef *host, bool relative) { - g_autoptr(virCPUDef) updated = NULL; + g_autoptr(virCPUDef) updated = virCPUDefCopyWithoutModel(guest); if (!relative || guest->mode != VIR_CPU_MODE_HOST_MODEL) return 0; @@ -461,9 +461,6 @@ virCPUarmUpdate(virCPUDef *guest, return -1; } - if (!(updated = virCPUDefCopyWithoutModel(guest))) - return -1; - updated->mode = VIR_CPU_MODE_CUSTOM; virCPUDefCopyModel(updated, host, true); diff --git a/src/cpu/cpu_s390.c b/src/cpu/cpu_s390.c index 0f3b5c6820..1de5251974 100644 --- a/src/cpu/cpu_s390.c +++ b/src/cpu/cpu_s390.c @@ -44,7 +44,7 @@ virCPUs390Update(virCPUDef *guest, const virCPUDef *host, bool relative) { - g_autoptr(virCPUDef) updated = NULL; + g_autoptr(virCPUDef) updated = virCPUDefCopyWithoutModel(guest); size_t i; if (!relative) @@ -68,9 +68,6 @@ virCPUs390Update(virCPUDef *guest, return -1; } - if (!(updated = virCPUDefCopyWithoutModel(guest))) - return -1; - updated->mode = VIR_CPU_MODE_CUSTOM; virCPUDefCopyModel(updated, host, true); diff --git a/src/cpu/cpu_x86.c b/src/cpu/cpu_x86.c index 2fede8e5fa..6560b7a502 100644 --- a/src/cpu/cpu_x86.c +++ b/src/cpu/cpu_x86.c @@ -2935,12 +2935,9 @@ static int x86UpdateHostModel(virCPUDef *guest, const virCPUDef *host) { - g_autoptr(virCPUDef) updated = NULL; + g_autoptr(virCPUDef) updated = virCPUDefCopyWithoutModel(host); size_t i; - if (!(updated = virCPUDefCopyWithoutModel(host))) - return -1; - updated->type = VIR_CPU_TYPE_GUEST; updated->mode = VIR_CPU_MODE_CUSTOM; virCPUDefCopyModel(updated, host, true); @@ -3169,7 +3166,7 @@ static int virCPUx86Translate(virCPUDef *cpu, virDomainCapsCPUModels *models) { - g_autoptr(virCPUDef) translated = NULL; + g_autoptr(virCPUDef) translated = virCPUDefCopyWithoutModel(cpu); virCPUx86Map *map; g_autoptr(virCPUx86Model) model = NULL; size_t i; @@ -3191,9 +3188,6 @@ virCPUx86Translate(virCPUDef *cpu, return -1; } - if (!(translated = virCPUDefCopyWithoutModel(cpu))) - return -1; - if (x86Decode(translated, &model->data, models, NULL, false) < 0) return -1; @@ -3280,9 +3274,10 @@ virCPUx86CopyMigratable(virCPUDef *cpu) if (!(map = virCPUx86GetMap())) return NULL; - if (!(copy = virCPUDefCopyWithoutModel(cpu))) + if (!cpu) return NULL; + copy = virCPUDefCopyWithoutModel(cpu); virCPUDefCopyModelFilter(copy, cpu, false, x86FeatureFilterMigratable, map); return g_steal_pointer(©); diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 9791fa1dca..707fa92cf4 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -10778,9 +10778,6 @@ qemuDomainFixupCPUs(virDomainObj *vm, if (virCPUDefFindFeature(vm->def->cpu, "cmt")) { g_autoptr(virCPUDef) fixedCPU = virCPUDefCopyWithoutModel(vm->def->cpu); - if (!fixedCPU) - return -1; - virCPUDefCopyModelFilter(fixedCPU, vm->def->cpu, false, virQEMUCapsCPUFilterFeatures, &arch); @@ -10791,9 +10788,6 @@ qemuDomainFixupCPUs(virDomainObj *vm, if (virCPUDefFindFeature(*origCPU, "cmt")) { g_autoptr(virCPUDef) fixedOrig = virCPUDefCopyWithoutModel(*origCPU); - if (!fixedOrig) - return -1; - virCPUDefCopyModelFilter(fixedOrig, *origCPU, false, virQEMUCapsCPUFilterFeatures, &arch); diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 146318c6db..e64a061843 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -12193,8 +12193,7 @@ qemuConnectBaselineCPU(virConnectPtr conn G_GNUC_UNUSED, !!(flags & VIR_CONNECT_BASELINE_CPU_MIGRATABLE)))) goto cleanup; - if (!(cpu = virCPUDefCopyWithoutModel(baseline))) - goto cleanup; + cpu = virCPUDefCopyWithoutModel(baseline); virCPUDefCopyModelFilter(cpu, baseline, false, virQEMUCapsCPUFilterFeatures, &cpus[0]->arch); diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 27973a2e03..eb1797688c 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -8853,8 +8853,7 @@ qemuProcessRefreshCPU(virQEMUDriver *driver, if (!(hostmig = virCPUCopyMigratable(host->arch, host))) return -1; - if (!(cpu = virCPUDefCopyWithoutModel(hostmig))) - return -1; + cpu = virCPUDefCopyWithoutModel(hostmig); virCPUDefCopyModelFilter(cpu, hostmig, false, virQEMUCapsCPUFilterFeatures, &host->arch); -- 2.39.2

Make all callers always pass a valid pointer which in turn allows us to remove return value check from the callers. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/conf/cpu_conf.c | 7 +------ src/conf/cpu_conf.h | 3 ++- src/cpu/cpu_ppc64.c | 8 ++++++-- src/cpu/cpu_x86.c | 5 +---- src/qemu/qemu_capabilities.c | 20 +++++++++----------- src/qemu/qemu_migration_cookie.c | 3 +-- src/qemu/qemu_process.c | 3 +-- tests/testutilsqemu.c | 11 +++++------ 8 files changed, 26 insertions(+), 34 deletions(-) diff --git a/src/conf/cpu_conf.c b/src/conf/cpu_conf.c index 3b824e85d2..9f5e8cb848 100644 --- a/src/conf/cpu_conf.c +++ b/src/conf/cpu_conf.c @@ -271,12 +271,7 @@ virCPUDefCopyWithoutModel(const virCPUDef *cpu) virCPUDef * virCPUDefCopy(const virCPUDef *cpu) { - g_autoptr(virCPUDef) copy = NULL; - - if (!cpu) - return NULL; - - copy = virCPUDefCopyWithoutModel(cpu); + g_autoptr(virCPUDef) copy = virCPUDefCopyWithoutModel(cpu); virCPUDefCopyModel(copy, cpu, false); diff --git a/src/conf/cpu_conf.h b/src/conf/cpu_conf.h index 560b597777..82083d668c 100644 --- a/src/conf/cpu_conf.h +++ b/src/conf/cpu_conf.h @@ -201,7 +201,8 @@ virCPUDefStealModel(virCPUDef *dst, bool keepVendor); virCPUDef * -virCPUDefCopy(const virCPUDef *cpu); +virCPUDefCopy(const virCPUDef *cpu) + ATTRIBUTE_NONNULL(1); virCPUDef * virCPUDefCopyWithoutModel(const virCPUDef *cpu) diff --git a/src/cpu/cpu_ppc64.c b/src/cpu/cpu_ppc64.c index 30db99cca1..a33e4da9a9 100644 --- a/src/cpu/cpu_ppc64.c +++ b/src/cpu/cpu_ppc64.c @@ -406,8 +406,12 @@ ppc64Compute(virCPUDef *host, size_t i; /* Ensure existing configurations are handled correctly */ - if (!(cpu = virCPUDefCopy(other)) || - virCPUppc64ConvertLegacy(cpu) < 0) + if (!other) + return VIR_CPU_COMPARE_ERROR; + + cpu = virCPUDefCopy(other); + + if (virCPUppc64ConvertLegacy(cpu) < 0) return VIR_CPU_COMPARE_ERROR; if (cpu->arch != VIR_ARCH_NONE) { diff --git a/src/cpu/cpu_x86.c b/src/cpu/cpu_x86.c index 6560b7a502..a8a537cbb6 100644 --- a/src/cpu/cpu_x86.c +++ b/src/cpu/cpu_x86.c @@ -3206,7 +3206,7 @@ static int virCPUx86ExpandFeatures(virCPUDef *cpu) { virCPUx86Map *map; - g_autoptr(virCPUDef) expanded = NULL; + g_autoptr(virCPUDef) expanded = virCPUDefCopy(cpu); g_autoptr(virCPUx86Model) model = NULL; bool host = cpu->type == VIR_CPU_TYPE_HOST; size_t i; @@ -3214,9 +3214,6 @@ virCPUx86ExpandFeatures(virCPUDef *cpu) if (!(map = virCPUx86GetMap())) return -1; - if (!(expanded = virCPUDefCopy(cpu))) - return -1; - virCPUDefFreeFeatures(expanded); if (!(model = x86ModelFind(map, cpu->model))) { diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 9fe6579dfe..94e6e2b914 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1857,17 +1857,14 @@ virQEMUCapsHostCPUDataCopy(virQEMUCapsHostCPUData *dst, !(dst->info = qemuMonitorCPUModelInfoCopy(src->info))) return -1; - if (src->reported && - !(dst->reported = virCPUDefCopy(src->reported))) - return -1; + if (src->reported) + dst->reported = virCPUDefCopy(src->reported); - if (src->migratable && - !(dst->migratable = virCPUDefCopy(src->migratable))) - return -1; + if (src->migratable) + dst->migratable = virCPUDefCopy(src->migratable); - if (src->full && - !(dst->full = virCPUDefCopy(src->full))) - return -1; + if (src->full) + dst->full = virCPUDefCopy(src->full); return 0; } @@ -3867,8 +3864,9 @@ virQEMUCapsInitHostCPUModel(virQEMUCaps *qemuCaps, if (!(fullCPU = virQEMUCapsProbeHostCPU(qemuCaps->arch, NULL))) goto error; - if (!(cpuExpanded = virCPUDefCopy(cpu)) || - virCPUExpandFeatures(qemuCaps->arch, cpuExpanded) < 0) + cpuExpanded = virCPUDefCopy(cpu); + + if (virCPUExpandFeatures(qemuCaps->arch, cpuExpanded) < 0) goto error; for (i = 0; i < cpuExpanded->nfeatures; i++) { diff --git a/src/qemu/qemu_migration_cookie.c b/src/qemu/qemu_migration_cookie.c index e151f33e99..26d07d1ad4 100644 --- a/src/qemu/qemu_migration_cookie.c +++ b/src/qemu/qemu_migration_cookie.c @@ -542,8 +542,7 @@ qemuMigrationCookieAddCPU(qemuMigrationCookie *mig, if (mig->cpu) return 0; - if (!(mig->cpu = virCPUDefCopy(vm->def->cpu))) - return -1; + mig->cpu = virCPUDefCopy(vm->def->cpu); if (qemuDomainMakeCPUMigratable(mig->cpu) < 0) return -1; diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index eb1797688c..d0ddf46e98 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -4469,8 +4469,7 @@ qemuProcessUpdateLiveGuestCPU(virDomainObj *vm, !def->cpu->model)) return 0; - if (!(orig = virCPUDefCopy(def->cpu))) - return -1; + orig = virCPUDefCopy(def->cpu); if ((rc = virCPUUpdateLive(def->os.arch, def->cpu, enabled, disabled)) < 0) { return -1; diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index ef78616062..672316c848 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -577,12 +577,11 @@ int qemuTestDriverInit(virQEMUDriver *driver) memset(driver, 0, sizeof(*driver)); - if (!(cpuDefault = virCPUDefCopy(&cpuDefaultData)) || - !(cpuHaswell = virCPUDefCopy(&cpuHaswellData)) || - !(cpuPower8 = virCPUDefCopy(&cpuPower8Data)) || - !(cpuPower9 = virCPUDefCopy(&cpuPower9Data)) || - !(cpuPower10 = virCPUDefCopy(&cpuPower10Data))) - return -1; + cpuDefault = virCPUDefCopy(&cpuDefaultData); + cpuHaswell = virCPUDefCopy(&cpuHaswellData); + cpuPower8 = virCPUDefCopy(&cpuPower8Data); + cpuPower9 = virCPUDefCopy(&cpuPower9Data); + cpuPower10 = virCPUDefCopy(&cpuPower10Data); if (virMutexInit(&driver->lock) < 0) return -1; -- 2.39.2

The function can't fail at this point. Remove the last outstanding pointless error check and turn the return type into 'void'. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_capabilities.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 94e6e2b914..5341f5c1da 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1849,13 +1849,12 @@ virQEMUCapsNewBinary(const char *binary) } -static int +static void virQEMUCapsHostCPUDataCopy(virQEMUCapsHostCPUData *dst, virQEMUCapsHostCPUData *src) { - if (src->info && - !(dst->info = qemuMonitorCPUModelInfoCopy(src->info))) - return -1; + if (src->info) + dst->info = qemuMonitorCPUModelInfoCopy(src->info); if (src->reported) dst->reported = virCPUDefCopy(src->reported); @@ -1865,8 +1864,6 @@ virQEMUCapsHostCPUDataCopy(virQEMUCapsHostCPUData *dst, if (src->full) dst->full = virCPUDefCopy(src->full); - - return 0; } @@ -1968,8 +1965,7 @@ virQEMUCapsAccelCopy(virQEMUCapsAccel *dst, { virQEMUCapsAccelCopyMachineTypes(dst, src); - if (virQEMUCapsHostCPUDataCopy(&dst->hostCPU, &src->hostCPU) < 0) - return -1; + virQEMUCapsHostCPUDataCopy(&dst->hostCPU, &src->hostCPU); dst->cpuModels = qemuMonitorCPUDefsCopy(src->cpuModels); -- 2.39.2

The function now always returns 0. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_capabilities.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 5341f5c1da..aba52cc10d 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1959,7 +1959,7 @@ virQEMUCapsAccelCopyMachineTypes(virQEMUCapsAccel *dst, } -static int +static void virQEMUCapsAccelCopy(virQEMUCapsAccel *dst, virQEMUCapsAccel *src) { @@ -1968,8 +1968,6 @@ virQEMUCapsAccelCopy(virQEMUCapsAccel *dst, virQEMUCapsHostCPUDataCopy(&dst->hostCPU, &src->hostCPU); dst->cpuModels = qemuMonitorCPUDefsCopy(src->cpuModels); - - return 0; } @@ -1998,10 +1996,9 @@ virQEMUCaps *virQEMUCapsNewCopy(virQEMUCaps *qemuCaps) ret->arch = qemuCaps->arch; ret->cpuData = virCPUDataNewCopy(qemuCaps->cpuData); - if (virQEMUCapsAccelCopy(&ret->kvm, &qemuCaps->kvm) < 0 || - virQEMUCapsAccelCopy(&ret->hvf, &qemuCaps->hvf) < 0 || - virQEMUCapsAccelCopy(&ret->tcg, &qemuCaps->tcg) < 0) - return NULL; + virQEMUCapsAccelCopy(&ret->kvm, &qemuCaps->kvm); + virQEMUCapsAccelCopy(&ret->hvf, &qemuCaps->hvf); + virQEMUCapsAccelCopy(&ret->tcg, &qemuCaps->tcg); ret->gicCapabilities = g_new0(virGICCapability, qemuCaps->ngicCapabilities); ret->ngicCapabilities = qemuCaps->ngicCapabilities; -- 2.39.2

The function now can't fail. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_capabilities.c | 3 --- tests/qemucapabilitiestest.c | 3 +-- tests/testutilsqemu.c | 10 ++-------- 3 files changed, 3 insertions(+), 13 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index aba52cc10d..e7f7a6af4c 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -6055,9 +6055,6 @@ virQEMUCapsCacheLookupCopy(virFileCache *cache, ret = virQEMUCapsNewCopy(qemuCaps); virObjectUnref(qemuCaps); - if (!ret) - return NULL; - virQEMUCapsFilterByMachineType(ret, virtType, machineType); return ret; } diff --git a/tests/qemucapabilitiestest.c b/tests/qemucapabilitiestest.c index 58beeb48cb..5be37a8380 100644 --- a/tests/qemucapabilitiestest.c +++ b/tests/qemucapabilitiestest.c @@ -150,8 +150,7 @@ testQemuCapsCopy(const void *opaque) virArchFromString(data->archName), capsFile))) return -1; - if (!(copy = virQEMUCapsNewCopy(orig))) - return -1; + copy = virQEMUCapsNewCopy(orig); if (!(actual = virQEMUCapsFormatCache(copy))) return -1; diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index 672316c848..b78634a436 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -514,9 +514,7 @@ qemuTestCapsCacheInsertImpl(virFileCache *cache, if (qemu_emulators[arch]) { /* if we are dealing with fake caps we need to populate machine types */ if (!virQEMUCapsHasMachines(caps)) { - if (!(copyCaps = effCaps = virQEMUCapsNewCopy(caps))) - return -1; - + copyCaps = effCaps = virQEMUCapsNewCopy(caps); qemuTestCapsPopulateFakeMachines(copyCaps, arch, hostOS); } @@ -538,9 +536,6 @@ qemuTestCapsCacheInsertImpl(virFileCache *cache, else tmp = virQEMUCapsNew(); - if (!tmp) - return -1; - qemuTestCapsPopulateFakeMachines(tmp, i, hostOS); if (qemuTestCapsCacheInsertData(cache, qemu_emulators[i], tmp) < 0) @@ -988,8 +983,7 @@ testQemuInfoInitArgs(struct testQemuInfo *info) g_hash_table_insert(info->conf->capscache, g_strdup(capsfile), cachedcaps); } - if (!(info->qemuCaps = virQEMUCapsNewCopy(cachedcaps))) - return -1; + info->qemuCaps = virQEMUCapsNewCopy(cachedcaps); if (info->args.fakeCapsUsed) { size_t i; -- 2.39.2

There's just one case when we're populating the cache with empty caps so that can allocate a dummy virQEMUCaps object rather than having the logic inside qemuTestCapsCacheInsertImpl. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/testutilsqemu.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index b78634a436..18a9ca5ee1 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -492,7 +492,7 @@ qemuTestCapsCacheInsertImpl(virFileCache *cache, { size_t i; - if (caps && virQEMUCapsGetArch(caps) != VIR_ARCH_NONE) { + if (virQEMUCapsGetArch(caps) != VIR_ARCH_NONE) { /* all tests using real caps or arcitecture are expected to call: * * virFileCacheClear(driver.qemuCapsCache); @@ -531,10 +531,7 @@ qemuTestCapsCacheInsertImpl(virFileCache *cache, if (qemu_emulators[i] == NULL) continue; - if (caps) - tmp = virQEMUCapsNewCopy(caps); - else - tmp = virQEMUCapsNew(); + tmp = virQEMUCapsNewCopy(caps); qemuTestCapsPopulateFakeMachines(tmp, i, hostOS); @@ -569,6 +566,7 @@ int qemuTestDriverInit(virQEMUDriver *driver) virSecurityManager *mgr = NULL; char statedir[] = STATEDIRTEMPLATE; char configdir[] = CONFIGDIRTEMPLATE; + g_autoptr(virQEMUCaps) emptyCaps = NULL; memset(driver, 0, sizeof(*driver)); @@ -625,7 +623,9 @@ int qemuTestDriverInit(virQEMUDriver *driver) if (!driver->xmlopt) goto error; - if (qemuTestCapsCacheInsert(driver->qemuCapsCache, NULL) < 0) + /* Populate the capabilities cache with fake empty caps */ + emptyCaps = virQEMUCapsNew(); + if (qemuTestCapsCacheInsert(driver->qemuCapsCache, emptyCaps) < 0) goto error; if (!(mgr = virSecurityManagerNew("none", "qemu", -- 2.39.2

Rather that populate a virQEMUCaps object we now populate a bitmap with the fake capabilities and transfer it into the virQEMUCaps later. This unifies the code paths between the fully fake caps tests and real caps + fake flags. Also the same approach will be used in upcomming patch to add possibility to mask out flags from real capabilities. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/testutilsqemu.c | 25 +++++++++---------------- tests/testutilsqemu.h | 3 +-- 2 files changed, 10 insertions(+), 18 deletions(-) diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index 18a9ca5ee1..55de4bcdc6 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -837,8 +837,6 @@ testQemuInfoSetArgs(struct testQemuInfo *info, testQemuInfoArgName argname; int flag; - info->args.fakeCaps = virQEMUCapsNew(); - info->conf = conf; info->args.newargs = true; @@ -846,10 +844,11 @@ testQemuInfoSetArgs(struct testQemuInfo *info, while ((argname = va_arg(argptr, testQemuInfoArgName)) != ARG_END) { switch (argname) { case ARG_QEMU_CAPS: - info->args.fakeCapsUsed = true; + if (!(info->args.fakeCapsAdd)) + info->args.fakeCapsAdd = virBitmapNew(QEMU_CAPS_LAST); while ((flag = va_arg(argptr, int)) < QEMU_CAPS_LAST) - virQEMUCapsSet(info->args.fakeCaps, flag); + ignore_value(virBitmapSetBit(info->args.fakeCapsAdd, flag)); break; case ARG_GIC: @@ -938,6 +937,7 @@ int testQemuInfoInitArgs(struct testQemuInfo *info) { g_autofree char *capsfile = NULL; + ssize_t cap; if (!info->args.newargs) return 0; @@ -985,16 +985,6 @@ testQemuInfoInitArgs(struct testQemuInfo *info) info->qemuCaps = virQEMUCapsNewCopy(cachedcaps); - if (info->args.fakeCapsUsed) { - size_t i; - for (i = 0; i < QEMU_CAPS_LAST; i++) { - if (virQEMUCapsGet(info->args.fakeCaps, i)) { - virQEMUCapsSet(info->qemuCaps, i); - } - } - } - - if (stripmachinealiases) virQEMUCapsStripMachineAliases(info->qemuCaps); @@ -1004,9 +994,12 @@ testQemuInfoInitArgs(struct testQemuInfo *info) capsfile[strlen(capsfile) - 3] = '\0'; info->schemafile = g_strdup_printf("%sreplies", capsfile); } else { - info->qemuCaps = g_steal_pointer(&info->args.fakeCaps); + info->qemuCaps = virQEMUCapsNew(); } + for (cap = -1; (cap = virBitmapNextSetBit(info->args.fakeCapsAdd, cap)) >= 0;) + virQEMUCapsSet(info->qemuCaps, cap); + if (info->args.gic != GIC_NONE && testQemuCapsSetGIC(info->qemuCaps, info->args.gic) < 0) return -1; @@ -1023,7 +1016,7 @@ testQemuInfoClear(struct testQemuInfo *info) VIR_FREE(info->schemafile); VIR_FREE(info->errfile); virObjectUnref(info->qemuCaps); - g_clear_pointer(&info->args.fakeCaps, virObjectUnref); + g_clear_pointer(&info->args.fakeCapsAdd, virBitmapFree); g_clear_pointer(&info->args.fds, g_hash_table_unref); } diff --git a/tests/testutilsqemu.h b/tests/testutilsqemu.h index 51c072cb13..f272e6d41d 100644 --- a/tests/testutilsqemu.h +++ b/tests/testutilsqemu.h @@ -81,8 +81,7 @@ typedef enum { struct testQemuArgs { bool newargs; - virQEMUCaps *fakeCaps; - bool fakeCapsUsed; + virBitmap *fakeCapsAdd; char *capsver; char *capsarch; qemuTestCPUDef capsHostCPUModel; -- 2.39.2

In certain cases we want to use as-real capabilities as possible but that doesn't allow testing certain fallback scenarios of features that can be complied out of QEMU. ARG_QEMU_CAPS_DEL can be used similarly to ARG_QEMU_CAPS but the flag arguments are actually masked out of the resulting caps. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/testutilsqemu.c | 12 ++++++++++++ tests/testutilsqemu.h | 2 ++ 2 files changed, 14 insertions(+) diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index 55de4bcdc6..54fa347d18 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -851,6 +851,14 @@ testQemuInfoSetArgs(struct testQemuInfo *info, ignore_value(virBitmapSetBit(info->args.fakeCapsAdd, flag)); break; + case ARG_QEMU_CAPS_DEL: + if (!(info->args.fakeCapsDel)) + info->args.fakeCapsDel = virBitmapNew(QEMU_CAPS_LAST); + + while ((flag = va_arg(argptr, int)) < QEMU_CAPS_LAST) + ignore_value(virBitmapSetBit(info->args.fakeCapsDel, flag)); + break; + case ARG_GIC: info->args.gic = va_arg(argptr, int); break; @@ -1000,6 +1008,9 @@ testQemuInfoInitArgs(struct testQemuInfo *info) for (cap = -1; (cap = virBitmapNextSetBit(info->args.fakeCapsAdd, cap)) >= 0;) virQEMUCapsSet(info->qemuCaps, cap); + for (cap = -1; (cap = virBitmapNextSetBit(info->args.fakeCapsDel, cap)) >= 0;) + virQEMUCapsClear(info->qemuCaps, cap); + if (info->args.gic != GIC_NONE && testQemuCapsSetGIC(info->qemuCaps, info->args.gic) < 0) return -1; @@ -1017,6 +1028,7 @@ testQemuInfoClear(struct testQemuInfo *info) VIR_FREE(info->errfile); virObjectUnref(info->qemuCaps); g_clear_pointer(&info->args.fakeCapsAdd, virBitmapFree); + g_clear_pointer(&info->args.fakeCapsDel, virBitmapFree); g_clear_pointer(&info->args.fds, g_hash_table_unref); } diff --git a/tests/testutilsqemu.h b/tests/testutilsqemu.h index f272e6d41d..11bdd2fd2f 100644 --- a/tests/testutilsqemu.h +++ b/tests/testutilsqemu.h @@ -43,6 +43,7 @@ typedef enum { typedef enum { ARG_QEMU_CAPS = QEMU_CAPS_LAST + 1, + ARG_QEMU_CAPS_DEL, ARG_GIC, ARG_MIGRATE_FROM, ARG_MIGRATE_FD, @@ -82,6 +83,7 @@ typedef enum { struct testQemuArgs { bool newargs; virBitmap *fakeCapsAdd; + virBitmap *fakeCapsDel; char *capsver; char *capsarch; qemuTestCPUDef capsHostCPUModel; -- 2.39.2

Preserve testing of the MMIO use case in case when GPEX is complied out of qemu. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- ...s => riscv64-virt-pci.riscv64-latest.args} | 8 +++++--- ....args => riscv64-virt.riscv64-latest.args} | 10 ++++++---- tests/qemuxml2argvtest.c | 10 ++++++---- ...ml => riscv64-virt-pci.riscv64-latest.xml} | 0 ...rt.xml => riscv64-virt.riscv64-latest.xml} | 20 +++++++++++++++++-- tests/qemuxml2xmltest.c | 6 ++---- 6 files changed, 37 insertions(+), 17 deletions(-) rename tests/qemuxml2argvdata/{riscv64-virt-pci.args => riscv64-virt-pci.riscv64-latest.args} (67%) rename tests/qemuxml2argvdata/{riscv64-virt.args => riscv64-virt.riscv64-latest.args} (67%) rename tests/qemuxml2xmloutdata/{riscv64-virt-pci.xml => riscv64-virt-pci.riscv64-latest.xml} (100%) rename tests/qemuxml2xmloutdata/{riscv64-virt.xml => riscv64-virt.riscv64-latest.xml} (53%) diff --git a/tests/qemuxml2argvdata/riscv64-virt-pci.args b/tests/qemuxml2argvdata/riscv64-virt-pci.riscv64-latest.args similarity index 67% rename from tests/qemuxml2argvdata/riscv64-virt-pci.args rename to tests/qemuxml2argvdata/riscv64-virt-pci.riscv64-latest.args index d981bfe2c7..b6c16591ee 100644 --- a/tests/qemuxml2argvdata/riscv64-virt-pci.args +++ b/tests/qemuxml2argvdata/riscv64-virt-pci.riscv64-latest.args @@ -9,10 +9,11 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-riscv64/.config \ /usr/bin/qemu-system-riscv64 \ -name guest=riscv64,debug-threads=on \ -S \ --object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-riscv64/master-key.aes \ --machine virt,usb=off,dump-guest-core=off \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-riscv64/master-key.aes"}' \ +-machine virt,usb=off,dump-guest-core=off,memory-backend=riscv_virt_board.ram \ -accel tcg \ -m 2048 \ +-object '{"qom-type":"memory-backend-ram","id":"riscv_virt_board.ram","size":2147483648}' \ -overcommit mem-lock=off \ -smp 1,sockets=1,cores=1,threads=1 \ -uuid fd65fc03-8838-4c4d-9d8d-395802488790 \ @@ -28,6 +29,7 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-riscv64/.config \ -append root=/dev/vda \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/riscv64.qcow2","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \ -blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"qcow2","file":"libvirt-1-storage"}' \ --device virtio-blk-pci,bus=pcie.0,addr=0x1,drive=libvirt-1-format,id=virtio-disk0,bootindex=1 \ +-device '{"driver":"virtio-blk-pci","bus":"pcie.0","addr":"0x1","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -audiodev '{"id":"audio1","driver":"none"}' \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/riscv64-virt.args b/tests/qemuxml2argvdata/riscv64-virt.riscv64-latest.args similarity index 67% rename from tests/qemuxml2argvdata/riscv64-virt.args rename to tests/qemuxml2argvdata/riscv64-virt.riscv64-latest.args index 05f8752120..3a770d77ff 100644 --- a/tests/qemuxml2argvdata/riscv64-virt.args +++ b/tests/qemuxml2argvdata/riscv64-virt.riscv64-latest.args @@ -9,10 +9,11 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-riscv64/.config \ /usr/bin/qemu-system-riscv64 \ -name guest=riscv64,debug-threads=on \ -S \ --object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-riscv64/master-key.aes \ --machine virt,usb=off,dump-guest-core=off \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-riscv64/master-key.aes"}' \ +-machine virt,usb=off,dump-guest-core=off,memory-backend=riscv_virt_board.ram \ -accel tcg \ -m 2048 \ +-object '{"qom-type":"memory-backend-ram","id":"riscv_virt_board.ram","size":2147483648}' \ -overcommit mem-lock=off \ -smp 1,sockets=1,cores=1,threads=1 \ -uuid fd65fc03-8838-4c4d-9d8d-395802488790 \ @@ -28,9 +29,10 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-riscv64/.config \ -append 'console=ttyS0 ro root=/dev/vda' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/stage4-disk.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 virtio-blk-device,drive=libvirt-1-format,id=virtio-disk0,bootindex=1 \ +-device '{"driver":"virtio-blk-device","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -chardev pty,id=charserial0 \ -serial chardev:charserial0 \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-device,id=balloon0 \ +-device '{"driver":"virtio-balloon-device","id":"balloon0"}' \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ -msg timestamp=on diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 90d96f2109..db846c1ea4 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2911,10 +2911,12 @@ mymain(void) DO_TEST_CAPS_LATEST("vhost-user-fs-hugepages"); DO_TEST_CAPS_LATEST_PARSE_ERROR("vhost-user-fs-readonly"); - DO_TEST("riscv64-virt", - QEMU_CAPS_DEVICE_VIRTIO_MMIO); - DO_TEST("riscv64-virt-pci", - QEMU_CAPS_OBJECT_GPEX); + /* The generic pcie bridge emulation device can be compiled out of qemu. */ + DO_TEST_CAPS_ARCH_LATEST_FULL("riscv64-virt", "riscv64", + ARG_QEMU_CAPS_DEL, + QEMU_CAPS_OBJECT_GPEX, + QEMU_CAPS_LAST); + DO_TEST_CAPS_ARCH_LATEST("riscv64-virt-pci", "riscv64"); DO_TEST_CAPS_LATEST("virtio-transitional"); DO_TEST_CAPS_LATEST("virtio-non-transitional"); diff --git a/tests/qemuxml2xmloutdata/riscv64-virt-pci.xml b/tests/qemuxml2xmloutdata/riscv64-virt-pci.riscv64-latest.xml similarity index 100% rename from tests/qemuxml2xmloutdata/riscv64-virt-pci.xml rename to tests/qemuxml2xmloutdata/riscv64-virt-pci.riscv64-latest.xml diff --git a/tests/qemuxml2xmloutdata/riscv64-virt.xml b/tests/qemuxml2xmloutdata/riscv64-virt.riscv64-latest.xml similarity index 53% rename from tests/qemuxml2xmloutdata/riscv64-virt.xml rename to tests/qemuxml2xmloutdata/riscv64-virt.riscv64-latest.xml index 8a5c5dd985..9868f3ae12 100644 --- a/tests/qemuxml2xmloutdata/riscv64-virt.xml +++ b/tests/qemuxml2xmloutdata/riscv64-virt.riscv64-latest.xml @@ -20,8 +20,24 @@ <driver name='qemu' type='raw'/> <source file='/var/lib/libvirt/images/stage4-disk.img'/> <target dev='vda' bus='virtio'/> - <address type='virtio-mmio'/> + <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> </disk> + <controller type='pci' index='0' model='pcie-root'/> + <controller type='pci' index='1' model='pcie-root-port'> + <model name='pcie-root-port'/> + <target chassis='1' port='0x8'/> + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0' multifunction='on'/> + </controller> + <controller type='pci' index='2' model='pcie-root-port'> + <model name='pcie-root-port'/> + <target chassis='2' port='0x9'/> + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> + </controller> + <controller type='pci' index='3' model='pcie-root-port'> + <model name='pcie-root-port'/> + <target chassis='3' port='0xa'/> + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> + </controller> <serial type='pty'> <target type='system-serial' port='0'> <model name='16550a'/> @@ -32,7 +48,7 @@ </console> <audio id='1' type='none'/> <memballoon model='virtio'> - <address type='virtio-mmio'/> + <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/> </memballoon> </devices> </domain> diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 787e51956f..c29734f086 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -1176,10 +1176,8 @@ mymain(void) DO_TEST_CAPS_LATEST("vhost-user-fs-hugepages"); DO_TEST_CAPS_LATEST("vhost-user-fs-sock"); - DO_TEST("riscv64-virt", - QEMU_CAPS_DEVICE_VIRTIO_MMIO); - DO_TEST("riscv64-virt-pci", - QEMU_CAPS_OBJECT_GPEX); + DO_TEST_CAPS_ARCH_LATEST("riscv64-virt", "riscv64"); + DO_TEST_CAPS_ARCH_LATEST("riscv64-virt-pci", "riscv64"); DO_TEST_CAPS_LATEST("x86-kvm-32-on-64"); -- 2.39.2

All tests were converted to use real capabilities so there's no need to support the infrastructure for fake tests. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/testutilsqemu.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index 54fa347d18..1f1f5ef97c 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -32,7 +32,6 @@ static const char *qemu_emulators[VIR_ARCH_LAST] = { [VIR_ARCH_ARMV7L] = "/usr/bin/qemu-system-arm", [VIR_ARCH_PPC64] = "/usr/bin/qemu-system-ppc64", [VIR_ARCH_PPC] = "/usr/bin/qemu-system-ppc", - [VIR_ARCH_RISCV64] = "/usr/bin/qemu-system-riscv64", [VIR_ARCH_S390X] = "/usr/bin/qemu-system-s390x", }; @@ -60,9 +59,6 @@ static const char *const ppc64_machines[] = { static const char *const ppc_machines[] = { "ppce500", NULL }; -static const char *const riscv64_machines[] = { - "virt", NULL -}; static const char *const s390x_machines[] = { "s390-ccw-virtio", NULL }; @@ -74,7 +70,6 @@ static const char *const *qemu_machines[VIR_ARCH_LAST] = { [VIR_ARCH_ARMV7L] = arm_machines, [VIR_ARCH_PPC64] = ppc64_machines, [VIR_ARCH_PPC] = ppc_machines, - [VIR_ARCH_RISCV64] = riscv64_machines, [VIR_ARCH_S390X] = s390x_machines, }; -- 2.39.2

The data are obtained from a x86_64 machine thus don't really represent physical hardware, but it's better than nothing. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/domaincapsdata/qemu_7.2.0.ppc.xml | 158 + .../caps_7.2.0.ppc.replies | 32233 ++++++++++++++++ tests/qemucapabilitiesdata/caps_7.2.0.ppc.xml | 559 + tests/qemucaps2xmloutdata/caps.ppc.xml | 25 + tests/testutilshostcpus.h | 10 + tests/testutilsqemu.c | 1 + 6 files changed, 32986 insertions(+) create mode 100644 tests/domaincapsdata/qemu_7.2.0.ppc.xml create mode 100644 tests/qemucapabilitiesdata/caps_7.2.0.ppc.replies create mode 100644 tests/qemucapabilitiesdata/caps_7.2.0.ppc.xml create mode 100644 tests/qemucaps2xmloutdata/caps.ppc.xml diff --git a/tests/domaincapsdata/qemu_7.2.0.ppc.xml b/tests/domaincapsdata/qemu_7.2.0.ppc.xml new file mode 100644 index 0000000000..59ace0a0b2 --- /dev/null +++ b/tests/domaincapsdata/qemu_7.2.0.ppc.xml @@ -0,0 +1,158 @@ +<domainCapabilities> + <path>/usr/bin/qemu-system-ppc</path> + <domain>kvm</domain> + <machine>g3beige</machine> + <arch>ppc</arch> + <iothreads supported='yes'/> + <os supported='yes'> + <enum name='firmware'/> + <loader supported='yes'> + <value>/usr/share/AAVMF/AAVMF_CODE.fd</value> + <value>/usr/share/AAVMF/AAVMF32_CODE.fd</value> + <value>/usr/share/OVMF/OVMF_CODE.fd</value> + <enum name='type'> + <value>rom</value> + <value>pflash</value> + </enum> + <enum name='readonly'> + <value>yes</value> + <value>no</value> + </enum> + <enum name='secure'> + <value>no</value> + </enum> + </loader> + </os> + <cpu> + <mode name='host-passthrough' supported='yes'> + <enum name='hostPassthroughMigratable'> + <value>off</value> + </enum> + </mode> + <mode name='maximum' supported='no'/> + <mode name='host-model' supported='no'/> + <mode name='custom' supported='no'/> + </cpu> + <memoryBacking supported='yes'> + <enum name='sourceType'> + <value>file</value> + <value>anonymous</value> + <value>memfd</value> + </enum> + </memoryBacking> + <devices> + <disk supported='yes'> + <enum name='diskDevice'> + <value>disk</value> + <value>cdrom</value> + <value>floppy</value> + <value>lun</value> + </enum> + <enum name='bus'> + <value>ide</value> + <value>fdc</value> + <value>scsi</value> + <value>virtio</value> + <value>usb</value> + <value>sata</value> + </enum> + <enum name='model'> + <value>virtio</value> + <value>virtio-transitional</value> + <value>virtio-non-transitional</value> + </enum> + </disk> + <graphics supported='yes'> + <enum name='type'> + <value>sdl</value> + <value>vnc</value> + <value>spice</value> + <value>egl-headless</value> + <value>dbus</value> + </enum> + </graphics> + <video supported='yes'> + <enum name='modelType'> + <value>vga</value> + <value>cirrus</value> + <value>vmvga</value> + <value>virtio</value> + <value>none</value> + <value>bochs</value> + </enum> + </video> + <hostdev supported='yes'> + <enum name='mode'> + <value>subsystem</value> + </enum> + <enum name='startupPolicy'> + <value>default</value> + <value>mandatory</value> + <value>requisite</value> + <value>optional</value> + </enum> + <enum name='subsysType'> + <value>usb</value> + <value>pci</value> + <value>scsi</value> + </enum> + <enum name='capsType'/> + <enum name='pciBackend'> + <value>default</value> + <value>vfio</value> + </enum> + </hostdev> + <rng supported='yes'> + <enum name='model'> + <value>virtio</value> + <value>virtio-transitional</value> + <value>virtio-non-transitional</value> + </enum> + <enum name='backendModel'> + <value>random</value> + <value>egd</value> + <value>builtin</value> + </enum> + </rng> + <filesystem supported='yes'> + <enum name='driverType'> + <value>path</value> + <value>handle</value> + <value>virtiofs</value> + </enum> + </filesystem> + <tpm supported='no'/> + <redirdev supported='yes'> + <enum name='bus'> + <value>usb</value> + </enum> + </redirdev> + <channel supported='yes'> + <enum name='type'> + <value>pty</value> + <value>unix</value> + <value>spicevmc</value> + </enum> + </channel> + <crypto supported='yes'> + <enum name='model'> + <value>virtio</value> + </enum> + <enum name='type'> + <value>qemu</value> + </enum> + <enum name='backendModel'> + <value>builtin</value> + </enum> + </crypto> + </devices> + <features> + <gic supported='no'/> + <vmcoreinfo supported='no'/> + <genid supported='no'/> + <backingStoreInput supported='yes'/> + <backup supported='yes'/> + <sev supported='no'/> + <sgx supported='no'/> + </features> +</domainCapabilities> diff --git a/tests/qemucapabilitiesdata/caps_7.2.0.ppc.replies b/tests/qemucapabilitiesdata/caps_7.2.0.ppc.replies new file mode 100644 index 0000000000..2df79da5a5 --- /dev/null +++ b/tests/qemucapabilitiesdata/caps_7.2.0.ppc.replies @@ -0,0 +1,32233 @@ +{ + "execute": "qmp_capabilities", + "id": "libvirt-1" +} + +{ + "return": { + }, + "id": "libvirt-1" +} + +{ + "execute": "query-version", + "id": "libvirt-2" +} + +{ + "return": { + "qemu": { + "micro": 0, + "minor": 2, + "major": 7 + }, + "package": "qemu-7.2.0-6.fc37" + }, + "id": "libvirt-2" +} + +{ + "execute": "query-target", + "id": "libvirt-3" +} + +{ + "return": { + "arch": "ppc" + }, + "id": "libvirt-3" +} + +{ + "execute": "query-qmp-schema", + "id": "libvirt-4" +} + +{ + "return": [ + { + "name": "query-status", + "ret-type": "1", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "SHUTDOWN", + "meta-type": "event", + "arg-type": "2" + }, + { + "name": "POWERDOWN", + "meta-type": "event", + "arg-type": "0" + }, + { + "name": "RESET", + "meta-type": "event", + "arg-type": "3" + }, + { + "name": "STOP", + "meta-type": "event", + "arg-type": "0" + }, + { + "name": "RESUME", + "meta-type": "event", + "arg-type": "0" + }, + { + "name": "SUSPEND", + "meta-type": "event", + "arg-type": "0" + }, + { + "name": "SUSPEND_DISK", + "meta-type": "event", + "arg-type": "0" + }, + { + "name": "WAKEUP", + "meta-type": "event", + "arg-type": "0" + }, + { + "name": "WATCHDOG", + "meta-type": "event", + "arg-type": "4" + }, + { + "name": "watchdog-set-action", + "ret-type": "0", + "meta-type": "command", + "arg-type": "5" + }, + { + "name": "set-action", + "ret-type": "0", + "meta-type": "command", + "arg-type": "6" + }, + { + "name": "GUEST_PANICKED", + "meta-type": "event", + "arg-type": "7" + }, + { + "name": "GUEST_CRASHLOADED", + "meta-type": "event", + "arg-type": "8" + }, + { + "name": "MEMORY_FAILURE", + "meta-type": "event", + "arg-type": "9" + }, + { + "name": "query-pr-managers", + "ret-type": "[10]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "eject", + "ret-type": "0", + "meta-type": "command", + "arg-type": "11" + }, + { + "name": "blockdev-open-tray", + "ret-type": "0", + "meta-type": "command", + "arg-type": "12" + }, + { + "name": "blockdev-close-tray", + "ret-type": "0", + "meta-type": "command", + "arg-type": "13" + }, + { + "name": "blockdev-remove-medium", + "ret-type": "0", + "meta-type": "command", + "arg-type": "14" + }, + { + "name": "blockdev-insert-medium", + "ret-type": "0", + "meta-type": "command", + "arg-type": "15" + }, + { + "name": "blockdev-change-medium", + "ret-type": "0", + "meta-type": "command", + "arg-type": "16" + }, + { + "name": "DEVICE_TRAY_MOVED", + "meta-type": "event", + "arg-type": "17" + }, + { + "name": "PR_MANAGER_STATUS_CHANGED", + "meta-type": "event", + "arg-type": "18" + }, + { + "name": "block_set_io_throttle", + "ret-type": "0", + "meta-type": "command", + "arg-type": "19" + }, + { + "name": "block-latency-histogram-set", + "ret-type": "0", + "meta-type": "command", + "arg-type": "20" + }, + { + "name": "query-block", + "ret-type": "[21]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-blockstats", + "ret-type": "[23]", + "meta-type": "command", + "arg-type": "22" + }, + { + "name": "query-block-jobs", + "ret-type": "[24]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "block_resize", + "ret-type": "0", + "meta-type": "command", + "arg-type": "25" + }, + { + "name": "blockdev-snapshot-sync", + "ret-type": "0", + "meta-type": "command", + "arg-type": "26" + }, + { + "name": "blockdev-snapshot", + "ret-type": "0", + "meta-type": "command", + "arg-type": "27", + "features": [ + "allow-write-only-overlay" + ] + }, + { + "name": "change-backing-file", + "ret-type": "0", + "meta-type": "command", + "arg-type": "28" + }, + { + "name": "block-commit", + "ret-type": "0", + "meta-type": "command", + "arg-type": "29" + }, + { + "name": "drive-backup", + "ret-type": "0", + "meta-type": "command", + "arg-type": "30", + "features": [ + "deprecated" + ] + }, + { + "name": "blockdev-backup", + "ret-type": "0", + "meta-type": "command", + "arg-type": "31" + }, + { + "name": "query-named-block-nodes", + "ret-type": "[33]", + "meta-type": "command", + "arg-type": "32" + }, + { + "name": "x-debug-query-block-graph", + "ret-type": "34", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "drive-mirror", + "ret-type": "0", + "meta-type": "command", + "arg-type": "35" + }, + { + "name": "block-dirty-bitmap-add", + "ret-type": "0", + "meta-type": "command", + "arg-type": "36" + }, + { + "name": "block-dirty-bitmap-remove", + "ret-type": "0", + "meta-type": "command", + "arg-type": "37" + }, + { + "name": "block-dirty-bitmap-clear", + "ret-type": "0", + "meta-type": "command", + "arg-type": "37" + }, + { + "name": "block-dirty-bitmap-enable", + "ret-type": "0", + "meta-type": "command", + "arg-type": "37" + }, + { + "name": "block-dirty-bitmap-disable", + "ret-type": "0", + "meta-type": "command", + "arg-type": "37" + }, + { + "name": "block-dirty-bitmap-merge", + "ret-type": "0", + "meta-type": "command", + "arg-type": "38" + }, + { + "name": "x-debug-block-dirty-bitmap-sha256", + "ret-type": "39", + "meta-type": "command", + "arg-type": "37", + "features": [ + "unstable" + ] + }, + { + "name": "blockdev-mirror", + "ret-type": "0", + "meta-type": "command", + "arg-type": "40" + }, + { + "name": "block-stream", + "ret-type": "0", + "meta-type": "command", + "arg-type": "41" + }, + { + "name": "block-job-set-speed", + "ret-type": "0", + "meta-type": "command", + "arg-type": "42" + }, + { + "name": "block-job-cancel", + "ret-type": "0", + "meta-type": "command", + "arg-type": "43" + }, + { + "name": "block-job-pause", + "ret-type": "0", + "meta-type": "command", + "arg-type": "44" + }, + { + "name": "block-job-resume", + "ret-type": "0", + "meta-type": "command", + "arg-type": "45" + }, + { + "name": "block-job-complete", + "ret-type": "0", + "meta-type": "command", + "arg-type": "46" + }, + { + "name": "block-job-dismiss", + "ret-type": "0", + "meta-type": "command", + "arg-type": "47" + }, + { + "name": "block-job-finalize", + "ret-type": "0", + "meta-type": "command", + "arg-type": "48" + }, + { + "name": "blockdev-add", + "ret-type": "0", + "meta-type": "command", + "arg-type": "49" + }, + { + "name": "blockdev-reopen", + "ret-type": "0", + "meta-type": "command", + "arg-type": "50" + }, + { + "name": "blockdev-del", + "ret-type": "0", + "meta-type": "command", + "arg-type": "51" + }, + { + "name": "blockdev-create", + "ret-type": "0", + "meta-type": "command", + "arg-type": "52" + }, + { + "name": "x-blockdev-amend", + "ret-type": "0", + "meta-type": "command", + "arg-type": "53", + "features": [ + "unstable" + ] + }, + { + "name": "BLOCK_IMAGE_CORRUPTED", + "meta-type": "event", + "arg-type": "54" + }, + { + "name": "BLOCK_IO_ERROR", + "meta-type": "event", + "arg-type": "55" + }, + { + "name": "BLOCK_JOB_COMPLETED", + "meta-type": "event", + "arg-type": "56" + }, + { + "name": "BLOCK_JOB_CANCELLED", + "meta-type": "event", + "arg-type": "57" + }, + { + "name": "BLOCK_JOB_ERROR", + "meta-type": "event", + "arg-type": "58" + }, + { + "name": "BLOCK_JOB_READY", + "meta-type": "event", + "arg-type": "59" + }, + { + "name": "BLOCK_JOB_PENDING", + "meta-type": "event", + "arg-type": "60" + }, + { + "name": "BLOCK_WRITE_THRESHOLD", + "meta-type": "event", + "arg-type": "61" + }, + { + "name": "block-set-write-threshold", + "ret-type": "0", + "meta-type": "command", + "arg-type": "62" + }, + { + "name": "x-blockdev-change", + "ret-type": "0", + "meta-type": "command", + "arg-type": "63", + "features": [ + "unstable" + ] + }, + { + "name": "x-blockdev-set-iothread", + "ret-type": "0", + "meta-type": "command", + "arg-type": "64", + "features": [ + "unstable" + ] + }, + { + "name": "QUORUM_FAILURE", + "meta-type": "event", + "arg-type": "65" + }, + { + "name": "QUORUM_REPORT_BAD", + "meta-type": "event", + "arg-type": "66" + }, + { + "name": "blockdev-snapshot-internal-sync", + "ret-type": "0", + "meta-type": "command", + "arg-type": "67" + }, + { + "name": "blockdev-snapshot-delete-internal-sync", + "ret-type": "69", + "meta-type": "command", + "arg-type": "68" + }, + { + "name": "JOB_STATUS_CHANGE", + "meta-type": "event", + "arg-type": "70" + }, + { + "name": "job-pause", + "ret-type": "0", + "meta-type": "command", + "arg-type": "71" + }, + { + "name": "job-resume", + "ret-type": "0", + "meta-type": "command", + "arg-type": "72" + }, + { + "name": "job-cancel", + "ret-type": "0", + "meta-type": "command", + "arg-type": "73" + }, + { + "name": "job-complete", + "ret-type": "0", + "meta-type": "command", + "arg-type": "74" + }, + { + "name": "job-dismiss", + "ret-type": "0", + "meta-type": "command", + "arg-type": "75" + }, + { + "name": "job-finalize", + "ret-type": "0", + "meta-type": "command", + "arg-type": "76" + }, + { + "name": "query-jobs", + "ret-type": "[77]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "nbd-server-start", + "ret-type": "0", + "meta-type": "command", + "arg-type": "78" + }, + { + "name": "nbd-server-add", + "ret-type": "0", + "meta-type": "command", + "arg-type": "79", + "features": [ + "deprecated" + ] + }, + { + "name": "nbd-server-remove", + "ret-type": "0", + "meta-type": "command", + "arg-type": "80", + "features": [ + "deprecated" + ] + }, + { + "name": "nbd-server-stop", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "block-export-add", + "ret-type": "0", + "meta-type": "command", + "arg-type": "81" + }, + { + "name": "block-export-del", + "ret-type": "0", + "meta-type": "command", + "arg-type": "82" + }, + { + "name": "BLOCK_EXPORT_DELETED", + "meta-type": "event", + "arg-type": "83" + }, + { + "name": "query-block-exports", + "ret-type": "[84]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-chardev", + "ret-type": "[85]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-chardev-backends", + "ret-type": "[86]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "ringbuf-write", + "ret-type": "0", + "meta-type": "command", + "arg-type": "87" + }, + { + "name": "ringbuf-read", + "ret-type": "str", + "meta-type": "command", + "arg-type": "88" + }, + { + "name": "chardev-add", + "ret-type": "90", + "meta-type": "command", + "arg-type": "89" + }, + { + "name": "chardev-change", + "ret-type": "90", + "meta-type": "command", + "arg-type": "91" + }, + { + "name": "chardev-remove", + "ret-type": "0", + "meta-type": "command", + "arg-type": "92" + }, + { + "name": "chardev-send-break", + "ret-type": "0", + "meta-type": "command", + "arg-type": "93" + }, + { + "name": "VSERPORT_CHANGE", + "meta-type": "event", + "arg-type": "94" + }, + { + "name": "dump-guest-memory", + "ret-type": "0", + "meta-type": "command", + "arg-type": "95" + }, + { + "name": "query-dump", + "ret-type": "96", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "DUMP_COMPLETED", + "meta-type": "event", + "arg-type": "97" + }, + { + "name": "query-dump-guest-memory-capability", + "ret-type": "98", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "set_link", + "ret-type": "0", + "meta-type": "command", + "arg-type": "99" + }, + { + "name": "netdev_add", + "ret-type": "0", + "meta-type": "command", + "arg-type": "100" + }, + { + "name": "netdev_del", + "ret-type": "0", + "meta-type": "command", + "arg-type": "101" + }, + { + "name": "query-rx-filter", + "ret-type": "[103]", + "meta-type": "command", + "arg-type": "102" + }, + { + "name": "NIC_RX_FILTER_CHANGED", + "meta-type": "event", + "arg-type": "104" + }, + { + "name": "announce-self", + "ret-type": "0", + "meta-type": "command", + "arg-type": "105" + }, + { + "name": "FAILOVER_NEGOTIATED", + "meta-type": "event", + "arg-type": "106" + }, + { + "name": "NETDEV_STREAM_CONNECTED", + "meta-type": "event", + "arg-type": "107" + }, + { + "name": "NETDEV_STREAM_DISCONNECTED", + "meta-type": "event", + "arg-type": "108" + }, + { + "name": "RDMA_GID_STATUS_CHANGED", + "meta-type": "event", + "arg-type": "109" + }, + { + "name": "query-rocker", + "ret-type": "111", + "meta-type": "command", + "arg-type": "110" + }, + { + "name": "query-rocker-ports", + "ret-type": "[113]", + "meta-type": "command", + "arg-type": "112" + }, + { + "name": "query-rocker-of-dpa-flows", + "ret-type": "[115]", + "meta-type": "command", + "arg-type": "114" + }, + { + "name": "query-rocker-of-dpa-groups", + "ret-type": "[117]", + "meta-type": "command", + "arg-type": "116" + }, + { + "name": "query-tpm-models", + "ret-type": "[118]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-tpm-types", + "ret-type": "[119]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-tpm", + "ret-type": "[120]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "set_password", + "ret-type": "0", + "meta-type": "command", + "arg-type": "121" + }, + { + "name": "expire_password", + "ret-type": "0", + "meta-type": "command", + "arg-type": "122" + }, + { + "name": "screendump", + "ret-type": "0", + "meta-type": "command", + "arg-type": "123" + }, + { + "name": "query-spice", + "ret-type": "124", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "SPICE_CONNECTED", + "meta-type": "event", + "arg-type": "125" + }, + { + "name": "SPICE_INITIALIZED", + "meta-type": "event", + "arg-type": "126" + }, + { + "name": "SPICE_DISCONNECTED", + "meta-type": "event", + "arg-type": "127" + }, + { + "name": "SPICE_MIGRATE_COMPLETED", + "meta-type": "event", + "arg-type": "0" + }, + { + "name": "query-vnc", + "ret-type": "128", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-vnc-servers", + "ret-type": "[129]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "change-vnc-password", + "ret-type": "0", + "meta-type": "command", + "arg-type": "130" + }, + { + "name": "VNC_CONNECTED", + "meta-type": "event", + "arg-type": "131" + }, + { + "name": "VNC_INITIALIZED", + "meta-type": "event", + "arg-type": "132" + }, + { + "name": "VNC_DISCONNECTED", + "meta-type": "event", + "arg-type": "133" + }, + { + "name": "query-mice", + "ret-type": "[134]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "send-key", + "ret-type": "0", + "meta-type": "command", + "arg-type": "135" + }, + { + "name": "input-send-event", + "ret-type": "0", + "meta-type": "command", + "arg-type": "136" + }, + { + "name": "query-display-options", + "ret-type": "137", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "display-reload", + "ret-type": "0", + "meta-type": "command", + "arg-type": "138" + }, + { + "name": "display-update", + "ret-type": "0", + "meta-type": "command", + "arg-type": "139" + }, + { + "name": "query-migrate", + "ret-type": "140", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "migrate-set-capabilities", + "ret-type": "0", + "meta-type": "command", + "arg-type": "141" + }, + { + "name": "query-migrate-capabilities", + "ret-type": "[142]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "migrate-set-parameters", + "ret-type": "0", + "meta-type": "command", + "arg-type": "143" + }, + { + "name": "query-migrate-parameters", + "ret-type": "144", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "client_migrate_info", + "ret-type": "0", + "meta-type": "command", + "arg-type": "145" + }, + { + "name": "migrate-start-postcopy", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "MIGRATION", + "meta-type": "event", + "arg-type": "146" + }, + { + "name": "MIGRATION_PASS", + "meta-type": "event", + "arg-type": "147" + }, + { + "name": "COLO_EXIT", + "meta-type": "event", + "arg-type": "148" + }, + { + "name": "x-colo-lost-heartbeat", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "migrate_cancel", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "migrate-continue", + "ret-type": "0", + "meta-type": "command", + "arg-type": "149" + }, + { + "name": "migrate", + "ret-type": "0", + "meta-type": "command", + "arg-type": "150" + }, + { + "name": "migrate-incoming", + "ret-type": "0", + "meta-type": "command", + "arg-type": "151" + }, + { + "name": "xen-save-devices-state", + "ret-type": "0", + "meta-type": "command", + "arg-type": "152" + }, + { + "name": "xen-set-global-dirty-log", + "ret-type": "0", + "meta-type": "command", + "arg-type": "153" + }, + { + "name": "xen-load-devices-state", + "ret-type": "0", + "meta-type": "command", + "arg-type": "154" + }, + { + "name": "xen-set-replication", + "ret-type": "0", + "meta-type": "command", + "arg-type": "155" + }, + { + "name": "query-xen-replication-status", + "ret-type": "156", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "xen-colo-do-checkpoint", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-colo-status", + "ret-type": "157", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "migrate-recover", + "ret-type": "0", + "allow-oob": true, + "meta-type": "command", + "arg-type": "158" + }, + { + "name": "migrate-pause", + "ret-type": "0", + "allow-oob": true, + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "UNPLUG_PRIMARY", + "meta-type": "event", + "arg-type": "159" + }, + { + "name": "calc-dirty-rate", + "ret-type": "0", + "meta-type": "command", + "arg-type": "160" + }, + { + "name": "query-dirty-rate", + "ret-type": "161", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "set-vcpu-dirty-limit", + "ret-type": "0", + "meta-type": "command", + "arg-type": "162" + }, + { + "name": "cancel-vcpu-dirty-limit", + "ret-type": "0", + "meta-type": "command", + "arg-type": "163" + }, + { + "name": "query-vcpu-dirty-limit", + "ret-type": "[164]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "snapshot-save", + "ret-type": "0", + "meta-type": "command", + "arg-type": "165" + }, + { + "name": "snapshot-load", + "ret-type": "0", + "meta-type": "command", + "arg-type": "166" + }, + { + "name": "snapshot-delete", + "ret-type": "0", + "meta-type": "command", + "arg-type": "167" + }, + { + "name": "transaction", + "ret-type": "0", + "meta-type": "command", + "arg-type": "168" + }, + { + "name": "trace-event-get-state", + "ret-type": "[170]", + "meta-type": "command", + "arg-type": "169" + }, + { + "name": "trace-event-set-state", + "ret-type": "0", + "meta-type": "command", + "arg-type": "171" + }, + { + "name": "qmp_capabilities", + "ret-type": "0", + "meta-type": "command", + "arg-type": "172" + }, + { + "name": "query-version", + "ret-type": "173", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-commands", + "ret-type": "[174]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "quit", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-qmp-schema", + "ret-type": "[175]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "qom-list", + "ret-type": "[177]", + "meta-type": "command", + "arg-type": "176" + }, + { + "name": "qom-get", + "ret-type": "any", + "meta-type": "command", + "arg-type": "178" + }, + { + "name": "qom-set", + "ret-type": "0", + "meta-type": "command", + "arg-type": "179" + }, + { + "name": "qom-list-types", + "ret-type": "[181]", + "meta-type": "command", + "arg-type": "180" + }, + { + "name": "qom-list-properties", + "ret-type": "[177]", + "meta-type": "command", + "arg-type": "182" + }, + { + "name": "object-add", + "ret-type": "0", + "meta-type": "command", + "arg-type": "183" + }, + { + "name": "object-del", + "ret-type": "0", + "meta-type": "command", + "arg-type": "184" + }, + { + "name": "device-list-properties", + "ret-type": "[177]", + "meta-type": "command", + "arg-type": "185" + }, + { + "name": "device_add", + "ret-type": "0", + "meta-type": "command", + "arg-type": "186", + "features": [ + "json-cli", + "json-cli-hotplug" + ] + }, + { + "name": "device_del", + "ret-type": "0", + "meta-type": "command", + "arg-type": "187" + }, + { + "name": "DEVICE_DELETED", + "meta-type": "event", + "arg-type": "188" + }, + { + "name": "DEVICE_UNPLUG_GUEST_ERROR", + "meta-type": "event", + "arg-type": "189" + }, + { + "name": "query-cpus-fast", + "ret-type": "[190]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-machines", + "ret-type": "[191]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-current-machine", + "ret-type": "192", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-target", + "ret-type": "193", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-uuid", + "ret-type": "194", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-vm-generation-id", + "ret-type": "195", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "system_reset", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "system_powerdown", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "system_wakeup", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "inject-nmi", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-kvm", + "ret-type": "196", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "memsave", + "ret-type": "0", + "meta-type": "command", + "arg-type": "197" + }, + { + "name": "pmemsave", + "ret-type": "0", + "meta-type": "command", + "arg-type": "198" + }, + { + "name": "query-memdev", + "ret-type": "[199]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-hotpluggable-cpus", + "ret-type": "[200]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "set-numa-node", + "ret-type": "0", + "meta-type": "command", + "arg-type": "201" + }, + { + "name": "balloon", + "ret-type": "0", + "meta-type": "command", + "arg-type": "202" + }, + { + "name": "query-balloon", + "ret-type": "203", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "BALLOON_CHANGE", + "meta-type": "event", + "arg-type": "204" + }, + { + "name": "query-memory-size-summary", + "ret-type": "205", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-memory-devices", + "ret-type": "[206]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "MEMORY_DEVICE_SIZE_CHANGE", + "meta-type": "event", + "arg-type": "207" + }, + { + "name": "MEM_UNPLUG_ERROR", + "meta-type": "event", + "arg-type": "208", + "features": [ + "deprecated" + ] + }, + { + "name": "x-query-irq", + "ret-type": "209", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-jit", + "ret-type": "209", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-numa", + "ret-type": "209", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-opcount", + "ret-type": "209", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-profile", + "ret-type": "209", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-ramblock", + "ret-type": "209", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-rdma", + "ret-type": "209", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-roms", + "ret-type": "209", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-usb", + "ret-type": "209", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "dumpdtb", + "ret-type": "0", + "meta-type": "command", + "arg-type": "210" + }, + { + "name": "query-cpu-definitions", + "ret-type": "[217]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-replay", + "ret-type": "218", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "replay-break", + "ret-type": "0", + "meta-type": "command", + "arg-type": "219" + }, + { + "name": "replay-delete-break", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "replay-seek", + "ret-type": "0", + "meta-type": "command", + "arg-type": "220" + }, + { + "name": "yank", + "ret-type": "0", + "allow-oob": true, + "meta-type": "command", + "arg-type": "221" + }, + { + "name": "query-yank", + "ret-type": "[222]", + "allow-oob": true, + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "add_client", + "ret-type": "0", + "meta-type": "command", + "arg-type": "223" + }, + { + "name": "query-name", + "ret-type": "224", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-iothreads", + "ret-type": "[225]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "stop", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "cont", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "x-exit-preconfig", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "human-monitor-command", + "ret-type": "str", + "meta-type": "command", + "arg-type": "226", + "features": [ + "savevm-monitor-nodes" + ] + }, + { + "name": "getfd", + "ret-type": "0", + "meta-type": "command", + "arg-type": "227" + }, + { + "name": "closefd", + "ret-type": "0", + "meta-type": "command", + "arg-type": "228" + }, + { + "name": "add-fd", + "ret-type": "230", + "meta-type": "command", + "arg-type": "229" + }, + { + "name": "remove-fd", + "ret-type": "0", + "meta-type": "command", + "arg-type": "231" + }, + { + "name": "query-fdsets", + "ret-type": "[232]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-command-line-options", + "ret-type": "[234]", + "meta-type": "command", + "arg-type": "233" + }, + { + "name": "RTC_CHANGE", + "meta-type": "event", + "arg-type": "235" + }, + { + "name": "VFU_CLIENT_HANGUP", + "meta-type": "event", + "arg-type": "236" + }, + { + "name": "query-acpi-ospm-status", + "ret-type": "[246]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "ACPI_DEVICE_OST", + "meta-type": "event", + "arg-type": "247" + }, + { + "name": "query-pci", + "ret-type": "[248]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-stats", + "ret-type": "[250]", + "meta-type": "command", + "arg-type": "249" + }, + { + "name": "query-stats-schemas", + "ret-type": "[252]", + "meta-type": "command", + "arg-type": "251" + }, + { + "name": "x-query-virtio", + "ret-type": "[253]", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-virtio-status", + "ret-type": "255", + "meta-type": "command", + "arg-type": "254", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-virtio-queue-status", + "ret-type": "257", + "meta-type": "command", + "arg-type": "256", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-virtio-vhost-queue-status", + "ret-type": "259", + "meta-type": "command", + "arg-type": "258", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-virtio-queue-element", + "ret-type": "261", + "meta-type": "command", + "arg-type": "260", + "features": [ + "unstable" + ] + }, + { + "name": "0", + "members": [ + ], + "meta-type": "object" + }, + { + "name": "1", + "members": [ + { + "name": "running", + "type": "bool" + }, + { + "name": "singlestep", + "type": "bool" + }, + { + "name": "status", + "type": "262" + } + ], + "meta-type": "object" + }, + { + "name": "2", + "members": [ + { + "name": "guest", + "type": "bool" + }, + { + "name": "reason", + "type": "263" + } + ], + "meta-type": "object" + }, + { + "name": "3", + "members": [ + { + "name": "guest", + "type": "bool" + }, + { + "name": "reason", + "type": "263" + } + ], + "meta-type": "object" + }, + { + "name": "4", + "members": [ + { + "name": "action", + "type": "264" + } + ], + "meta-type": "object" + }, + { + "name": "5", + "members": [ + { + "name": "action", + "type": "264" + } + ], + "meta-type": "object" + }, + { + "name": "6", + "members": [ + { + "name": "reboot", + "default": null, + "type": "265" + }, + { + "name": "shutdown", + "default": null, + "type": "266" + }, + { + "name": "panic", + "default": null, + "type": "267" + }, + { + "name": "watchdog", + "default": null, + "type": "264" + } + ], + "meta-type": "object" + }, + { + "name": "7", + "members": [ + { + "name": "action", + "type": "268" + }, + { + "name": "info", + "default": null, + "type": "269" + } + ], + "meta-type": "object" + }, + { + "name": "8", + "members": [ + { + "name": "action", + "type": "268" + }, + { + "name": "info", + "default": null, + "type": "269" + } + ], + "meta-type": "object" + }, + { + "name": "9", + "members": [ + { + "name": "recipient", + "type": "270" + }, + { + "name": "action", + "type": "271" + }, + { + "name": "flags", + "type": "272" + } + ], + "meta-type": "object" + }, + { + "name": "[10]", + "element-type": "10", + "meta-type": "array" + }, + { + "name": "10", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "connected", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "11", + "members": [ + { + "name": "device", + "default": null, + "type": "str", + "features": [ + "deprecated" + ] + }, + { + "name": "id", + "default": null, + "type": "str" + }, + { + "name": "force", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "12", + "members": [ + { + "name": "device", + "default": null, + "type": "str", + "features": [ + "deprecated" + ] + }, + { + "name": "id", + "default": null, + "type": "str" + }, + { + "name": "force", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "13", + "members": [ + { + "name": "device", + "default": null, + "type": "str", + "features": [ + "deprecated" + ] + }, + { + "name": "id", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "14", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "15", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "node-name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "16", + "members": [ + { + "name": "device", + "default": null, + "type": "str", + "features": [ + "deprecated" + ] + }, + { + "name": "id", + "default": null, + "type": "str" + }, + { + "name": "filename", + "type": "str" + }, + { + "name": "format", + "default": null, + "type": "str" + }, + { + "name": "force", + "default": null, + "type": "bool" + }, + { + "name": "read-only-mode", + "default": null, + "type": "273" + } + ], + "meta-type": "object" + }, + { + "name": "17", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "id", + "type": "str" + }, + { + "name": "tray-open", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "18", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "connected", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "19", + "members": [ + { + "name": "device", + "default": null, + "type": "str", + "features": [ + "deprecated" + ] + }, + { + "name": "id", + "default": null, + "type": "str" + }, + { + "name": "bps", + "type": "int" + }, + { + "name": "bps_rd", + "type": "int" + }, + { + "name": "bps_wr", + "type": "int" + }, + { + "name": "iops", + "type": "int" + }, + { + "name": "iops_rd", + "type": "int" + }, + { + "name": "iops_wr", + "type": "int" + }, + { + "name": "bps_max", + "default": null, + "type": "int" + }, + { + "name": "bps_rd_max", + "default": null, + "type": "int" + }, + { + "name": "bps_wr_max", + "default": null, + "type": "int" + }, + { + "name": "iops_max", + "default": null, + "type": "int" + }, + { + "name": "iops_rd_max", + "default": null, + "type": "int" + }, + { + "name": "iops_wr_max", + "default": null, + "type": "int" + }, + { + "name": "bps_max_length", + "default": null, + "type": "int" + }, + { + "name": "bps_rd_max_length", + "default": null, + "type": "int" + }, + { + "name": "bps_wr_max_length", + "default": null, + "type": "int" + }, + { + "name": "iops_max_length", + "default": null, + "type": "int" + }, + { + "name": "iops_rd_max_length", + "default": null, + "type": "int" + }, + { + "name": "iops_wr_max_length", + "default": null, + "type": "int" + }, + { + "name": "iops_size", + "default": null, + "type": "int" + }, + { + "name": "group", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "20", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "boundaries", + "default": null, + "type": "[int]" + }, + { + "name": "boundaries-read", + "default": null, + "type": "[int]" + }, + { + "name": "boundaries-write", + "default": null, + "type": "[int]" + }, + { + "name": "boundaries-flush", + "default": null, + "type": "[int]" + } + ], + "meta-type": "object" + }, + { + "name": "[21]", + "element-type": "21", + "meta-type": "array" + }, + { + "name": "21", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "qdev", + "default": null, + "type": "str" + }, + { + "name": "type", + "type": "str" + }, + { + "name": "removable", + "type": "bool" + }, + { + "name": "locked", + "type": "bool" + }, + { + "name": "inserted", + "default": null, + "type": "33" + }, + { + "name": "tray_open", + "default": null, + "type": "bool" + }, + { + "name": "io-status", + "default": null, + "type": "274" + } + ], + "meta-type": "object" + }, + { + "name": "22", + "members": [ + { + "name": "query-nodes", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "[23]", + "element-type": "23", + "meta-type": "array" + }, + { + "name": "23", + "members": [ + { + "name": "device", + "default": null, + "type": "str" + }, + { + "name": "qdev", + "default": null, + "type": "str" + }, + { + "name": "node-name", + "default": null, + "type": "str" + }, + { + "name": "stats", + "type": "275" + }, + { + "name": "driver-specific", + "default": null, + "type": "276" + }, + { + "name": "parent", + "default": null, + "type": "23" + }, + { + "name": "backing", + "default": null, + "type": "23" + } + ], + "meta-type": "object" + }, + { + "name": "[24]", + "element-type": "24", + "meta-type": "array" + }, + { + "name": "24", + "members": [ + { + "name": "type", + "type": "str" + }, + { + "name": "device", + "type": "str" + }, + { + "name": "len", + "type": "int" + }, + { + "name": "offset", + "type": "int" + }, + { + "name": "busy", + "type": "bool" + }, + { + "name": "paused", + "type": "bool" + }, + { + "name": "speed", + "type": "int" + }, + { + "name": "io-status", + "type": "274" + }, + { + "name": "ready", + "type": "bool" + }, + { + "name": "status", + "type": "277" + }, + { + "name": "auto-finalize", + "type": "bool" + }, + { + "name": "auto-dismiss", + "type": "bool" + }, + { + "name": "error", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "25", + "members": [ + { + "name": "device", + "default": null, + "type": "str" + }, + { + "name": "node-name", + "default": null, + "type": "str" + }, + { + "name": "size", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "26", + "members": [ + { + "name": "device", + "default": null, + "type": "str" + }, + { + "name": "node-name", + "default": null, + "type": "str" + }, + { + "name": "snapshot-file", + "type": "str" + }, + { + "name": "snapshot-node-name", + "default": null, + "type": "str" + }, + { + "name": "format", + "default": null, + "type": "str" + }, + { + "name": "mode", + "default": null, + "type": "278" + } + ], + "meta-type": "object" + }, + { + "name": "27", + "members": [ + { + "name": "node", + "type": "str" + }, + { + "name": "overlay", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "28", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "image-node-name", + "type": "str" + }, + { + "name": "backing-file", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "29", + "members": [ + { + "name": "job-id", + "default": null, + "type": "str" + }, + { + "name": "device", + "type": "str" + }, + { + "name": "base-node", + "default": null, + "type": "str" + }, + { + "name": "base", + "default": null, + "type": "str", + "features": [ + "deprecated" + ] + }, + { + "name": "top-node", + "default": null, + "type": "str" + }, + { + "name": "top", + "default": null, + "type": "str", + "features": [ + "deprecated" + ] + }, + { + "name": "backing-file", + "default": null, + "type": "str" + }, + { + "name": "speed", + "default": null, + "type": "int" + }, + { + "name": "on-error", + "default": null, + "type": "279" + }, + { + "name": "filter-node-name", + "default": null, + "type": "str" + }, + { + "name": "auto-finalize", + "default": null, + "type": "bool" + }, + { + "name": "auto-dismiss", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "30", + "members": [ + { + "name": "job-id", + "default": null, + "type": "str" + }, + { + "name": "device", + "type": "str" + }, + { + "name": "sync", + "type": "280" + }, + { + "name": "speed", + "default": null, + "type": "int" + }, + { + "name": "bitmap", + "default": null, + "type": "str" + }, + { + "name": "bitmap-mode", + "default": null, + "type": "281" + }, + { + "name": "compress", + "default": null, + "type": "bool" + }, + { + "name": "on-source-error", + "default": null, + "type": "279" + }, + { + "name": "on-target-error", + "default": null, + "type": "279" + }, + { + "name": "auto-finalize", + "default": null, + "type": "bool" + }, + { + "name": "auto-dismiss", + "default": null, + "type": "bool" + }, + { + "name": "filter-node-name", + "default": null, + "type": "str" + }, + { + "name": "x-perf", + "default": null, + "type": "282", + "features": [ + "unstable" + ] + }, + { + "name": "target", + "type": "str" + }, + { + "name": "format", + "default": null, + "type": "str" + }, + { + "name": "mode", + "default": null, + "type": "278" + } + ], + "meta-type": "object" + }, + { + "name": "31", + "members": [ + { + "name": "job-id", + "default": null, + "type": "str" + }, + { + "name": "device", + "type": "str" + }, + { + "name": "sync", + "type": "280" + }, + { + "name": "speed", + "default": null, + "type": "int" + }, + { + "name": "bitmap", + "default": null, + "type": "str" + }, + { + "name": "bitmap-mode", + "default": null, + "type": "281" + }, + { + "name": "compress", + "default": null, + "type": "bool" + }, + { + "name": "on-source-error", + "default": null, + "type": "279" + }, + { + "name": "on-target-error", + "default": null, + "type": "279" + }, + { + "name": "auto-finalize", + "default": null, + "type": "bool" + }, + { + "name": "auto-dismiss", + "default": null, + "type": "bool" + }, + { + "name": "filter-node-name", + "default": null, + "type": "str" + }, + { + "name": "x-perf", + "default": null, + "type": "282", + "features": [ + "unstable" + ] + }, + { + "name": "target", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "32", + "members": [ + { + "name": "flat", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "[33]", + "element-type": "33", + "meta-type": "array" + }, + { + "name": "33", + "members": [ + { + "name": "file", + "type": "str" + }, + { + "name": "node-name", + "default": null, + "type": "str" + }, + { + "name": "ro", + "type": "bool" + }, + { + "name": "drv", + "type": "str" + }, + { + "name": "backing_file", + "default": null, + "type": "str" + }, + { + "name": "backing_file_depth", + "type": "int" + }, + { + "name": "encrypted", + "type": "bool" + }, + { + "name": "detect_zeroes", + "type": "283" + }, + { + "name": "bps", + "type": "int" + }, + { + "name": "bps_rd", + "type": "int" + }, + { + "name": "bps_wr", + "type": "int" + }, + { + "name": "iops", + "type": "int" + }, + { + "name": "iops_rd", + "type": "int" + }, + { + "name": "iops_wr", + "type": "int" + }, + { + "name": "image", + "type": "284" + }, + { + "name": "bps_max", + "default": null, + "type": "int" + }, + { + "name": "bps_rd_max", + "default": null, + "type": "int" + }, + { + "name": "bps_wr_max", + "default": null, + "type": "int" + }, + { + "name": "iops_max", + "default": null, + "type": "int" + }, + { + "name": "iops_rd_max", + "default": null, + "type": "int" + }, + { + "name": "iops_wr_max", + "default": null, + "type": "int" + }, + { + "name": "bps_max_length", + "default": null, + "type": "int" + }, + { + "name": "bps_rd_max_length", + "default": null, + "type": "int" + }, + { + "name": "bps_wr_max_length", + "default": null, + "type": "int" + }, + { + "name": "iops_max_length", + "default": null, + "type": "int" + }, + { + "name": "iops_rd_max_length", + "default": null, + "type": "int" + }, + { + "name": "iops_wr_max_length", + "default": null, + "type": "int" + }, + { + "name": "iops_size", + "default": null, + "type": "int" + }, + { + "name": "group", + "default": null, + "type": "str" + }, + { + "name": "cache", + "type": "285" + }, + { + "name": "write_threshold", + "type": "int" + }, + { + "name": "dirty-bitmaps", + "default": null, + "type": "[286]" + } + ], + "meta-type": "object" + }, + { + "name": "34", + "members": [ + { + "name": "nodes", + "type": "[287]" + }, + { + "name": "edges", + "type": "[288]" + } + ], + "meta-type": "object" + }, + { + "name": "35", + "members": [ + { + "name": "job-id", + "default": null, + "type": "str" + }, + { + "name": "device", + "type": "str" + }, + { + "name": "target", + "type": "str" + }, + { + "name": "format", + "default": null, + "type": "str" + }, + { + "name": "node-name", + "default": null, + "type": "str" + }, + { + "name": "replaces", + "default": null, + "type": "str" + }, + { + "name": "sync", + "type": "280" + }, + { + "name": "mode", + "default": null, + "type": "278" + }, + { + "name": "speed", + "default": null, + "type": "int" + }, + { + "name": "granularity", + "default": null, + "type": "int" + }, + { + "name": "buf-size", + "default": null, + "type": "int" + }, + { + "name": "on-source-error", + "default": null, + "type": "279" + }, + { + "name": "on-target-error", + "default": null, + "type": "279" + }, + { + "name": "unmap", + "default": null, + "type": "bool" + }, + { + "name": "copy-mode", + "default": null, + "type": "289" + }, + { + "name": "auto-finalize", + "default": null, + "type": "bool" + }, + { + "name": "auto-dismiss", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "36", + "members": [ + { + "name": "node", + "type": "str" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "granularity", + "default": null, + "type": "int" + }, + { + "name": "persistent", + "default": null, + "type": "bool" + }, + { + "name": "disabled", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "37", + "members": [ + { + "name": "node", + "type": "str" + }, + { + "name": "name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "38", + "members": [ + { + "name": "node", + "type": "str" + }, + { + "name": "target", + "type": "str" + }, + { + "name": "bitmaps", + "type": "[290]" + } + ], + "meta-type": "object" + }, + { + "name": "39", + "members": [ + { + "name": "sha256", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "40", + "members": [ + { + "name": "job-id", + "default": null, + "type": "str" + }, + { + "name": "device", + "type": "str" + }, + { + "name": "target", + "type": "str" + }, + { + "name": "replaces", + "default": null, + "type": "str" + }, + { + "name": "sync", + "type": "280" + }, + { + "name": "speed", + "default": null, + "type": "int" + }, + { + "name": "granularity", + "default": null, + "type": "int" + }, + { + "name": "buf-size", + "default": null, + "type": "int" + }, + { + "name": "on-source-error", + "default": null, + "type": "279" + }, + { + "name": "on-target-error", + "default": null, + "type": "279" + }, + { + "name": "filter-node-name", + "default": null, + "type": "str" + }, + { + "name": "copy-mode", + "default": null, + "type": "289" + }, + { + "name": "auto-finalize", + "default": null, + "type": "bool" + }, + { + "name": "auto-dismiss", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "41", + "members": [ + { + "name": "job-id", + "default": null, + "type": "str" + }, + { + "name": "device", + "type": "str" + }, + { + "name": "base", + "default": null, + "type": "str" + }, + { + "name": "base-node", + "default": null, + "type": "str" + }, + { + "name": "backing-file", + "default": null, + "type": "str" + }, + { + "name": "bottom", + "default": null, + "type": "str" + }, + { + "name": "speed", + "default": null, + "type": "int" + }, + { + "name": "on-error", + "default": null, + "type": "279" + }, + { + "name": "filter-node-name", + "default": null, + "type": "str" + }, + { + "name": "auto-finalize", + "default": null, + "type": "bool" + }, + { + "name": "auto-dismiss", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "42", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "speed", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "43", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "force", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "44", + "members": [ + { + "name": "device", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "45", + "members": [ + { + "name": "device", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "46", + "members": [ + { + "name": "device", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "47", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "48", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "49", + "tag": "driver", + "variants": [ + { + "case": "blkdebug", + "type": "294" + }, + { + "case": "blklogwrites", + "type": "295" + }, + { + "case": "blkverify", + "type": "296" + }, + { + "case": "blkreplay", + "type": "297" + }, + { + "case": "bochs", + "type": "298" + }, + { + "case": "cloop", + "type": "298" + }, + { + "case": "compress", + "type": "298" + }, + { + "case": "copy-before-write", + "type": "299" + }, + { + "case": "copy-on-read", + "type": "300" + }, + { + "case": "dmg", + "type": "298" + }, + { + "case": "file", + "type": "301" + }, + { + "case": "ftp", + "type": "302" + }, + { + "case": "ftps", + "type": "303" + }, + { + "case": "gluster", + "type": "304" + }, + { + "case": "host_cdrom", + "type": "301" + }, + { + "case": "host_device", + "type": "301" + }, + { + "case": "http", + "type": "305" + }, + { + "case": "https", + "type": "306" + }, + { + "case": "io_uring", + "type": "307" + }, + { + "case": "iscsi", + "type": "308" + }, + { + "case": "luks", + "type": "309" + }, + { + "case": "nbd", + "type": "310" + }, + { + "case": "nfs", + "type": "311" + }, + { + "case": "null-aio", + "type": "312" + }, + { + "case": "null-co", + "type": "312" + }, + { + "case": "nvme", + "type": "313" + }, + { + "case": "nvme-io_uring", + "type": "314" + }, + { + "case": "parallels", + "type": "298" + }, + { + "case": "preallocate", + "type": "315" + }, + { + "case": "qcow2", + "type": "316" + }, + { + "case": "qcow", + "type": "317" + }, + { + "case": "qed", + "type": "318" + }, + { + "case": "quorum", + "type": "319" + }, + { + "case": "raw", + "type": "320" + }, + { + "case": "rbd", + "type": "321" + }, + { + "case": "replication", + "type": "322" + }, + { + "case": "snapshot-access", + "type": "298" + }, + { + "case": "ssh", + "type": "323" + }, + { + "case": "throttle", + "type": "324" + }, + { + "case": "vdi", + "type": "298" + }, + { + "case": "vhdx", + "type": "298" + }, + { + "case": "virtio-blk-vfio-pci", + "type": "325" + }, + { + "case": "virtio-blk-vhost-user", + "type": "326" + }, + { + "case": "virtio-blk-vhost-vdpa", + "type": "327" + }, + { + "case": "vmdk", + "type": "318" + }, + { + "case": "vpc", + "type": "298" + }, + { + "case": "vvfat", + "type": "328" + } + ], + "members": [ + { + "name": "driver", + "type": "291" + }, + { + "name": "node-name", + "default": null, + "type": "str" + }, + { + "name": "discard", + "default": null, + "type": "292" + }, + { + "name": "cache", + "default": null, + "type": "293" + }, + { + "name": "read-only", + "default": null, + "type": "bool" + }, + { + "name": "auto-read-only", + "default": null, + "type": "bool" + }, + { + "name": "force-share", + "default": null, + "type": "bool" + }, + { + "name": "detect-zeroes", + "default": null, + "type": "283" + } + ], + "meta-type": "object" + }, + { + "name": "50", + "members": [ + { + "name": "options", + "type": "[49]" + } + ], + "meta-type": "object" + }, + { + "name": "51", + "members": [ + { + "name": "node-name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "52", + "members": [ + { + "name": "job-id", + "type": "str" + }, + { + "name": "options", + "type": "329" + } + ], + "meta-type": "object" + }, + { + "name": "53", + "members": [ + { + "name": "job-id", + "type": "str" + }, + { + "name": "node-name", + "type": "str" + }, + { + "name": "options", + "type": "330" + }, + { + "name": "force", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "54", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "node-name", + "default": null, + "type": "str" + }, + { + "name": "msg", + "type": "str" + }, + { + "name": "offset", + "default": null, + "type": "int" + }, + { + "name": "size", + "default": null, + "type": "int" + }, + { + "name": "fatal", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "55", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "node-name", + "default": null, + "type": "str" + }, + { + "name": "operation", + "type": "331" + }, + { + "name": "action", + "type": "332" + }, + { + "name": "nospace", + "default": null, + "type": "bool" + }, + { + "name": "reason", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "56", + "members": [ + { + "name": "type", + "type": "333" + }, + { + "name": "device", + "type": "str" + }, + { + "name": "len", + "type": "int" + }, + { + "name": "offset", + "type": "int" + }, + { + "name": "speed", + "type": "int" + }, + { + "name": "error", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "57", + "members": [ + { + "name": "type", + "type": "333" + }, + { + "name": "device", + "type": "str" + }, + { + "name": "len", + "type": "int" + }, + { + "name": "offset", + "type": "int" + }, + { + "name": "speed", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "58", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "operation", + "type": "331" + }, + { + "name": "action", + "type": "332" + } + ], + "meta-type": "object" + }, + { + "name": "59", + "members": [ + { + "name": "type", + "type": "333" + }, + { + "name": "device", + "type": "str" + }, + { + "name": "len", + "type": "int" + }, + { + "name": "offset", + "type": "int" + }, + { + "name": "speed", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "60", + "members": [ + { + "name": "type", + "type": "333" + }, + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "61", + "members": [ + { + "name": "node-name", + "type": "str" + }, + { + "name": "amount-exceeded", + "type": "int" + }, + { + "name": "write-threshold", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "62", + "members": [ + { + "name": "node-name", + "type": "str" + }, + { + "name": "write-threshold", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "63", + "members": [ + { + "name": "parent", + "type": "str" + }, + { + "name": "child", + "default": null, + "type": "str" + }, + { + "name": "node", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "64", + "members": [ + { + "name": "node-name", + "type": "str" + }, + { + "name": "iothread", + "type": "334" + }, + { + "name": "force", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "65", + "members": [ + { + "name": "reference", + "type": "str" + }, + { + "name": "sector-num", + "type": "int" + }, + { + "name": "sectors-count", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "66", + "members": [ + { + "name": "type", + "type": "335" + }, + { + "name": "error", + "default": null, + "type": "str" + }, + { + "name": "node-name", + "type": "str" + }, + { + "name": "sector-num", + "type": "int" + }, + { + "name": "sectors-count", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "67", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "68", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "id", + "default": null, + "type": "str" + }, + { + "name": "name", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "69", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "vm-state-size", + "type": "int" + }, + { + "name": "date-sec", + "type": "int" + }, + { + "name": "date-nsec", + "type": "int" + }, + { + "name": "vm-clock-sec", + "type": "int" + }, + { + "name": "vm-clock-nsec", + "type": "int" + }, + { + "name": "icount", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "70", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "status", + "type": "277" + } + ], + "meta-type": "object" + }, + { + "name": "71", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "72", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "73", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "74", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "75", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "76", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[77]", + "element-type": "77", + "meta-type": "array" + }, + { + "name": "77", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "type", + "type": "333" + }, + { + "name": "status", + "type": "277" + }, + { + "name": "current-progress", + "type": "int" + }, + { + "name": "total-progress", + "type": "int" + }, + { + "name": "error", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "78", + "members": [ + { + "name": "addr", + "type": "336" + }, + { + "name": "tls-creds", + "default": null, + "type": "str" + }, + { + "name": "tls-authz", + "default": null, + "type": "str" + }, + { + "name": "max-connections", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "79", + "members": [ + { + "name": "name", + "default": null, + "type": "str" + }, + { + "name": "description", + "default": null, + "type": "str" + }, + { + "name": "device", + "type": "str" + }, + { + "name": "writable", + "default": null, + "type": "bool" + }, + { + "name": "bitmap", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "80", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "mode", + "default": null, + "type": "337" + } + ], + "meta-type": "object" + }, + { + "name": "81", + "tag": "type", + "variants": [ + { + "case": "nbd", + "type": "339" + }, + { + "case": "vhost-user-blk", + "type": "340" + }, + { + "case": "fuse", + "type": "341" + }, + { + "case": "vduse-blk", + "type": "342" + } + ], + "members": [ + { + "name": "type", + "type": "338" + }, + { + "name": "id", + "type": "str" + }, + { + "name": "fixed-iothread", + "default": null, + "type": "bool" + }, + { + "name": "iothread", + "default": null, + "type": "str" + }, + { + "name": "node-name", + "type": "str" + }, + { + "name": "writable", + "default": null, + "type": "bool" + }, + { + "name": "writethrough", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "82", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "mode", + "default": null, + "type": "337" + } + ], + "meta-type": "object" + }, + { + "name": "83", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[84]", + "element-type": "84", + "meta-type": "array" + }, + { + "name": "84", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "type", + "type": "338" + }, + { + "name": "node-name", + "type": "str" + }, + { + "name": "shutting-down", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "[85]", + "element-type": "85", + "meta-type": "array" + }, + { + "name": "85", + "members": [ + { + "name": "label", + "type": "str" + }, + { + "name": "filename", + "type": "str" + }, + { + "name": "frontend-open", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "[86]", + "element-type": "86", + "meta-type": "array" + }, + { + "name": "86", + "members": [ + { + "name": "name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "87", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "data", + "type": "str" + }, + { + "name": "format", + "default": null, + "type": "343" + } + ], + "meta-type": "object" + }, + { + "name": "88", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "format", + "default": null, + "type": "343" + } + ], + "meta-type": "object" + }, + { + "name": "str", + "json-type": "string", + "meta-type": "builtin" + }, + { + "name": "89", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "backend", + "type": "344" + } + ], + "meta-type": "object" + }, + { + "name": "90", + "members": [ + { + "name": "pty", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "91", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "backend", + "type": "344" + } + ], + "meta-type": "object" + }, + { + "name": "92", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "93", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "94", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "open", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "95", + "members": [ + { + "name": "paging", + "type": "bool" + }, + { + "name": "protocol", + "type": "str" + }, + { + "name": "detach", + "default": null, + "type": "bool" + }, + { + "name": "begin", + "default": null, + "type": "int" + }, + { + "name": "length", + "default": null, + "type": "int" + }, + { + "name": "format", + "default": null, + "type": "345" + } + ], + "meta-type": "object" + }, + { + "name": "96", + "members": [ + { + "name": "status", + "type": "346" + }, + { + "name": "completed", + "type": "int" + }, + { + "name": "total", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "97", + "members": [ + { + "name": "result", + "type": "96" + }, + { + "name": "error", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "98", + "members": [ + { + "name": "formats", + "type": "[345]" + } + ], + "meta-type": "object" + }, + { + "name": "99", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "up", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "100", + "tag": "type", + "variants": [ + { + "case": "nic", + "type": "348" + }, + { + "case": "user", + "type": "349" + }, + { + "case": "tap", + "type": "350" + }, + { + "case": "l2tpv3", + "type": "351" + }, + { + "case": "socket", + "type": "352" + }, + { + "case": "stream", + "type": "353" + }, + { + "case": "dgram", + "type": "354" + }, + { + "case": "vde", + "type": "355" + }, + { + "case": "bridge", + "type": "356" + }, + { + "case": "hubport", + "type": "357" + }, + { + "case": "netmap", + "type": "358" + }, + { + "case": "vhost-user", + "type": "359" + }, + { + "case": "vhost-vdpa", + "type": "360" + }, + { + "case": "none", + "type": "0" + } + ], + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "type", + "type": "347" + } + ], + "meta-type": "object" + }, + { + "name": "101", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "102", + "members": [ + { + "name": "name", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[103]", + "element-type": "103", + "meta-type": "array" + }, + { + "name": "103", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "promiscuous", + "type": "bool" + }, + { + "name": "multicast", + "type": "364" + }, + { + "name": "unicast", + "type": "364" + }, + { + "name": "vlan", + "type": "364" + }, + { + "name": "broadcast-allowed", + "type": "bool" + }, + { + "name": "multicast-overflow", + "type": "bool" + }, + { + "name": "unicast-overflow", + "type": "bool" + }, + { + "name": "main-mac", + "type": "str" + }, + { + "name": "vlan-table", + "type": "[int]" + }, + { + "name": "unicast-table", + "type": "[str]" + }, + { + "name": "multicast-table", + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "104", + "members": [ + { + "name": "name", + "default": null, + "type": "str" + }, + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "105", + "members": [ + { + "name": "initial", + "type": "int" + }, + { + "name": "max", + "type": "int" + }, + { + "name": "rounds", + "type": "int" + }, + { + "name": "step", + "type": "int" + }, + { + "name": "interfaces", + "default": null, + "type": "[str]" + }, + { + "name": "id", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "106", + "members": [ + { + "name": "device-id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "107", + "members": [ + { + "name": "netdev-id", + "type": "str" + }, + { + "name": "addr", + "type": "365" + } + ], + "meta-type": "object" + }, + { + "name": "108", + "members": [ + { + "name": "netdev-id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "109", + "members": [ + { + "name": "netdev", + "type": "str" + }, + { + "name": "gid-status", + "type": "bool" + }, + { + "name": "subnet-prefix", + "type": "int" + }, + { + "name": "interface-id", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "110", + "members": [ + { + "name": "name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "111", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "id", + "type": "int" + }, + { + "name": "ports", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "112", + "members": [ + { + "name": "name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[113]", + "element-type": "113", + "meta-type": "array" + }, + { + "name": "113", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "enabled", + "type": "bool" + }, + { + "name": "link-up", + "type": "bool" + }, + { + "name": "speed", + "type": "int" + }, + { + "name": "duplex", + "type": "366" + }, + { + "name": "autoneg", + "type": "367" + } + ], + "meta-type": "object" + }, + { + "name": "114", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "tbl-id", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[115]", + "element-type": "115", + "meta-type": "array" + }, + { + "name": "115", + "members": [ + { + "name": "cookie", + "type": "int" + }, + { + "name": "hits", + "type": "int" + }, + { + "name": "key", + "type": "368" + }, + { + "name": "mask", + "type": "369" + }, + { + "name": "action", + "type": "370" + } + ], + "meta-type": "object" + }, + { + "name": "116", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "type", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[117]", + "element-type": "117", + "meta-type": "array" + }, + { + "name": "117", + "members": [ + { + "name": "id", + "type": "int" + }, + { + "name": "type", + "type": "int" + }, + { + "name": "vlan-id", + "default": null, + "type": "int" + }, + { + "name": "pport", + "default": null, + "type": "int" + }, + { + "name": "index", + "default": null, + "type": "int" + }, + { + "name": "out-pport", + "default": null, + "type": "int" + }, + { + "name": "group-id", + "default": null, + "type": "int" + }, + { + "name": "set-vlan-id", + "default": null, + "type": "int" + }, + { + "name": "pop-vlan", + "default": null, + "type": "int" + }, + { + "name": "group-ids", + "default": null, + "type": "[int]" + }, + { + "name": "set-eth-src", + "default": null, + "type": "str" + }, + { + "name": "set-eth-dst", + "default": null, + "type": "str" + }, + { + "name": "ttl-check", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[118]", + "element-type": "118", + "meta-type": "array" + }, + { + "name": "118", + "members": [ + { + "name": "tpm-tis" + }, + { + "name": "tpm-crb" + }, + { + "name": "tpm-spapr" + } + ], + "meta-type": "enum", + "values": [ + "tpm-tis", + "tpm-crb", + "tpm-spapr" + ] + }, + { + "name": "[119]", + "element-type": "119", + "meta-type": "array" + }, + { + "name": "119", + "members": [ + { + "name": "passthrough" + }, + { + "name": "emulator" + } + ], + "meta-type": "enum", + "values": [ + "passthrough", + "emulator" + ] + }, + { + "name": "[120]", + "element-type": "120", + "meta-type": "array" + }, + { + "name": "120", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "model", + "type": "118" + }, + { + "name": "options", + "type": "371" + } + ], + "meta-type": "object" + }, + { + "name": "121", + "tag": "protocol", + "variants": [ + { + "case": "vnc", + "type": "374" + }, + { + "case": "spice", + "type": "0" + } + ], + "members": [ + { + "name": "protocol", + "type": "372" + }, + { + "name": "password", + "type": "str" + }, + { + "name": "connected", + "default": null, + "type": "373" + } + ], + "meta-type": "object" + }, + { + "name": "122", + "tag": "protocol", + "variants": [ + { + "case": "vnc", + "type": "375" + }, + { + "case": "spice", + "type": "0" + } + ], + "members": [ + { + "name": "protocol", + "type": "372" + }, + { + "name": "time", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "123", + "members": [ + { + "name": "filename", + "type": "str" + }, + { + "name": "device", + "default": null, + "type": "str" + }, + { + "name": "head", + "default": null, + "type": "int" + }, + { + "name": "format", + "default": null, + "type": "376" + } + ], + "meta-type": "object" + }, + { + "name": "124", + "members": [ + { + "name": "enabled", + "type": "bool" + }, + { + "name": "migrated", + "type": "bool" + }, + { + "name": "host", + "default": null, + "type": "str" + }, + { + "name": "port", + "default": null, + "type": "int" + }, + { + "name": "tls-port", + "default": null, + "type": "int" + }, + { + "name": "auth", + "default": null, + "type": "str" + }, + { + "name": "compiled-version", + "default": null, + "type": "str" + }, + { + "name": "mouse-mode", + "type": "377" + }, + { + "name": "channels", + "default": null, + "type": "[378]" + } + ], + "meta-type": "object" + }, + { + "name": "125", + "members": [ + { + "name": "server", + "type": "379" + }, + { + "name": "client", + "type": "379" + } + ], + "meta-type": "object" + }, + { + "name": "126", + "members": [ + { + "name": "server", + "type": "380" + }, + { + "name": "client", + "type": "378" + } + ], + "meta-type": "object" + }, + { + "name": "127", + "members": [ + { + "name": "server", + "type": "379" + }, + { + "name": "client", + "type": "379" + } + ], + "meta-type": "object" + }, + { + "name": "128", + "members": [ + { + "name": "enabled", + "type": "bool" + }, + { + "name": "host", + "default": null, + "type": "str" + }, + { + "name": "family", + "default": null, + "type": "381" + }, + { + "name": "service", + "default": null, + "type": "str" + }, + { + "name": "auth", + "default": null, + "type": "str" + }, + { + "name": "clients", + "default": null, + "type": "[382]" + } + ], + "meta-type": "object" + }, + { + "name": "[129]", + "element-type": "129", + "meta-type": "array" + }, + { + "name": "129", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "server", + "type": "[383]" + }, + { + "name": "clients", + "type": "[382]" + }, + { + "name": "auth", + "type": "384" + }, + { + "name": "vencrypt", + "default": null, + "type": "385" + }, + { + "name": "display", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "130", + "members": [ + { + "name": "password", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "131", + "members": [ + { + "name": "server", + "type": "386" + }, + { + "name": "client", + "type": "387" + } + ], + "meta-type": "object" + }, + { + "name": "132", + "members": [ + { + "name": "server", + "type": "386" + }, + { + "name": "client", + "type": "382" + } + ], + "meta-type": "object" + }, + { + "name": "133", + "members": [ + { + "name": "server", + "type": "386" + }, + { + "name": "client", + "type": "382" + } + ], + "meta-type": "object" + }, + { + "name": "[134]", + "element-type": "134", + "meta-type": "array" + }, + { + "name": "134", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "index", + "type": "int" + }, + { + "name": "current", + "type": "bool" + }, + { + "name": "absolute", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "135", + "members": [ + { + "name": "keys", + "type": "[388]" + }, + { + "name": "hold-time", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "136", + "members": [ + { + "name": "device", + "default": null, + "type": "str" + }, + { + "name": "head", + "default": null, + "type": "int" + }, + { + "name": "events", + "type": "[389]" + } + ], + "meta-type": "object" + }, + { + "name": "137", + "tag": "type", + "variants": [ + { + "case": "gtk", + "type": "392" + }, + { + "case": "curses", + "type": "394" + }, + { + "case": "egl-headless", + "type": "395" + }, + { + "case": "dbus", + "type": "396" + }, + { + "case": "sdl", + "type": "397" + }, + { + "case": "default", + "type": "0" + }, + { + "case": "none", + "type": "0" + }, + { + "case": "spice-app", + "type": "0" + } + ], + "members": [ + { + "name": "type", + "type": "390" + }, + { + "name": "full-screen", + "default": null, + "type": "bool" + }, + { + "name": "window-close", + "default": null, + "type": "bool" + }, + { + "name": "show-cursor", + "default": null, + "type": "bool" + }, + { + "name": "gl", + "default": null, + "type": "391" + } + ], + "meta-type": "object" + }, + { + "name": "138", + "tag": "type", + "variants": [ + { + "case": "vnc", + "type": "399" + } + ], + "members": [ + { + "name": "type", + "type": "398" + } + ], + "meta-type": "object" + }, + { + "name": "139", + "tag": "type", + "variants": [ + { + "case": "vnc", + "type": "401" + } + ], + "members": [ + { + "name": "type", + "type": "400" + } + ], + "meta-type": "object" + }, + { + "name": "140", + "members": [ + { + "name": "status", + "default": null, + "type": "402" + }, + { + "name": "ram", + "default": null, + "type": "403" + }, + { + "name": "disk", + "default": null, + "type": "403" + }, + { + "name": "vfio", + "default": null, + "type": "404" + }, + { + "name": "xbzrle-cache", + "default": null, + "type": "405" + }, + { + "name": "total-time", + "default": null, + "type": "int" + }, + { + "name": "expected-downtime", + "default": null, + "type": "int" + }, + { + "name": "downtime", + "default": null, + "type": "int" + }, + { + "name": "setup-time", + "default": null, + "type": "int" + }, + { + "name": "cpu-throttle-percentage", + "default": null, + "type": "int" + }, + { + "name": "error-desc", + "default": null, + "type": "str" + }, + { + "name": "blocked-reasons", + "default": null, + "type": "[str]" + }, + { + "name": "postcopy-blocktime", + "default": null, + "type": "int" + }, + { + "name": "postcopy-vcpu-blocktime", + "default": null, + "type": "[int]" + }, + { + "name": "compression", + "default": null, + "type": "406" + }, + { + "name": "socket-address", + "default": null, + "type": "[365]" + } + ], + "meta-type": "object" + }, + { + "name": "141", + "members": [ + { + "name": "capabilities", + "type": "[142]" + } + ], + "meta-type": "object" + }, + { + "name": "[142]", + "element-type": "142", + "meta-type": "array" + }, + { + "name": "142", + "members": [ + { + "name": "capability", + "type": "407" + }, + { + "name": "state", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "143", + "members": [ + { + "name": "announce-initial", + "default": null, + "type": "int" + }, + { + "name": "announce-max", + "default": null, + "type": "int" + }, + { + "name": "announce-rounds", + "default": null, + "type": "int" + }, + { + "name": "announce-step", + "default": null, + "type": "int" + }, + { + "name": "compress-level", + "default": null, + "type": "int" + }, + { + "name": "compress-threads", + "default": null, + "type": "int" + }, + { + "name": "compress-wait-thread", + "default": null, + "type": "bool" + }, + { + "name": "decompress-threads", + "default": null, + "type": "int" + }, + { + "name": "throttle-trigger-threshold", + "default": null, + "type": "int" + }, + { + "name": "cpu-throttle-initial", + "default": null, + "type": "int" + }, + { + "name": "cpu-throttle-increment", + "default": null, + "type": "int" + }, + { + "name": "cpu-throttle-tailslow", + "default": null, + "type": "bool" + }, + { + "name": "tls-creds", + "default": null, + "type": "334" + }, + { + "name": "tls-hostname", + "default": null, + "type": "334" + }, + { + "name": "tls-authz", + "default": null, + "type": "334" + }, + { + "name": "max-bandwidth", + "default": null, + "type": "int" + }, + { + "name": "downtime-limit", + "default": null, + "type": "int" + }, + { + "name": "x-checkpoint-delay", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "block-incremental", + "default": null, + "type": "bool" + }, + { + "name": "multifd-channels", + "default": null, + "type": "int" + }, + { + "name": "xbzrle-cache-size", + "default": null, + "type": "int" + }, + { + "name": "max-postcopy-bandwidth", + "default": null, + "type": "int" + }, + { + "name": "max-cpu-throttle", + "default": null, + "type": "int" + }, + { + "name": "multifd-compression", + "default": null, + "type": "408" + }, + { + "name": "multifd-zlib-level", + "default": null, + "type": "int" + }, + { + "name": "multifd-zstd-level", + "default": null, + "type": "int" + }, + { + "name": "block-bitmap-mapping", + "default": null, + "type": "[409]" + } + ], + "meta-type": "object" + }, + { + "name": "144", + "members": [ + { + "name": "announce-initial", + "default": null, + "type": "int" + }, + { + "name": "announce-max", + "default": null, + "type": "int" + }, + { + "name": "announce-rounds", + "default": null, + "type": "int" + }, + { + "name": "announce-step", + "default": null, + "type": "int" + }, + { + "name": "compress-level", + "default": null, + "type": "int" + }, + { + "name": "compress-threads", + "default": null, + "type": "int" + }, + { + "name": "compress-wait-thread", + "default": null, + "type": "bool" + }, + { + "name": "decompress-threads", + "default": null, + "type": "int" + }, + { + "name": "throttle-trigger-threshold", + "default": null, + "type": "int" + }, + { + "name": "cpu-throttle-initial", + "default": null, + "type": "int" + }, + { + "name": "cpu-throttle-increment", + "default": null, + "type": "int" + }, + { + "name": "cpu-throttle-tailslow", + "default": null, + "type": "bool" + }, + { + "name": "tls-creds", + "default": null, + "type": "str" + }, + { + "name": "tls-hostname", + "default": null, + "type": "str" + }, + { + "name": "tls-authz", + "default": null, + "type": "str" + }, + { + "name": "max-bandwidth", + "default": null, + "type": "int" + }, + { + "name": "downtime-limit", + "default": null, + "type": "int" + }, + { + "name": "x-checkpoint-delay", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "block-incremental", + "default": null, + "type": "bool" + }, + { + "name": "multifd-channels", + "default": null, + "type": "int" + }, + { + "name": "xbzrle-cache-size", + "default": null, + "type": "int" + }, + { + "name": "max-postcopy-bandwidth", + "default": null, + "type": "int" + }, + { + "name": "max-cpu-throttle", + "default": null, + "type": "int" + }, + { + "name": "multifd-compression", + "default": null, + "type": "408" + }, + { + "name": "multifd-zlib-level", + "default": null, + "type": "int" + }, + { + "name": "multifd-zstd-level", + "default": null, + "type": "int" + }, + { + "name": "block-bitmap-mapping", + "default": null, + "type": "[409]" + } + ], + "meta-type": "object" + }, + { + "name": "145", + "members": [ + { + "name": "protocol", + "type": "str" + }, + { + "name": "hostname", + "type": "str" + }, + { + "name": "port", + "default": null, + "type": "int" + }, + { + "name": "tls-port", + "default": null, + "type": "int" + }, + { + "name": "cert-subject", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "146", + "members": [ + { + "name": "status", + "type": "402" + } + ], + "meta-type": "object" + }, + { + "name": "147", + "members": [ + { + "name": "pass", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "148", + "members": [ + { + "name": "mode", + "type": "410" + }, + { + "name": "reason", + "type": "411" + } + ], + "meta-type": "object" + }, + { + "name": "149", + "members": [ + { + "name": "state", + "type": "402" + } + ], + "meta-type": "object" + }, + { + "name": "150", + "members": [ + { + "name": "uri", + "type": "str" + }, + { + "name": "blk", + "default": null, + "type": "bool" + }, + { + "name": "inc", + "default": null, + "type": "bool" + }, + { + "name": "detach", + "default": null, + "type": "bool" + }, + { + "name": "resume", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "151", + "members": [ + { + "name": "uri", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "152", + "members": [ + { + "name": "filename", + "type": "str" + }, + { + "name": "live", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "153", + "members": [ + { + "name": "enable", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "154", + "members": [ + { + "name": "filename", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "155", + "members": [ + { + "name": "enable", + "type": "bool" + }, + { + "name": "primary", + "type": "bool" + }, + { + "name": "failover", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "156", + "members": [ + { + "name": "error", + "type": "bool" + }, + { + "name": "desc", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "157", + "members": [ + { + "name": "mode", + "type": "410" + }, + { + "name": "last-mode", + "type": "410" + }, + { + "name": "reason", + "type": "411" + } + ], + "meta-type": "object" + }, + { + "name": "158", + "members": [ + { + "name": "uri", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "159", + "members": [ + { + "name": "device-id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "160", + "members": [ + { + "name": "calc-time", + "type": "int" + }, + { + "name": "sample-pages", + "default": null, + "type": "int" + }, + { + "name": "mode", + "default": null, + "type": "412" + } + ], + "meta-type": "object" + }, + { + "name": "161", + "members": [ + { + "name": "dirty-rate", + "default": null, + "type": "int" + }, + { + "name": "status", + "type": "413" + }, + { + "name": "start-time", + "type": "int" + }, + { + "name": "calc-time", + "type": "int" + }, + { + "name": "sample-pages", + "type": "int" + }, + { + "name": "mode", + "type": "412" + }, + { + "name": "vcpu-dirty-rate", + "default": null, + "type": "[414]" + } + ], + "meta-type": "object" + }, + { + "name": "162", + "members": [ + { + "name": "cpu-index", + "default": null, + "type": "int" + }, + { + "name": "dirty-rate", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "163", + "members": [ + { + "name": "cpu-index", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[164]", + "element-type": "164", + "meta-type": "array" + }, + { + "name": "164", + "members": [ + { + "name": "cpu-index", + "type": "int" + }, + { + "name": "limit-rate", + "type": "int" + }, + { + "name": "current-rate", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "165", + "members": [ + { + "name": "job-id", + "type": "str" + }, + { + "name": "tag", + "type": "str" + }, + { + "name": "vmstate", + "type": "str" + }, + { + "name": "devices", + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "166", + "members": [ + { + "name": "job-id", + "type": "str" + }, + { + "name": "tag", + "type": "str" + }, + { + "name": "vmstate", + "type": "str" + }, + { + "name": "devices", + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "167", + "members": [ + { + "name": "job-id", + "type": "str" + }, + { + "name": "tag", + "type": "str" + }, + { + "name": "devices", + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "168", + "members": [ + { + "name": "actions", + "type": "[415]" + }, + { + "name": "properties", + "default": null, + "type": "416" + } + ], + "meta-type": "object" + }, + { + "name": "169", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "vcpu", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[170]", + "element-type": "170", + "meta-type": "array" + }, + { + "name": "170", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "state", + "type": "417" + }, + { + "name": "vcpu", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "171", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "enable", + "type": "bool" + }, + { + "name": "ignore-unavailable", + "default": null, + "type": "bool" + }, + { + "name": "vcpu", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "172", + "members": [ + { + "name": "enable", + "default": null, + "type": "[418]" + } + ], + "meta-type": "object" + }, + { + "name": "173", + "members": [ + { + "name": "qemu", + "type": "419" + }, + { + "name": "package", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[174]", + "element-type": "174", + "meta-type": "array" + }, + { + "name": "174", + "members": [ + { + "name": "name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[175]", + "element-type": "175", + "meta-type": "array" + }, + { + "name": "175", + "tag": "meta-type", + "variants": [ + { + "case": "builtin", + "type": "421" + }, + { + "case": "enum", + "type": "422" + }, + { + "case": "array", + "type": "423" + }, + { + "case": "object", + "type": "424" + }, + { + "case": "alternate", + "type": "425" + }, + { + "case": "command", + "type": "426" + }, + { + "case": "event", + "type": "427" + } + ], + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "meta-type", + "type": "420" + }, + { + "name": "features", + "default": null, + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "176", + "members": [ + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[177]", + "element-type": "177", + "meta-type": "array" + }, + { + "name": "177", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "type", + "type": "str" + }, + { + "name": "description", + "default": null, + "type": "str" + }, + { + "name": "default-value", + "default": null, + "type": "any" + } + ], + "meta-type": "object" + }, + { + "name": "178", + "members": [ + { + "name": "path", + "type": "str" + }, + { + "name": "property", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "any", + "json-type": "value", + "meta-type": "builtin" + }, + { + "name": "179", + "members": [ + { + "name": "path", + "type": "str" + }, + { + "name": "property", + "type": "str" + }, + { + "name": "value", + "type": "any" + } + ], + "meta-type": "object" + }, + { + "name": "180", + "members": [ + { + "name": "implements", + "default": null, + "type": "str" + }, + { + "name": "abstract", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "[181]", + "element-type": "181", + "meta-type": "array" + }, + { + "name": "181", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "abstract", + "default": null, + "type": "bool" + }, + { + "name": "parent", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "182", + "members": [ + { + "name": "typename", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "183", + "tag": "qom-type", + "variants": [ + { + "case": "authz-list", + "type": "429" + }, + { + "case": "authz-listfile", + "type": "430" + }, + { + "case": "authz-pam", + "type": "431" + }, + { + "case": "authz-simple", + "type": "432" + }, + { + "case": "can-host-socketcan", + "type": "433" + }, + { + "case": "colo-compare", + "type": "434" + }, + { + "case": "cryptodev-backend", + "type": "435" + }, + { + "case": "cryptodev-backend-builtin", + "type": "435" + }, + { + "case": "cryptodev-backend-lkcf", + "type": "435" + }, + { + "case": "cryptodev-vhost-user", + "type": "436" + }, + { + "case": "dbus-vmstate", + "type": "437" + }, + { + "case": "filter-buffer", + "type": "438" + }, + { + "case": "filter-dump", + "type": "439" + }, + { + "case": "filter-mirror", + "type": "440" + }, + { + "case": "filter-redirector", + "type": "441" + }, + { + "case": "filter-replay", + "type": "442" + }, + { + "case": "filter-rewriter", + "type": "443" + }, + { + "case": "input-barrier", + "type": "444" + }, + { + "case": "input-linux", + "type": "445" + }, + { + "case": "iothread", + "type": "446" + }, + { + "case": "main-loop", + "type": "447" + }, + { + "case": "memory-backend-epc", + "type": "448" + }, + { + "case": "memory-backend-file", + "type": "449" + }, + { + "case": "memory-backend-memfd", + "type": "450" + }, + { + "case": "memory-backend-ram", + "type": "451" + }, + { + "case": "pr-manager-helper", + "type": "452" + }, + { + "case": "qtest", + "type": "453" + }, + { + "case": "rng-builtin", + "type": "454" + }, + { + "case": "rng-egd", + "type": "455" + }, + { + "case": "rng-random", + "type": "456" + }, + { + "case": "secret", + "type": "457" + }, + { + "case": "secret_keyring", + "type": "458" + }, + { + "case": "sev-guest", + "type": "459" + }, + { + "case": "thread-context", + "type": "460" + }, + { + "case": "throttle-group", + "type": "461" + }, + { + "case": "tls-creds-anon", + "type": "462" + }, + { + "case": "tls-creds-psk", + "type": "463" + }, + { + "case": "tls-creds-x509", + "type": "464" + }, + { + "case": "tls-cipher-suites", + "type": "465" + }, + { + "case": "x-remote-object", + "type": "466" + }, + { + "case": "x-vfio-user-server", + "type": "467" + }, + { + "case": "can-bus", + "type": "0" + }, + { + "case": "pef-guest", + "type": "0" + }, + { + "case": "s390-pv-guest", + "type": "0" + } + ], + "members": [ + { + "name": "qom-type", + "type": "428" + }, + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "184", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "185", + "members": [ + { + "name": "typename", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "186", + "members": [ + { + "name": "driver", + "type": "str" + }, + { + "name": "bus", + "default": null, + "type": "str" + }, + { + "name": "id", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "187", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "188", + "members": [ + { + "name": "device", + "default": null, + "type": "str" + }, + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "189", + "members": [ + { + "name": "device", + "default": null, + "type": "str" + }, + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[190]", + "element-type": "190", + "meta-type": "array" + }, + { + "name": "190", + "tag": "target", + "variants": [ + { + "case": "s390x", + "type": "470" + }, + { + "case": "aarch64", + "type": "0" + }, + { + "case": "alpha", + "type": "0" + }, + { + "case": "arm", + "type": "0" + }, + { + "case": "avr", + "type": "0" + }, + { + "case": "cris", + "type": "0" + }, + { + "case": "hppa", + "type": "0" + }, + { + "case": "i386", + "type": "0" + }, + { + "case": "loongarch64", + "type": "0" + }, + { + "case": "m68k", + "type": "0" + }, + { + "case": "microblaze", + "type": "0" + }, + { + "case": "microblazeel", + "type": "0" + }, + { + "case": "mips", + "type": "0" + }, + { + "case": "mips64", + "type": "0" + }, + { + "case": "mips64el", + "type": "0" + }, + { + "case": "mipsel", + "type": "0" + }, + { + "case": "nios2", + "type": "0" + }, + { + "case": "or1k", + "type": "0" + }, + { + "case": "ppc", + "type": "0" + }, + { + "case": "ppc64", + "type": "0" + }, + { + "case": "riscv32", + "type": "0" + }, + { + "case": "riscv64", + "type": "0" + }, + { + "case": "rx", + "type": "0" + }, + { + "case": "sh4", + "type": "0" + }, + { + "case": "sh4eb", + "type": "0" + }, + { + "case": "sparc", + "type": "0" + }, + { + "case": "sparc64", + "type": "0" + }, + { + "case": "tricore", + "type": "0" + }, + { + "case": "x86_64", + "type": "0" + }, + { + "case": "xtensa", + "type": "0" + }, + { + "case": "xtensaeb", + "type": "0" + } + ], + "members": [ + { + "name": "cpu-index", + "type": "int" + }, + { + "name": "qom-path", + "type": "str" + }, + { + "name": "thread-id", + "type": "int" + }, + { + "name": "props", + "default": null, + "type": "468" + }, + { + "name": "target", + "type": "469" + } + ], + "meta-type": "object" + }, + { + "name": "[191]", + "element-type": "191", + "meta-type": "array" + }, + { + "name": "191", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "alias", + "default": null, + "type": "str" + }, + { + "name": "is-default", + "default": null, + "type": "bool" + }, + { + "name": "cpu-max", + "type": "int" + }, + { + "name": "hotpluggable-cpus", + "type": "bool" + }, + { + "name": "numa-mem-supported", + "type": "bool" + }, + { + "name": "deprecated", + "type": "bool" + }, + { + "name": "default-cpu-type", + "default": null, + "type": "str" + }, + { + "name": "default-ram-id", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "192", + "members": [ + { + "name": "wakeup-suspend-support", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "193", + "members": [ + { + "name": "arch", + "type": "469" + } + ], + "meta-type": "object" + }, + { + "name": "194", + "members": [ + { + "name": "UUID", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "195", + "members": [ + { + "name": "guid", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "196", + "members": [ + { + "name": "enabled", + "type": "bool" + }, + { + "name": "present", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "197", + "members": [ + { + "name": "val", + "type": "int" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "filename", + "type": "str" + }, + { + "name": "cpu-index", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "198", + "members": [ + { + "name": "val", + "type": "int" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "filename", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[199]", + "element-type": "199", + "meta-type": "array" + }, + { + "name": "199", + "members": [ + { + "name": "id", + "default": null, + "type": "str" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "merge", + "type": "bool" + }, + { + "name": "dump", + "type": "bool" + }, + { + "name": "prealloc", + "type": "bool" + }, + { + "name": "share", + "type": "bool" + }, + { + "name": "reserve", + "default": null, + "type": "bool" + }, + { + "name": "host-nodes", + "type": "[int]" + }, + { + "name": "policy", + "type": "471" + } + ], + "meta-type": "object" + }, + { + "name": "[200]", + "element-type": "200", + "meta-type": "array" + }, + { + "name": "200", + "members": [ + { + "name": "type", + "type": "str" + }, + { + "name": "vcpus-count", + "type": "int" + }, + { + "name": "props", + "type": "468" + }, + { + "name": "qom-path", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "201", + "tag": "type", + "variants": [ + { + "case": "node", + "type": "473" + }, + { + "case": "dist", + "type": "474" + }, + { + "case": "cpu", + "type": "475" + }, + { + "case": "hmat-lb", + "type": "476" + }, + { + "case": "hmat-cache", + "type": "477" + } + ], + "members": [ + { + "name": "type", + "type": "472" + } + ], + "meta-type": "object" + }, + { + "name": "202", + "members": [ + { + "name": "value", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "203", + "members": [ + { + "name": "actual", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "204", + "members": [ + { + "name": "actual", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "205", + "members": [ + { + "name": "base-memory", + "type": "int" + }, + { + "name": "plugged-memory", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[206]", + "element-type": "206", + "meta-type": "array" + }, + { + "name": "206", + "tag": "type", + "variants": [ + { + "case": "dimm", + "type": "479" + }, + { + "case": "nvdimm", + "type": "479" + }, + { + "case": "virtio-pmem", + "type": "480" + }, + { + "case": "virtio-mem", + "type": "481" + }, + { + "case": "sgx-epc", + "type": "482" + } + ], + "members": [ + { + "name": "type", + "type": "478" + } + ], + "meta-type": "object" + }, + { + "name": "207", + "members": [ + { + "name": "id", + "default": null, + "type": "str" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "qom-path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "208", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "msg", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "209", + "members": [ + { + "name": "human-readable-text", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "210", + "members": [ + { + "name": "filename", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[217]", + "element-type": "217", + "meta-type": "array" + }, + { + "name": "217", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "migration-safe", + "default": null, + "type": "bool" + }, + { + "name": "static", + "type": "bool" + }, + { + "name": "unavailable-features", + "default": null, + "type": "[str]" + }, + { + "name": "typename", + "type": "str" + }, + { + "name": "alias-of", + "default": null, + "type": "str" + }, + { + "name": "deprecated", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "218", + "members": [ + { + "name": "mode", + "type": "486" + }, + { + "name": "filename", + "default": null, + "type": "str" + }, + { + "name": "icount", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "219", + "members": [ + { + "name": "icount", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "220", + "members": [ + { + "name": "icount", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "221", + "members": [ + { + "name": "instances", + "type": "[222]" + } + ], + "meta-type": "object" + }, + { + "name": "[222]", + "element-type": "222", + "meta-type": "array" + }, + { + "name": "222", + "tag": "type", + "variants": [ + { + "case": "block-node", + "type": "488" + }, + { + "case": "chardev", + "type": "489" + }, + { + "case": "migration", + "type": "0" + } + ], + "members": [ + { + "name": "type", + "type": "487" + } + ], + "meta-type": "object" + }, + { + "name": "223", + "members": [ + { + "name": "protocol", + "type": "str" + }, + { + "name": "fdname", + "type": "str" + }, + { + "name": "skipauth", + "default": null, + "type": "bool" + }, + { + "name": "tls", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "224", + "members": [ + { + "name": "name", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[225]", + "element-type": "225", + "meta-type": "array" + }, + { + "name": "225", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "thread-id", + "type": "int" + }, + { + "name": "poll-max-ns", + "type": "int" + }, + { + "name": "poll-grow", + "type": "int" + }, + { + "name": "poll-shrink", + "type": "int" + }, + { + "name": "aio-max-batch", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "226", + "members": [ + { + "name": "command-line", + "type": "str" + }, + { + "name": "cpu-index", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "227", + "members": [ + { + "name": "fdname", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "228", + "members": [ + { + "name": "fdname", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "229", + "members": [ + { + "name": "fdset-id", + "default": null, + "type": "int" + }, + { + "name": "opaque", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "230", + "members": [ + { + "name": "fdset-id", + "type": "int" + }, + { + "name": "fd", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "231", + "members": [ + { + "name": "fdset-id", + "type": "int" + }, + { + "name": "fd", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[232]", + "element-type": "232", + "meta-type": "array" + }, + { + "name": "232", + "members": [ + { + "name": "fdset-id", + "type": "int" + }, + { + "name": "fds", + "type": "[490]" + } + ], + "meta-type": "object" + }, + { + "name": "233", + "members": [ + { + "name": "option", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[234]", + "element-type": "234", + "meta-type": "array" + }, + { + "name": "234", + "members": [ + { + "name": "option", + "type": "str" + }, + { + "name": "parameters", + "type": "[491]" + } + ], + "meta-type": "object" + }, + { + "name": "235", + "members": [ + { + "name": "offset", + "type": "int" + }, + { + "name": "qom-path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "236", + "members": [ + { + "name": "vfu-id", + "type": "str" + }, + { + "name": "vfu-qom-path", + "type": "str" + }, + { + "name": "dev-id", + "type": "str" + }, + { + "name": "dev-qom-path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[246]", + "element-type": "246", + "meta-type": "array" + }, + { + "name": "246", + "members": [ + { + "name": "device", + "default": null, + "type": "str" + }, + { + "name": "slot", + "type": "str" + }, + { + "name": "slot-type", + "type": "494" + }, + { + "name": "source", + "type": "int" + }, + { + "name": "status", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "247", + "members": [ + { + "name": "info", + "type": "246" + } + ], + "meta-type": "object" + }, + { + "name": "[248]", + "element-type": "248", + "meta-type": "array" + }, + { + "name": "248", + "members": [ + { + "name": "bus", + "type": "int" + }, + { + "name": "devices", + "type": "[495]" + } + ], + "meta-type": "object" + }, + { + "name": "249", + "tag": "target", + "variants": [ + { + "case": "vcpu", + "type": "498" + }, + { + "case": "vm", + "type": "0" + } + ], + "members": [ + { + "name": "target", + "type": "496" + }, + { + "name": "providers", + "default": null, + "type": "[497]" + } + ], + "meta-type": "object" + }, + { + "name": "[250]", + "element-type": "250", + "meta-type": "array" + }, + { + "name": "250", + "members": [ + { + "name": "provider", + "type": "499" + }, + { + "name": "qom-path", + "default": null, + "type": "str" + }, + { + "name": "stats", + "type": "[500]" + } + ], + "meta-type": "object" + }, + { + "name": "251", + "members": [ + { + "name": "provider", + "default": null, + "type": "499" + } + ], + "meta-type": "object" + }, + { + "name": "[252]", + "element-type": "252", + "meta-type": "array" + }, + { + "name": "252", + "members": [ + { + "name": "provider", + "type": "499" + }, + { + "name": "target", + "type": "496" + }, + { + "name": "stats", + "type": "[501]" + } + ], + "meta-type": "object" + }, + { + "name": "[253]", + "element-type": "253", + "meta-type": "array" + }, + { + "name": "253", + "members": [ + { + "name": "path", + "type": "str" + }, + { + "name": "name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "254", + "members": [ + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "255", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "device-id", + "type": "int" + }, + { + "name": "vhost-started", + "type": "bool" + }, + { + "name": "device-endian", + "type": "str" + }, + { + "name": "guest-features", + "type": "502" + }, + { + "name": "host-features", + "type": "502" + }, + { + "name": "backend-features", + "type": "502" + }, + { + "name": "num-vqs", + "type": "int" + }, + { + "name": "status", + "type": "503" + }, + { + "name": "isr", + "type": "int" + }, + { + "name": "queue-sel", + "type": "int" + }, + { + "name": "vm-running", + "type": "bool" + }, + { + "name": "broken", + "type": "bool" + }, + { + "name": "disabled", + "type": "bool" + }, + { + "name": "use-started", + "type": "bool" + }, + { + "name": "started", + "type": "bool" + }, + { + "name": "start-on-kick", + "type": "bool" + }, + { + "name": "disable-legacy-check", + "type": "bool" + }, + { + "name": "bus-name", + "type": "str" + }, + { + "name": "use-guest-notifier-mask", + "type": "bool" + }, + { + "name": "vhost-dev", + "default": null, + "type": "504" + } + ], + "meta-type": "object" + }, + { + "name": "256", + "members": [ + { + "name": "path", + "type": "str" + }, + { + "name": "queue", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "257", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "queue-index", + "type": "int" + }, + { + "name": "inuse", + "type": "int" + }, + { + "name": "vring-num", + "type": "int" + }, + { + "name": "vring-num-default", + "type": "int" + }, + { + "name": "vring-align", + "type": "int" + }, + { + "name": "vring-desc", + "type": "int" + }, + { + "name": "vring-avail", + "type": "int" + }, + { + "name": "vring-used", + "type": "int" + }, + { + "name": "last-avail-idx", + "default": null, + "type": "int" + }, + { + "name": "shadow-avail-idx", + "default": null, + "type": "int" + }, + { + "name": "used-idx", + "type": "int" + }, + { + "name": "signalled-used", + "type": "int" + }, + { + "name": "signalled-used-valid", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "258", + "members": [ + { + "name": "path", + "type": "str" + }, + { + "name": "queue", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "259", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "kick", + "type": "int" + }, + { + "name": "call", + "type": "int" + }, + { + "name": "desc", + "type": "int" + }, + { + "name": "avail", + "type": "int" + }, + { + "name": "used", + "type": "int" + }, + { + "name": "num", + "type": "int" + }, + { + "name": "desc-phys", + "type": "int" + }, + { + "name": "desc-size", + "type": "int" + }, + { + "name": "avail-phys", + "type": "int" + }, + { + "name": "avail-size", + "type": "int" + }, + { + "name": "used-phys", + "type": "int" + }, + { + "name": "used-size", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "260", + "members": [ + { + "name": "path", + "type": "str" + }, + { + "name": "queue", + "type": "int" + }, + { + "name": "index", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "261", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "index", + "type": "int" + }, + { + "name": "descs", + "type": "[505]" + }, + { + "name": "avail", + "type": "506" + }, + { + "name": "used", + "type": "507" + } + ], + "meta-type": "object" + }, + { + "name": "bool", + "json-type": "boolean", + "meta-type": "builtin" + }, + { + "name": "262", + "members": [ + { + "name": "debug" + }, + { + "name": "inmigrate" + }, + { + "name": "internal-error" + }, + { + "name": "io-error" + }, + { + "name": "paused" + }, + { + "name": "postmigrate" + }, + { + "name": "prelaunch" + }, + { + "name": "finish-migrate" + }, + { + "name": "restore-vm" + }, + { + "name": "running" + }, + { + "name": "save-vm" + }, + { + "name": "shutdown" + }, + { + "name": "suspended" + }, + { + "name": "watchdog" + }, + { + "name": "guest-panicked" + }, + { + "name": "colo" + } + ], + "meta-type": "enum", + "values": [ + "debug", + "inmigrate", + "internal-error", + "io-error", + "paused", + "postmigrate", + "prelaunch", + "finish-migrate", + "restore-vm", + "running", + "save-vm", + "shutdown", + "suspended", + "watchdog", + "guest-panicked", + "colo" + ] + }, + { + "name": "263", + "members": [ + { + "name": "none" + }, + { + "name": "host-error" + }, + { + "name": "host-qmp-quit" + }, + { + "name": "host-qmp-system-reset" + }, + { + "name": "host-signal" + }, + { + "name": "host-ui" + }, + { + "name": "guest-shutdown" + }, + { + "name": "guest-reset" + }, + { + "name": "guest-panic" + }, + { + "name": "subsystem-reset" + }, + { + "name": "snapshot-load" + } + ], + "meta-type": "enum", + "values": [ + "none", + "host-error", + "host-qmp-quit", + "host-qmp-system-reset", + "host-signal", + "host-ui", + "guest-shutdown", + "guest-reset", + "guest-panic", + "subsystem-reset", + "snapshot-load" + ] + }, + { + "name": "264", + "members": [ + { + "name": "reset" + }, + { + "name": "shutdown" + }, + { + "name": "poweroff" + }, + { + "name": "pause" + }, + { + "name": "debug" + }, + { + "name": "none" + }, + { + "name": "inject-nmi" + } + ], + "meta-type": "enum", + "values": [ + "reset", + "shutdown", + "poweroff", + "pause", + "debug", + "none", + "inject-nmi" + ] + }, + { + "name": "265", + "members": [ + { + "name": "reset" + }, + { + "name": "shutdown" + } + ], + "meta-type": "enum", + "values": [ + "reset", + "shutdown" + ] + }, + { + "name": "266", + "members": [ + { + "name": "poweroff" + }, + { + "name": "pause" + } + ], + "meta-type": "enum", + "values": [ + "poweroff", + "pause" + ] + }, + { + "name": "267", + "members": [ + { + "name": "pause" + }, + { + "name": "shutdown" + }, + { + "name": "exit-failure" + }, + { + "name": "none" + } + ], + "meta-type": "enum", + "values": [ + "pause", + "shutdown", + "exit-failure", + "none" + ] + }, + { + "name": "268", + "members": [ + { + "name": "pause" + }, + { + "name": "poweroff" + }, + { + "name": "run" + } + ], + "meta-type": "enum", + "values": [ + "pause", + "poweroff", + "run" + ] + }, + { + "name": "269", + "tag": "type", + "variants": [ + { + "case": "hyper-v", + "type": "509" + }, + { + "case": "s390", + "type": "510" + } + ], + "members": [ + { + "name": "type", + "type": "508" + } + ], + "meta-type": "object" + }, + { + "name": "270", + "members": [ + { + "name": "hypervisor" + }, + { + "name": "guest" + } + ], + "meta-type": "enum", + "values": [ + "hypervisor", + "guest" + ] + }, + { + "name": "271", + "members": [ + { + "name": "ignore" + }, + { + "name": "inject" + }, + { + "name": "fatal" + }, + { + "name": "reset" + } + ], + "meta-type": "enum", + "values": [ + "ignore", + "inject", + "fatal", + "reset" + ] + }, + { + "name": "272", + "members": [ + { + "name": "action-required", + "type": "bool" + }, + { + "name": "recursive", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "273", + "members": [ + { + "name": "retain" + }, + { + "name": "read-only" + }, + { + "name": "read-write" + } + ], + "meta-type": "enum", + "values": [ + "retain", + "read-only", + "read-write" + ] + }, + { + "name": "int", + "json-type": "int", + "meta-type": "builtin" + }, + { + "name": "[int]", + "element-type": "int", + "meta-type": "array" + }, + { + "name": "274", + "members": [ + { + "name": "ok" + }, + { + "name": "failed" + }, + { + "name": "nospace" + } + ], + "meta-type": "enum", + "values": [ + "ok", + "failed", + "nospace" + ] + }, + { + "name": "275", + "members": [ + { + "name": "rd_bytes", + "type": "int" + }, + { + "name": "wr_bytes", + "type": "int" + }, + { + "name": "unmap_bytes", + "type": "int" + }, + { + "name": "rd_operations", + "type": "int" + }, + { + "name": "wr_operations", + "type": "int" + }, + { + "name": "flush_operations", + "type": "int" + }, + { + "name": "unmap_operations", + "type": "int" + }, + { + "name": "rd_total_time_ns", + "type": "int" + }, + { + "name": "wr_total_time_ns", + "type": "int" + }, + { + "name": "flush_total_time_ns", + "type": "int" + }, + { + "name": "unmap_total_time_ns", + "type": "int" + }, + { + "name": "wr_highest_offset", + "type": "int" + }, + { + "name": "rd_merged", + "type": "int" + }, + { + "name": "wr_merged", + "type": "int" + }, + { + "name": "unmap_merged", + "type": "int" + }, + { + "name": "idle_time_ns", + "default": null, + "type": "int" + }, + { + "name": "failed_rd_operations", + "type": "int" + }, + { + "name": "failed_wr_operations", + "type": "int" + }, + { + "name": "failed_flush_operations", + "type": "int" + }, + { + "name": "failed_unmap_operations", + "type": "int" + }, + { + "name": "invalid_rd_operations", + "type": "int" + }, + { + "name": "invalid_wr_operations", + "type": "int" + }, + { + "name": "invalid_flush_operations", + "type": "int" + }, + { + "name": "invalid_unmap_operations", + "type": "int" + }, + { + "name": "account_invalid", + "type": "bool" + }, + { + "name": "account_failed", + "type": "bool" + }, + { + "name": "timed_stats", + "type": "[511]" + }, + { + "name": "rd_latency_histogram", + "default": null, + "type": "512" + }, + { + "name": "wr_latency_histogram", + "default": null, + "type": "512" + }, + { + "name": "flush_latency_histogram", + "default": null, + "type": "512" + } + ], + "meta-type": "object" + }, + { + "name": "276", + "tag": "driver", + "variants": [ + { + "case": "file", + "type": "513" + }, + { + "case": "host_device", + "type": "513" + }, + { + "case": "nvme", + "type": "514" + }, + { + "case": "blkdebug", + "type": "0" + }, + { + "case": "blklogwrites", + "type": "0" + }, + { + "case": "blkreplay", + "type": "0" + }, + { + "case": "blkverify", + "type": "0" + }, + { + "case": "bochs", + "type": "0" + }, + { + "case": "cloop", + "type": "0" + }, + { + "case": "compress", + "type": "0" + }, + { + "case": "copy-before-write", + "type": "0" + }, + { + "case": "copy-on-read", + "type": "0" + }, + { + "case": "dmg", + "type": "0" + }, + { + "case": "snapshot-access", + "type": "0" + }, + { + "case": "ftp", + "type": "0" + }, + { + "case": "ftps", + "type": "0" + }, + { + "case": "gluster", + "type": "0" + }, + { + "case": "host_cdrom", + "type": "0" + }, + { + "case": "http", + "type": "0" + }, + { + "case": "https", + "type": "0" + }, + { + "case": "io_uring", + "type": "0" + }, + { + "case": "iscsi", + "type": "0" + }, + { + "case": "luks", + "type": "0" + }, + { + "case": "nbd", + "type": "0" + }, + { + "case": "nfs", + "type": "0" + }, + { + "case": "null-aio", + "type": "0" + }, + { + "case": "null-co", + "type": "0" + }, + { + "case": "nvme-io_uring", + "type": "0" + }, + { + "case": "parallels", + "type": "0" + }, + { + "case": "preallocate", + "type": "0" + }, + { + "case": "qcow", + "type": "0" + }, + { + "case": "qcow2", + "type": "0" + }, + { + "case": "qed", + "type": "0" + }, + { + "case": "quorum", + "type": "0" + }, + { + "case": "raw", + "type": "0" + }, + { + "case": "rbd", + "type": "0" + }, + { + "case": "replication", + "type": "0" + }, + { + "case": "ssh", + "type": "0" + }, + { + "case": "throttle", + "type": "0" + }, + { + "case": "vdi", + "type": "0" + }, + { + "case": "vhdx", + "type": "0" + }, + { + "case": "virtio-blk-vfio-pci", + "type": "0" + }, + { + "case": "virtio-blk-vhost-user", + "type": "0" + }, + { + "case": "virtio-blk-vhost-vdpa", + "type": "0" + }, + { + "case": "vmdk", + "type": "0" + }, + { + "case": "vpc", + "type": "0" + }, + { + "case": "vvfat", + "type": "0" + } + ], + "members": [ + { + "name": "driver", + "type": "291" + } + ], + "meta-type": "object" + }, + { + "name": "277", + "members": [ + { + "name": "undefined" + }, + { + "name": "created" + }, + { + "name": "running" + }, + { + "name": "paused" + }, + { + "name": "ready" + }, + { + "name": "standby" + }, + { + "name": "waiting" + }, + { + "name": "pending" + }, + { + "name": "aborting" + }, + { + "name": "concluded" + }, + { + "name": "null" + } + ], + "meta-type": "enum", + "values": [ + "undefined", + "created", + "running", + "paused", + "ready", + "standby", + "waiting", + "pending", + "aborting", + "concluded", + "null" + ] + }, + { + "name": "278", + "members": [ + { + "name": "existing" + }, + { + "name": "absolute-paths" + } + ], + "meta-type": "enum", + "values": [ + "existing", + "absolute-paths" + ] + }, + { + "name": "279", + "members": [ + { + "name": "report" + }, + { + "name": "ignore" + }, + { + "name": "enospc" + }, + { + "name": "stop" + }, + { + "name": "auto" + } + ], + "meta-type": "enum", + "values": [ + "report", + "ignore", + "enospc", + "stop", + "auto" + ] + }, + { + "name": "280", + "members": [ + { + "name": "top" + }, + { + "name": "full" + }, + { + "name": "none" + }, + { + "name": "incremental" + }, + { + "name": "bitmap" + } + ], + "meta-type": "enum", + "values": [ + "top", + "full", + "none", + "incremental", + "bitmap" + ] + }, + { + "name": "281", + "members": [ + { + "name": "on-success" + }, + { + "name": "never" + }, + { + "name": "always" + } + ], + "meta-type": "enum", + "values": [ + "on-success", + "never", + "always" + ] + }, + { + "name": "282", + "members": [ + { + "name": "use-copy-range", + "default": null, + "type": "bool" + }, + { + "name": "max-workers", + "default": null, + "type": "int" + }, + { + "name": "max-chunk", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "283", + "members": [ + { + "name": "off" + }, + { + "name": "on" + }, + { + "name": "unmap" + } + ], + "meta-type": "enum", + "values": [ + "off", + "on", + "unmap" + ] + }, + { + "name": "284", + "members": [ + { + "name": "filename", + "type": "str" + }, + { + "name": "format", + "type": "str" + }, + { + "name": "dirty-flag", + "default": null, + "type": "bool" + }, + { + "name": "actual-size", + "default": null, + "type": "int" + }, + { + "name": "virtual-size", + "type": "int" + }, + { + "name": "cluster-size", + "default": null, + "type": "int" + }, + { + "name": "encrypted", + "default": null, + "type": "bool" + }, + { + "name": "compressed", + "default": null, + "type": "bool" + }, + { + "name": "backing-filename", + "default": null, + "type": "str" + }, + { + "name": "full-backing-filename", + "default": null, + "type": "str" + }, + { + "name": "backing-filename-format", + "default": null, + "type": "str" + }, + { + "name": "snapshots", + "default": null, + "type": "[69]" + }, + { + "name": "backing-image", + "default": null, + "type": "284" + }, + { + "name": "format-specific", + "default": null, + "type": "515" + } + ], + "meta-type": "object" + }, + { + "name": "285", + "members": [ + { + "name": "writeback", + "type": "bool" + }, + { + "name": "direct", + "type": "bool" + }, + { + "name": "no-flush", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "[286]", + "element-type": "286", + "meta-type": "array" + }, + { + "name": "286", + "members": [ + { + "name": "name", + "default": null, + "type": "str" + }, + { + "name": "count", + "type": "int" + }, + { + "name": "granularity", + "type": "int" + }, + { + "name": "recording", + "type": "bool" + }, + { + "name": "busy", + "type": "bool" + }, + { + "name": "persistent", + "type": "bool" + }, + { + "name": "inconsistent", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "[287]", + "element-type": "287", + "meta-type": "array" + }, + { + "name": "287", + "members": [ + { + "name": "id", + "type": "int" + }, + { + "name": "type", + "type": "516" + }, + { + "name": "name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[288]", + "element-type": "288", + "meta-type": "array" + }, + { + "name": "288", + "members": [ + { + "name": "parent", + "type": "int" + }, + { + "name": "child", + "type": "int" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "perm", + "type": "[517]" + }, + { + "name": "shared-perm", + "type": "[517]" + } + ], + "meta-type": "object" + }, + { + "name": "289", + "members": [ + { + "name": "background" + }, + { + "name": "write-blocking" + } + ], + "meta-type": "enum", + "values": [ + "background", + "write-blocking" + ] + }, + { + "name": "[290]", + "element-type": "290", + "meta-type": "array" + }, + { + "name": "290", + "members": [ + { + "type": "str" + }, + { + "type": "37" + } + ], + "meta-type": "alternate" + }, + { + "name": "291", + "members": [ + { + "name": "blkdebug" + }, + { + "name": "blklogwrites" + }, + { + "name": "blkreplay" + }, + { + "name": "blkverify" + }, + { + "name": "bochs" + }, + { + "name": "cloop" + }, + { + "name": "compress" + }, + { + "name": "copy-before-write" + }, + { + "name": "copy-on-read" + }, + { + "name": "dmg" + }, + { + "name": "file" + }, + { + "name": "snapshot-access" + }, + { + "name": "ftp" + }, + { + "name": "ftps" + }, + { + "name": "gluster" + }, + { + "name": "host_cdrom" + }, + { + "name": "host_device" + }, + { + "name": "http" + }, + { + "name": "https" + }, + { + "name": "io_uring" + }, + { + "name": "iscsi" + }, + { + "name": "luks" + }, + { + "name": "nbd" + }, + { + "name": "nfs" + }, + { + "name": "null-aio" + }, + { + "name": "null-co" + }, + { + "name": "nvme" + }, + { + "name": "nvme-io_uring" + }, + { + "name": "parallels" + }, + { + "name": "preallocate" + }, + { + "name": "qcow" + }, + { + "name": "qcow2" + }, + { + "name": "qed" + }, + { + "name": "quorum" + }, + { + "name": "raw" + }, + { + "name": "rbd" + }, + { + "name": "replication" + }, + { + "name": "ssh" + }, + { + "name": "throttle" + }, + { + "name": "vdi" + }, + { + "name": "vhdx" + }, + { + "name": "virtio-blk-vfio-pci" + }, + { + "name": "virtio-blk-vhost-user" + }, + { + "name": "virtio-blk-vhost-vdpa" + }, + { + "name": "vmdk" + }, + { + "name": "vpc" + }, + { + "name": "vvfat" + } + ], + "meta-type": "enum", + "values": [ + "blkdebug", + "blklogwrites", + "blkreplay", + "blkverify", + "bochs", + "cloop", + "compress", + "copy-before-write", + "copy-on-read", + "dmg", + "file", + "snapshot-access", + "ftp", + "ftps", + "gluster", + "host_cdrom", + "host_device", + "http", + "https", + "io_uring", + "iscsi", + "luks", + "nbd", + "nfs", + "null-aio", + "null-co", + "nvme", + "nvme-io_uring", + "parallels", + "preallocate", + "qcow", + "qcow2", + "qed", + "quorum", + "raw", + "rbd", + "replication", + "ssh", + "throttle", + "vdi", + "vhdx", + "virtio-blk-vfio-pci", + "virtio-blk-vhost-user", + "virtio-blk-vhost-vdpa", + "vmdk", + "vpc", + "vvfat" + ] + }, + { + "name": "292", + "members": [ + { + "name": "ignore" + }, + { + "name": "unmap" + } + ], + "meta-type": "enum", + "values": [ + "ignore", + "unmap" + ] + }, + { + "name": "293", + "members": [ + { + "name": "direct", + "default": null, + "type": "bool" + }, + { + "name": "no-flush", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "294", + "members": [ + { + "name": "image", + "type": "518" + }, + { + "name": "config", + "default": null, + "type": "str" + }, + { + "name": "align", + "default": null, + "type": "int" + }, + { + "name": "max-transfer", + "default": null, + "type": "int" + }, + { + "name": "opt-write-zero", + "default": null, + "type": "int" + }, + { + "name": "max-write-zero", + "default": null, + "type": "int" + }, + { + "name": "opt-discard", + "default": null, + "type": "int" + }, + { + "name": "max-discard", + "default": null, + "type": "int" + }, + { + "name": "inject-error", + "default": null, + "type": "[519]" + }, + { + "name": "set-state", + "default": null, + "type": "[520]" + }, + { + "name": "take-child-perms", + "default": null, + "type": "[517]" + }, + { + "name": "unshare-child-perms", + "default": null, + "type": "[517]" + } + ], + "meta-type": "object" + }, + { + "name": "295", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "log", + "type": "518" + }, + { + "name": "log-sector-size", + "default": null, + "type": "int" + }, + { + "name": "log-append", + "default": null, + "type": "bool" + }, + { + "name": "log-super-update-interval", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "296", + "members": [ + { + "name": "test", + "type": "518" + }, + { + "name": "raw", + "type": "518" + } + ], + "meta-type": "object" + }, + { + "name": "297", + "members": [ + { + "name": "image", + "type": "518" + } + ], + "meta-type": "object" + }, + { + "name": "298", + "members": [ + { + "name": "file", + "type": "518" + } + ], + "meta-type": "object" + }, + { + "name": "299", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "target", + "type": "518" + }, + { + "name": "bitmap", + "default": null, + "type": "37" + }, + { + "name": "on-cbw-error", + "default": null, + "type": "521" + }, + { + "name": "cbw-timeout", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "300", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "bottom", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "301", + "members": [ + { + "name": "filename", + "type": "str" + }, + { + "name": "pr-manager", + "default": null, + "type": "str" + }, + { + "name": "locking", + "default": null, + "type": "522" + }, + { + "name": "aio", + "default": null, + "type": "523" + }, + { + "name": "aio-max-batch", + "default": null, + "type": "int" + }, + { + "name": "drop-cache", + "default": null, + "type": "bool" + }, + { + "name": "x-check-cache-dropped", + "default": null, + "type": "bool", + "features": [ + "unstable" + ] + } + ], + "meta-type": "object", + "features": [ + "dynamic-auto-read-only" + ] + }, + { + "name": "302", + "members": [ + { + "name": "url", + "type": "str" + }, + { + "name": "readahead", + "default": null, + "type": "int" + }, + { + "name": "timeout", + "default": null, + "type": "int" + }, + { + "name": "username", + "default": null, + "type": "str" + }, + { + "name": "password-secret", + "default": null, + "type": "str" + }, + { + "name": "proxy-username", + "default": null, + "type": "str" + }, + { + "name": "proxy-password-secret", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "303", + "members": [ + { + "name": "url", + "type": "str" + }, + { + "name": "readahead", + "default": null, + "type": "int" + }, + { + "name": "timeout", + "default": null, + "type": "int" + }, + { + "name": "username", + "default": null, + "type": "str" + }, + { + "name": "password-secret", + "default": null, + "type": "str" + }, + { + "name": "proxy-username", + "default": null, + "type": "str" + }, + { + "name": "proxy-password-secret", + "default": null, + "type": "str" + }, + { + "name": "sslverify", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "304", + "members": [ + { + "name": "volume", + "type": "str" + }, + { + "name": "path", + "type": "str" + }, + { + "name": "server", + "type": "[365]" + }, + { + "name": "debug", + "default": null, + "type": "int" + }, + { + "name": "logfile", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "305", + "members": [ + { + "name": "url", + "type": "str" + }, + { + "name": "readahead", + "default": null, + "type": "int" + }, + { + "name": "timeout", + "default": null, + "type": "int" + }, + { + "name": "username", + "default": null, + "type": "str" + }, + { + "name": "password-secret", + "default": null, + "type": "str" + }, + { + "name": "proxy-username", + "default": null, + "type": "str" + }, + { + "name": "proxy-password-secret", + "default": null, + "type": "str" + }, + { + "name": "cookie", + "default": null, + "type": "str" + }, + { + "name": "cookie-secret", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "306", + "members": [ + { + "name": "url", + "type": "str" + }, + { + "name": "readahead", + "default": null, + "type": "int" + }, + { + "name": "timeout", + "default": null, + "type": "int" + }, + { + "name": "username", + "default": null, + "type": "str" + }, + { + "name": "password-secret", + "default": null, + "type": "str" + }, + { + "name": "proxy-username", + "default": null, + "type": "str" + }, + { + "name": "proxy-password-secret", + "default": null, + "type": "str" + }, + { + "name": "cookie", + "default": null, + "type": "str" + }, + { + "name": "sslverify", + "default": null, + "type": "bool" + }, + { + "name": "cookie-secret", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "307", + "members": [ + { + "name": "filename", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "308", + "members": [ + { + "name": "transport", + "type": "524" + }, + { + "name": "portal", + "type": "str" + }, + { + "name": "target", + "type": "str" + }, + { + "name": "lun", + "default": null, + "type": "int" + }, + { + "name": "user", + "default": null, + "type": "str" + }, + { + "name": "password-secret", + "default": null, + "type": "str" + }, + { + "name": "initiator-name", + "default": null, + "type": "str" + }, + { + "name": "header-digest", + "default": null, + "type": "525" + }, + { + "name": "timeout", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "309", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "key-secret", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "310", + "members": [ + { + "name": "server", + "type": "365" + }, + { + "name": "export", + "default": null, + "type": "str" + }, + { + "name": "tls-creds", + "default": null, + "type": "str" + }, + { + "name": "tls-hostname", + "default": null, + "type": "str" + }, + { + "name": "x-dirty-bitmap", + "default": null, + "type": "str", + "features": [ + "unstable" + ] + }, + { + "name": "reconnect-delay", + "default": null, + "type": "int" + }, + { + "name": "open-timeout", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "311", + "members": [ + { + "name": "server", + "type": "526" + }, + { + "name": "path", + "type": "str" + }, + { + "name": "user", + "default": null, + "type": "int" + }, + { + "name": "group", + "default": null, + "type": "int" + }, + { + "name": "tcp-syn-count", + "default": null, + "type": "int" + }, + { + "name": "readahead-size", + "default": null, + "type": "int" + }, + { + "name": "page-cache-size", + "default": null, + "type": "int" + }, + { + "name": "debug", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "312", + "members": [ + { + "name": "size", + "default": null, + "type": "int" + }, + { + "name": "latency-ns", + "default": null, + "type": "int" + }, + { + "name": "read-zeroes", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "313", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "namespace", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "314", + "members": [ + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "315", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "prealloc-align", + "default": null, + "type": "int" + }, + { + "name": "prealloc-size", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "316", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "backing", + "default": null, + "type": "527" + }, + { + "name": "lazy-refcounts", + "default": null, + "type": "bool" + }, + { + "name": "pass-discard-request", + "default": null, + "type": "bool" + }, + { + "name": "pass-discard-snapshot", + "default": null, + "type": "bool" + }, + { + "name": "pass-discard-other", + "default": null, + "type": "bool" + }, + { + "name": "overlap-check", + "default": null, + "type": "528" + }, + { + "name": "cache-size", + "default": null, + "type": "int" + }, + { + "name": "l2-cache-size", + "default": null, + "type": "int" + }, + { + "name": "l2-cache-entry-size", + "default": null, + "type": "int" + }, + { + "name": "refcount-cache-size", + "default": null, + "type": "int" + }, + { + "name": "cache-clean-interval", + "default": null, + "type": "int" + }, + { + "name": "encrypt", + "default": null, + "type": "529" + }, + { + "name": "data-file", + "default": null, + "type": "518" + } + ], + "meta-type": "object" + }, + { + "name": "317", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "backing", + "default": null, + "type": "527" + }, + { + "name": "encrypt", + "default": null, + "type": "530" + } + ], + "meta-type": "object" + }, + { + "name": "318", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "backing", + "default": null, + "type": "527" + } + ], + "meta-type": "object" + }, + { + "name": "319", + "members": [ + { + "name": "blkverify", + "default": null, + "type": "bool" + }, + { + "name": "children", + "type": "[518]" + }, + { + "name": "vote-threshold", + "type": "int" + }, + { + "name": "rewrite-corrupted", + "default": null, + "type": "bool" + }, + { + "name": "read-pattern", + "default": null, + "type": "531" + } + ], + "meta-type": "object" + }, + { + "name": "320", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "offset", + "default": null, + "type": "int" + }, + { + "name": "size", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "321", + "members": [ + { + "name": "pool", + "type": "str" + }, + { + "name": "namespace", + "default": null, + "type": "str" + }, + { + "name": "image", + "type": "str" + }, + { + "name": "conf", + "default": null, + "type": "str" + }, + { + "name": "snapshot", + "default": null, + "type": "str" + }, + { + "name": "encrypt", + "default": null, + "type": "532" + }, + { + "name": "user", + "default": null, + "type": "str" + }, + { + "name": "auth-client-required", + "default": null, + "type": "[533]" + }, + { + "name": "key-secret", + "default": null, + "type": "str" + }, + { + "name": "server", + "default": null, + "type": "[534]" + } + ], + "meta-type": "object" + }, + { + "name": "322", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "mode", + "type": "535" + }, + { + "name": "top-id", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "323", + "members": [ + { + "name": "server", + "type": "536" + }, + { + "name": "path", + "type": "str" + }, + { + "name": "user", + "default": null, + "type": "str" + }, + { + "name": "host-key-check", + "default": null, + "type": "537" + } + ], + "meta-type": "object" + }, + { + "name": "324", + "members": [ + { + "name": "throttle-group", + "type": "str" + }, + { + "name": "file", + "type": "518" + } + ], + "meta-type": "object" + }, + { + "name": "325", + "members": [ + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "326", + "members": [ + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "327", + "members": [ + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "328", + "members": [ + { + "name": "dir", + "type": "str" + }, + { + "name": "fat-type", + "default": null, + "type": "int" + }, + { + "name": "floppy", + "default": null, + "type": "bool" + }, + { + "name": "label", + "default": null, + "type": "str" + }, + { + "name": "rw", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "[49]", + "element-type": "49", + "meta-type": "array" + }, + { + "name": "329", + "tag": "driver", + "variants": [ + { + "case": "file", + "type": "538" + }, + { + "case": "gluster", + "type": "539" + }, + { + "case": "luks", + "type": "540" + }, + { + "case": "nfs", + "type": "541" + }, + { + "case": "parallels", + "type": "542" + }, + { + "case": "qcow", + "type": "543" + }, + { + "case": "qcow2", + "type": "544" + }, + { + "case": "qed", + "type": "545" + }, + { + "case": "rbd", + "type": "546" + }, + { + "case": "ssh", + "type": "547" + }, + { + "case": "vdi", + "type": "548" + }, + { + "case": "vhdx", + "type": "549" + }, + { + "case": "vmdk", + "type": "550" + }, + { + "case": "vpc", + "type": "551" + }, + { + "case": "blkdebug", + "type": "0" + }, + { + "case": "blklogwrites", + "type": "0" + }, + { + "case": "blkreplay", + "type": "0" + }, + { + "case": "blkverify", + "type": "0" + }, + { + "case": "bochs", + "type": "0" + }, + { + "case": "cloop", + "type": "0" + }, + { + "case": "compress", + "type": "0" + }, + { + "case": "copy-before-write", + "type": "0" + }, + { + "case": "copy-on-read", + "type": "0" + }, + { + "case": "dmg", + "type": "0" + }, + { + "case": "snapshot-access", + "type": "0" + }, + { + "case": "ftp", + "type": "0" + }, + { + "case": "ftps", + "type": "0" + }, + { + "case": "host_cdrom", + "type": "0" + }, + { + "case": "host_device", + "type": "0" + }, + { + "case": "http", + "type": "0" + }, + { + "case": "https", + "type": "0" + }, + { + "case": "io_uring", + "type": "0" + }, + { + "case": "iscsi", + "type": "0" + }, + { + "case": "nbd", + "type": "0" + }, + { + "case": "null-aio", + "type": "0" + }, + { + "case": "null-co", + "type": "0" + }, + { + "case": "nvme", + "type": "0" + }, + { + "case": "nvme-io_uring", + "type": "0" + }, + { + "case": "preallocate", + "type": "0" + }, + { + "case": "quorum", + "type": "0" + }, + { + "case": "raw", + "type": "0" + }, + { + "case": "replication", + "type": "0" + }, + { + "case": "throttle", + "type": "0" + }, + { + "case": "virtio-blk-vfio-pci", + "type": "0" + }, + { + "case": "virtio-blk-vhost-user", + "type": "0" + }, + { + "case": "virtio-blk-vhost-vdpa", + "type": "0" + }, + { + "case": "vvfat", + "type": "0" + } + ], + "members": [ + { + "name": "driver", + "type": "291" + } + ], + "meta-type": "object" + }, + { + "name": "330", + "tag": "driver", + "variants": [ + { + "case": "luks", + "type": "552" + }, + { + "case": "qcow2", + "type": "553" + }, + { + "case": "blkdebug", + "type": "0" + }, + { + "case": "blklogwrites", + "type": "0" + }, + { + "case": "blkreplay", + "type": "0" + }, + { + "case": "blkverify", + "type": "0" + }, + { + "case": "bochs", + "type": "0" + }, + { + "case": "cloop", + "type": "0" + }, + { + "case": "compress", + "type": "0" + }, + { + "case": "copy-before-write", + "type": "0" + }, + { + "case": "copy-on-read", + "type": "0" + }, + { + "case": "dmg", + "type": "0" + }, + { + "case": "file", + "type": "0" + }, + { + "case": "snapshot-access", + "type": "0" + }, + { + "case": "ftp", + "type": "0" + }, + { + "case": "ftps", + "type": "0" + }, + { + "case": "gluster", + "type": "0" + }, + { + "case": "host_cdrom", + "type": "0" + }, + { + "case": "host_device", + "type": "0" + }, + { + "case": "http", + "type": "0" + }, + { + "case": "https", + "type": "0" + }, + { + "case": "io_uring", + "type": "0" + }, + { + "case": "iscsi", + "type": "0" + }, + { + "case": "nbd", + "type": "0" + }, + { + "case": "nfs", + "type": "0" + }, + { + "case": "null-aio", + "type": "0" + }, + { + "case": "null-co", + "type": "0" + }, + { + "case": "nvme", + "type": "0" + }, + { + "case": "nvme-io_uring", + "type": "0" + }, + { + "case": "parallels", + "type": "0" + }, + { + "case": "preallocate", + "type": "0" + }, + { + "case": "qcow", + "type": "0" + }, + { + "case": "qed", + "type": "0" + }, + { + "case": "quorum", + "type": "0" + }, + { + "case": "raw", + "type": "0" + }, + { + "case": "rbd", + "type": "0" + }, + { + "case": "replication", + "type": "0" + }, + { + "case": "ssh", + "type": "0" + }, + { + "case": "throttle", + "type": "0" + }, + { + "case": "vdi", + "type": "0" + }, + { + "case": "vhdx", + "type": "0" + }, + { + "case": "virtio-blk-vfio-pci", + "type": "0" + }, + { + "case": "virtio-blk-vhost-user", + "type": "0" + }, + { + "case": "virtio-blk-vhost-vdpa", + "type": "0" + }, + { + "case": "vmdk", + "type": "0" + }, + { + "case": "vpc", + "type": "0" + }, + { + "case": "vvfat", + "type": "0" + } + ], + "members": [ + { + "name": "driver", + "type": "291" + } + ], + "meta-type": "object" + }, + { + "name": "331", + "members": [ + { + "name": "read" + }, + { + "name": "write" + } + ], + "meta-type": "enum", + "values": [ + "read", + "write" + ] + }, + { + "name": "332", + "members": [ + { + "name": "ignore" + }, + { + "name": "report" + }, + { + "name": "stop" + } + ], + "meta-type": "enum", + "values": [ + "ignore", + "report", + "stop" + ] + }, + { + "name": "333", + "members": [ + { + "name": "commit" + }, + { + "name": "stream" + }, + { + "name": "mirror" + }, + { + "name": "backup" + }, + { + "name": "create" + }, + { + "name": "amend" + }, + { + "name": "snapshot-load" + }, + { + "name": "snapshot-save" + }, + { + "name": "snapshot-delete" + } + ], + "meta-type": "enum", + "values": [ + "commit", + "stream", + "mirror", + "backup", + "create", + "amend", + "snapshot-load", + "snapshot-save", + "snapshot-delete" + ] + }, + { + "name": "334", + "members": [ + { + "type": "str" + }, + { + "type": "null" + } + ], + "meta-type": "alternate" + }, + { + "name": "335", + "members": [ + { + "name": "read" + }, + { + "name": "write" + }, + { + "name": "flush" + } + ], + "meta-type": "enum", + "values": [ + "read", + "write", + "flush" + ] + }, + { + "name": "336", + "tag": "type", + "variants": [ + { + "case": "inet", + "type": "555" + }, + { + "case": "unix", + "type": "556" + }, + { + "case": "vsock", + "type": "557" + }, + { + "case": "fd", + "type": "558" + } + ], + "members": [ + { + "name": "type", + "type": "554" + } + ], + "meta-type": "object" + }, + { + "name": "337", + "members": [ + { + "name": "safe" + }, + { + "name": "hard" + } + ], + "meta-type": "enum", + "values": [ + "safe", + "hard" + ] + }, + { + "name": "338", + "members": [ + { + "name": "nbd" + }, + { + "name": "vhost-user-blk" + }, + { + "name": "fuse" + }, + { + "name": "vduse-blk" + } + ], + "meta-type": "enum", + "values": [ + "nbd", + "vhost-user-blk", + "fuse", + "vduse-blk" + ] + }, + { + "name": "339", + "members": [ + { + "name": "name", + "default": null, + "type": "str" + }, + { + "name": "description", + "default": null, + "type": "str" + }, + { + "name": "bitmaps", + "default": null, + "type": "[290]" + }, + { + "name": "allocation-depth", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "340", + "members": [ + { + "name": "addr", + "type": "365" + }, + { + "name": "logical-block-size", + "default": null, + "type": "int" + }, + { + "name": "num-queues", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "341", + "members": [ + { + "name": "mountpoint", + "type": "str" + }, + { + "name": "growable", + "default": null, + "type": "bool" + }, + { + "name": "allow-other", + "default": null, + "type": "559" + } + ], + "meta-type": "object" + }, + { + "name": "342", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "num-queues", + "default": null, + "type": "int" + }, + { + "name": "queue-size", + "default": null, + "type": "int" + }, + { + "name": "logical-block-size", + "default": null, + "type": "int" + }, + { + "name": "serial", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "343", + "members": [ + { + "name": "utf8" + }, + { + "name": "base64" + } + ], + "meta-type": "enum", + "values": [ + "utf8", + "base64" + ] + }, + { + "name": "344", + "tag": "type", + "variants": [ + { + "case": "file", + "type": "561" + }, + { + "case": "serial", + "type": "562" + }, + { + "case": "parallel", + "type": "562" + }, + { + "case": "pipe", + "type": "562" + }, + { + "case": "socket", + "type": "563" + }, + { + "case": "udp", + "type": "564" + }, + { + "case": "pty", + "type": "565" + }, + { + "case": "null", + "type": "565" + }, + { + "case": "mux", + "type": "566" + }, + { + "case": "msmouse", + "type": "565" + }, + { + "case": "wctablet", + "type": "565" + }, + { + "case": "braille", + "type": "565" + }, + { + "case": "testdev", + "type": "565" + }, + { + "case": "stdio", + "type": "567" + }, + { + "case": "console", + "type": "565" + }, + { + "case": "spicevmc", + "type": "568" + }, + { + "case": "spiceport", + "type": "569" + }, + { + "case": "qemu-vdagent", + "type": "570" + }, + { + "case": "dbus", + "type": "571" + }, + { + "case": "vc", + "type": "572" + }, + { + "case": "ringbuf", + "type": "573" + }, + { + "case": "memory", + "type": "573" + } + ], + "members": [ + { + "name": "type", + "type": "560" + } + ], + "meta-type": "object" + }, + { + "name": "345", + "members": [ + { + "name": "elf" + }, + { + "name": "kdump-zlib" + }, + { + "name": "kdump-lzo" + }, + { + "name": "kdump-snappy" + }, + { + "name": "win-dmp" + } + ], + "meta-type": "enum", + "values": [ + "elf", + "kdump-zlib", + "kdump-lzo", + "kdump-snappy", + "win-dmp" + ] + }, + { + "name": "346", + "members": [ + { + "name": "none" + }, + { + "name": "active" + }, + { + "name": "completed" + }, + { + "name": "failed" + } + ], + "meta-type": "enum", + "values": [ + "none", + "active", + "completed", + "failed" + ] + }, + { + "name": "[345]", + "element-type": "345", + "meta-type": "array" + }, + { + "name": "347", + "members": [ + { + "name": "none" + }, + { + "name": "nic" + }, + { + "name": "user" + }, + { + "name": "tap" + }, + { + "name": "l2tpv3" + }, + { + "name": "socket" + }, + { + "name": "stream" + }, + { + "name": "dgram" + }, + { + "name": "vde" + }, + { + "name": "bridge" + }, + { + "name": "hubport" + }, + { + "name": "netmap" + }, + { + "name": "vhost-user" + }, + { + "name": "vhost-vdpa" + } + ], + "meta-type": "enum", + "values": [ + "none", + "nic", + "user", + "tap", + "l2tpv3", + "socket", + "stream", + "dgram", + "vde", + "bridge", + "hubport", + "netmap", + "vhost-user", + "vhost-vdpa" + ] + }, + { + "name": "348", + "members": [ + { + "name": "netdev", + "default": null, + "type": "str" + }, + { + "name": "macaddr", + "default": null, + "type": "str" + }, + { + "name": "model", + "default": null, + "type": "str" + }, + { + "name": "addr", + "default": null, + "type": "str" + }, + { + "name": "vectors", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "349", + "members": [ + { + "name": "hostname", + "default": null, + "type": "str" + }, + { + "name": "restrict", + "default": null, + "type": "bool" + }, + { + "name": "ipv4", + "default": null, + "type": "bool" + }, + { + "name": "ipv6", + "default": null, + "type": "bool" + }, + { + "name": "ip", + "default": null, + "type": "str" + }, + { + "name": "net", + "default": null, + "type": "str" + }, + { + "name": "host", + "default": null, + "type": "str" + }, + { + "name": "tftp", + "default": null, + "type": "str" + }, + { + "name": "bootfile", + "default": null, + "type": "str" + }, + { + "name": "dhcpstart", + "default": null, + "type": "str" + }, + { + "name": "dns", + "default": null, + "type": "str" + }, + { + "name": "dnssearch", + "default": null, + "type": "[574]" + }, + { + "name": "domainname", + "default": null, + "type": "str" + }, + { + "name": "ipv6-prefix", + "default": null, + "type": "str" + }, + { + "name": "ipv6-prefixlen", + "default": null, + "type": "int" + }, + { + "name": "ipv6-host", + "default": null, + "type": "str" + }, + { + "name": "ipv6-dns", + "default": null, + "type": "str" + }, + { + "name": "smb", + "default": null, + "type": "str" + }, + { + "name": "smbserver", + "default": null, + "type": "str" + }, + { + "name": "hostfwd", + "default": null, + "type": "[574]" + }, + { + "name": "guestfwd", + "default": null, + "type": "[574]" + }, + { + "name": "tftp-server-name", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "350", + "members": [ + { + "name": "ifname", + "default": null, + "type": "str" + }, + { + "name": "fd", + "default": null, + "type": "str" + }, + { + "name": "fds", + "default": null, + "type": "str" + }, + { + "name": "script", + "default": null, + "type": "str" + }, + { + "name": "downscript", + "default": null, + "type": "str" + }, + { + "name": "br", + "default": null, + "type": "str" + }, + { + "name": "helper", + "default": null, + "type": "str" + }, + { + "name": "sndbuf", + "default": null, + "type": "int" + }, + { + "name": "vnet_hdr", + "default": null, + "type": "bool" + }, + { + "name": "vhost", + "default": null, + "type": "bool" + }, + { + "name": "vhostfd", + "default": null, + "type": "str" + }, + { + "name": "vhostfds", + "default": null, + "type": "str" + }, + { + "name": "vhostforce", + "default": null, + "type": "bool" + }, + { + "name": "queues", + "default": null, + "type": "int" + }, + { + "name": "poll-us", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "351", + "members": [ + { + "name": "src", + "type": "str" + }, + { + "name": "dst", + "type": "str" + }, + { + "name": "srcport", + "default": null, + "type": "str" + }, + { + "name": "dstport", + "default": null, + "type": "str" + }, + { + "name": "ipv6", + "default": null, + "type": "bool" + }, + { + "name": "udp", + "default": null, + "type": "bool" + }, + { + "name": "cookie64", + "default": null, + "type": "bool" + }, + { + "name": "counter", + "default": null, + "type": "bool" + }, + { + "name": "pincounter", + "default": null, + "type": "bool" + }, + { + "name": "txcookie", + "default": null, + "type": "int" + }, + { + "name": "rxcookie", + "default": null, + "type": "int" + }, + { + "name": "txsession", + "type": "int" + }, + { + "name": "rxsession", + "default": null, + "type": "int" + }, + { + "name": "offset", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "352", + "members": [ + { + "name": "fd", + "default": null, + "type": "str" + }, + { + "name": "listen", + "default": null, + "type": "str" + }, + { + "name": "connect", + "default": null, + "type": "str" + }, + { + "name": "mcast", + "default": null, + "type": "str" + }, + { + "name": "localaddr", + "default": null, + "type": "str" + }, + { + "name": "udp", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "353", + "members": [ + { + "name": "addr", + "type": "365" + }, + { + "name": "server", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "354", + "members": [ + { + "name": "local", + "default": null, + "type": "365" + }, + { + "name": "remote", + "default": null, + "type": "365" + } + ], + "meta-type": "object" + }, + { + "name": "355", + "members": [ + { + "name": "sock", + "default": null, + "type": "str" + }, + { + "name": "port", + "default": null, + "type": "int" + }, + { + "name": "group", + "default": null, + "type": "str" + }, + { + "name": "mode", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "356", + "members": [ + { + "name": "br", + "default": null, + "type": "str" + }, + { + "name": "helper", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "357", + "members": [ + { + "name": "hubid", + "type": "int" + }, + { + "name": "netdev", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "358", + "members": [ + { + "name": "ifname", + "type": "str" + }, + { + "name": "devname", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "359", + "members": [ + { + "name": "chardev", + "type": "str" + }, + { + "name": "vhostforce", + "default": null, + "type": "bool" + }, + { + "name": "queues", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "360", + "members": [ + { + "name": "vhostdev", + "default": null, + "type": "str" + }, + { + "name": "vhostfd", + "default": null, + "type": "str" + }, + { + "name": "queues", + "default": null, + "type": "int" + }, + { + "name": "x-svq", + "default": null, + "type": "bool", + "features": [ + "unstable" + ] + } + ], + "meta-type": "object" + }, + { + "name": "364", + "members": [ + { + "name": "normal" + }, + { + "name": "none" + }, + { + "name": "all" + } + ], + "meta-type": "enum", + "values": [ + "normal", + "none", + "all" + ] + }, + { + "name": "[str]", + "element-type": "str", + "meta-type": "array" + }, + { + "name": "365", + "tag": "type", + "variants": [ + { + "case": "inet", + "type": "536" + }, + { + "case": "unix", + "type": "575" + }, + { + "case": "vsock", + "type": "576" + }, + { + "case": "fd", + "type": "574" + } + ], + "members": [ + { + "name": "type", + "type": "554" + } + ], + "meta-type": "object" + }, + { + "name": "366", + "members": [ + { + "name": "half" + }, + { + "name": "full" + } + ], + "meta-type": "enum", + "values": [ + "half", + "full" + ] + }, + { + "name": "367", + "members": [ + { + "name": "off" + }, + { + "name": "on" + } + ], + "meta-type": "enum", + "values": [ + "off", + "on" + ] + }, + { + "name": "368", + "members": [ + { + "name": "priority", + "type": "int" + }, + { + "name": "tbl-id", + "type": "int" + }, + { + "name": "in-pport", + "default": null, + "type": "int" + }, + { + "name": "tunnel-id", + "default": null, + "type": "int" + }, + { + "name": "vlan-id", + "default": null, + "type": "int" + }, + { + "name": "eth-type", + "default": null, + "type": "int" + }, + { + "name": "eth-src", + "default": null, + "type": "str" + }, + { + "name": "eth-dst", + "default": null, + "type": "str" + }, + { + "name": "ip-proto", + "default": null, + "type": "int" + }, + { + "name": "ip-tos", + "default": null, + "type": "int" + }, + { + "name": "ip-dst", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "369", + "members": [ + { + "name": "in-pport", + "default": null, + "type": "int" + }, + { + "name": "tunnel-id", + "default": null, + "type": "int" + }, + { + "name": "vlan-id", + "default": null, + "type": "int" + }, + { + "name": "eth-src", + "default": null, + "type": "str" + }, + { + "name": "eth-dst", + "default": null, + "type": "str" + }, + { + "name": "ip-proto", + "default": null, + "type": "int" + }, + { + "name": "ip-tos", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "370", + "members": [ + { + "name": "goto-tbl", + "default": null, + "type": "int" + }, + { + "name": "group-id", + "default": null, + "type": "int" + }, + { + "name": "tunnel-lport", + "default": null, + "type": "int" + }, + { + "name": "vlan-id", + "default": null, + "type": "int" + }, + { + "name": "new-vlan-id", + "default": null, + "type": "int" + }, + { + "name": "out-pport", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "371", + "tag": "type", + "variants": [ + { + "case": "passthrough", + "type": "577" + }, + { + "case": "emulator", + "type": "578" + } + ], + "members": [ + { + "name": "type", + "type": "119" + } + ], + "meta-type": "object" + }, + { + "name": "372", + "members": [ + { + "name": "vnc" + }, + { + "name": "spice" + } + ], + "meta-type": "enum", + "values": [ + "vnc", + "spice" + ] + }, + { + "name": "373", + "members": [ + { + "name": "keep" + }, + { + "name": "fail" + }, + { + "name": "disconnect" + } + ], + "meta-type": "enum", + "values": [ + "keep", + "fail", + "disconnect" + ] + }, + { + "name": "374", + "members": [ + { + "name": "display", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "375", + "members": [ + { + "name": "display", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "376", + "members": [ + { + "name": "ppm" + }, + { + "name": "png" + } + ], + "meta-type": "enum", + "values": [ + "ppm", + "png" + ] + }, + { + "name": "377", + "members": [ + { + "name": "client" + }, + { + "name": "server" + }, + { + "name": "unknown" + } + ], + "meta-type": "enum", + "values": [ + "client", + "server", + "unknown" + ] + }, + { + "name": "[378]", + "element-type": "378", + "meta-type": "array" + }, + { + "name": "378", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "port", + "type": "str" + }, + { + "name": "family", + "type": "381" + }, + { + "name": "connection-id", + "type": "int" + }, + { + "name": "channel-type", + "type": "int" + }, + { + "name": "channel-id", + "type": "int" + }, + { + "name": "tls", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "379", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "port", + "type": "str" + }, + { + "name": "family", + "type": "381" + } + ], + "meta-type": "object" + }, + { + "name": "380", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "port", + "type": "str" + }, + { + "name": "family", + "type": "381" + }, + { + "name": "auth", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "381", + "members": [ + { + "name": "ipv4" + }, + { + "name": "ipv6" + }, + { + "name": "unix" + }, + { + "name": "vsock" + }, + { + "name": "unknown" + } + ], + "meta-type": "enum", + "values": [ + "ipv4", + "ipv6", + "unix", + "vsock", + "unknown" + ] + }, + { + "name": "[382]", + "element-type": "382", + "meta-type": "array" + }, + { + "name": "382", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "service", + "type": "str" + }, + { + "name": "family", + "type": "381" + }, + { + "name": "websocket", + "type": "bool" + }, + { + "name": "x509_dname", + "default": null, + "type": "str" + }, + { + "name": "sasl_username", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[383]", + "element-type": "383", + "meta-type": "array" + }, + { + "name": "383", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "service", + "type": "str" + }, + { + "name": "family", + "type": "381" + }, + { + "name": "websocket", + "type": "bool" + }, + { + "name": "auth", + "type": "384" + }, + { + "name": "vencrypt", + "default": null, + "type": "385" + } + ], + "meta-type": "object" + }, + { + "name": "384", + "members": [ + { + "name": "none" + }, + { + "name": "vnc" + }, + { + "name": "ra2" + }, + { + "name": "ra2ne" + }, + { + "name": "tight" + }, + { + "name": "ultra" + }, + { + "name": "tls" + }, + { + "name": "vencrypt" + }, + { + "name": "sasl" + } + ], + "meta-type": "enum", + "values": [ + "none", + "vnc", + "ra2", + "ra2ne", + "tight", + "ultra", + "tls", + "vencrypt", + "sasl" + ] + }, + { + "name": "385", + "members": [ + { + "name": "plain" + }, + { + "name": "tls-none" + }, + { + "name": "x509-none" + }, + { + "name": "tls-vnc" + }, + { + "name": "x509-vnc" + }, + { + "name": "tls-plain" + }, + { + "name": "x509-plain" + }, + { + "name": "tls-sasl" + }, + { + "name": "x509-sasl" + } + ], + "meta-type": "enum", + "values": [ + "plain", + "tls-none", + "x509-none", + "tls-vnc", + "x509-vnc", + "tls-plain", + "x509-plain", + "tls-sasl", + "x509-sasl" + ] + }, + { + "name": "386", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "service", + "type": "str" + }, + { + "name": "family", + "type": "381" + }, + { + "name": "websocket", + "type": "bool" + }, + { + "name": "auth", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "387", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "service", + "type": "str" + }, + { + "name": "family", + "type": "381" + }, + { + "name": "websocket", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "[388]", + "element-type": "388", + "meta-type": "array" + }, + { + "name": "388", + "tag": "type", + "variants": [ + { + "case": "number", + "type": "580" + }, + { + "case": "qcode", + "type": "581" + } + ], + "members": [ + { + "name": "type", + "type": "579" + } + ], + "meta-type": "object" + }, + { + "name": "[389]", + "element-type": "389", + "meta-type": "array" + }, + { + "name": "389", + "tag": "type", + "variants": [ + { + "case": "key", + "type": "583" + }, + { + "case": "btn", + "type": "584" + }, + { + "case": "rel", + "type": "585" + }, + { + "case": "abs", + "type": "585" + } + ], + "members": [ + { + "name": "type", + "type": "582" + } + ], + "meta-type": "object" + }, + { + "name": "390", + "members": [ + { + "name": "default" + }, + { + "name": "none" + }, + { + "name": "gtk" + }, + { + "name": "sdl" + }, + { + "name": "egl-headless" + }, + { + "name": "curses" + }, + { + "name": "spice-app" + }, + { + "name": "dbus" + } + ], + "meta-type": "enum", + "values": [ + "default", + "none", + "gtk", + "sdl", + "egl-headless", + "curses", + "spice-app", + "dbus" + ] + }, + { + "name": "391", + "members": [ + { + "name": "off" + }, + { + "name": "on" + }, + { + "name": "core" + }, + { + "name": "es" + } + ], + "meta-type": "enum", + "values": [ + "off", + "on", + "core", + "es" + ] + }, + { + "name": "392", + "members": [ + { + "name": "grab-on-hover", + "default": null, + "type": "bool" + }, + { + "name": "zoom-to-fit", + "default": null, + "type": "bool" + }, + { + "name": "show-tabs", + "default": null, + "type": "bool" + }, + { + "name": "show-menubar", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "393", + "members": [ + { + "name": "left-command-key", + "default": null, + "type": "bool" + }, + { + "name": "full-grab", + "default": null, + "type": "bool" + }, + { + "name": "swap-opt-cmd", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "394", + "members": [ + { + "name": "charset", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "395", + "members": [ + { + "name": "rendernode", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "396", + "members": [ + { + "name": "rendernode", + "default": null, + "type": "str" + }, + { + "name": "addr", + "default": null, + "type": "str" + }, + { + "name": "p2p", + "default": null, + "type": "bool" + }, + { + "name": "audiodev", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "397", + "members": [ + { + "name": "grab-mod", + "default": null, + "type": "586" + } + ], + "meta-type": "object" + }, + { + "name": "398", + "members": [ + { + "name": "vnc" + } + ], + "meta-type": "enum", + "values": [ + "vnc" + ] + }, + { + "name": "399", + "members": [ + { + "name": "tls-certs", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "400", + "members": [ + { + "name": "vnc" + } + ], + "meta-type": "enum", + "values": [ + "vnc" + ] + }, + { + "name": "401", + "members": [ + { + "name": "addresses", + "default": null, + "type": "[365]" + } + ], + "meta-type": "object" + }, + { + "name": "402", + "members": [ + { + "name": "none" + }, + { + "name": "setup" + }, + { + "name": "cancelling" + }, + { + "name": "cancelled" + }, + { + "name": "active" + }, + { + "name": "postcopy-active" + }, + { + "name": "postcopy-paused" + }, + { + "name": "postcopy-recover" + }, + { + "name": "completed" + }, + { + "name": "failed" + }, + { + "name": "colo" + }, + { + "name": "pre-switchover" + }, + { + "name": "device" + }, + { + "name": "wait-unplug" + } + ], + "meta-type": "enum", + "values": [ + "none", + "setup", + "cancelling", + "cancelled", + "active", + "postcopy-active", + "postcopy-paused", + "postcopy-recover", + "completed", + "failed", + "colo", + "pre-switchover", + "device", + "wait-unplug" + ] + }, + { + "name": "403", + "members": [ + { + "name": "transferred", + "type": "int" + }, + { + "name": "remaining", + "type": "int" + }, + { + "name": "total", + "type": "int" + }, + { + "name": "duplicate", + "type": "int" + }, + { + "name": "skipped", + "type": "int" + }, + { + "name": "normal", + "type": "int" + }, + { + "name": "normal-bytes", + "type": "int" + }, + { + "name": "dirty-pages-rate", + "type": "int" + }, + { + "name": "mbps", + "type": "number" + }, + { + "name": "dirty-sync-count", + "type": "int" + }, + { + "name": "postcopy-requests", + "type": "int" + }, + { + "name": "page-size", + "type": "int" + }, + { + "name": "multifd-bytes", + "type": "int" + }, + { + "name": "pages-per-second", + "type": "int" + }, + { + "name": "precopy-bytes", + "type": "int" + }, + { + "name": "downtime-bytes", + "type": "int" + }, + { + "name": "postcopy-bytes", + "type": "int" + }, + { + "name": "dirty-sync-missed-zero-copy", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "404", + "members": [ + { + "name": "transferred", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "405", + "members": [ + { + "name": "cache-size", + "type": "int" + }, + { + "name": "bytes", + "type": "int" + }, + { + "name": "pages", + "type": "int" + }, + { + "name": "cache-miss", + "type": "int" + }, + { + "name": "cache-miss-rate", + "type": "number" + }, + { + "name": "encoding-rate", + "type": "number" + }, + { + "name": "overflow", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "406", + "members": [ + { + "name": "pages", + "type": "int" + }, + { + "name": "busy", + "type": "int" + }, + { + "name": "busy-rate", + "type": "number" + }, + { + "name": "compressed-size", + "type": "int" + }, + { + "name": "compression-rate", + "type": "number" + } + ], + "meta-type": "object" + }, + { + "name": "[365]", + "element-type": "365", + "meta-type": "array" + }, + { + "name": "407", + "members": [ + { + "name": "xbzrle" + }, + { + "name": "rdma-pin-all" + }, + { + "name": "auto-converge" + }, + { + "name": "zero-blocks" + }, + { + "name": "compress" + }, + { + "name": "events" + }, + { + "name": "postcopy-ram" + }, + { + "name": "x-colo", + "features": [ + "unstable" + ] + }, + { + "name": "release-ram" + }, + { + "name": "block" + }, + { + "name": "return-path" + }, + { + "name": "pause-before-switchover" + }, + { + "name": "multifd" + }, + { + "name": "dirty-bitmaps" + }, + { + "name": "postcopy-blocktime" + }, + { + "name": "late-block-activate" + }, + { + "name": "x-ignore-shared", + "features": [ + "unstable" + ] + }, + { + "name": "validate-uuid" + }, + { + "name": "background-snapshot" + }, + { + "name": "zero-copy-send" + }, + { + "name": "postcopy-preempt" + } + ], + "meta-type": "enum", + "values": [ + "xbzrle", + "rdma-pin-all", + "auto-converge", + "zero-blocks", + "compress", + "events", + "postcopy-ram", + "x-colo", + "release-ram", + "block", + "return-path", + "pause-before-switchover", + "multifd", + "dirty-bitmaps", + "postcopy-blocktime", + "late-block-activate", + "x-ignore-shared", + "validate-uuid", + "background-snapshot", + "zero-copy-send", + "postcopy-preempt" + ] + }, + { + "name": "408", + "members": [ + { + "name": "none" + }, + { + "name": "zlib" + }, + { + "name": "zstd" + } + ], + "meta-type": "enum", + "values": [ + "none", + "zlib", + "zstd" + ] + }, + { + "name": "[409]", + "element-type": "409", + "meta-type": "array" + }, + { + "name": "409", + "members": [ + { + "name": "node-name", + "type": "str" + }, + { + "name": "alias", + "type": "str" + }, + { + "name": "bitmaps", + "type": "[587]" + } + ], + "meta-type": "object" + }, + { + "name": "410", + "members": [ + { + "name": "none" + }, + { + "name": "primary" + }, + { + "name": "secondary" + } + ], + "meta-type": "enum", + "values": [ + "none", + "primary", + "secondary" + ] + }, + { + "name": "411", + "members": [ + { + "name": "none" + }, + { + "name": "request" + }, + { + "name": "error" + }, + { + "name": "processing" + } + ], + "meta-type": "enum", + "values": [ + "none", + "request", + "error", + "processing" + ] + }, + { + "name": "412", + "members": [ + { + "name": "page-sampling" + }, + { + "name": "dirty-ring" + }, + { + "name": "dirty-bitmap" + } + ], + "meta-type": "enum", + "values": [ + "page-sampling", + "dirty-ring", + "dirty-bitmap" + ] + }, + { + "name": "413", + "members": [ + { + "name": "unstarted" + }, + { + "name": "measuring" + }, + { + "name": "measured" + } + ], + "meta-type": "enum", + "values": [ + "unstarted", + "measuring", + "measured" + ] + }, + { + "name": "[414]", + "element-type": "414", + "meta-type": "array" + }, + { + "name": "414", + "members": [ + { + "name": "id", + "type": "int" + }, + { + "name": "dirty-rate", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[415]", + "element-type": "415", + "meta-type": "array" + }, + { + "name": "415", + "tag": "type", + "variants": [ + { + "case": "abort", + "type": "589" + }, + { + "case": "block-dirty-bitmap-add", + "type": "590" + }, + { + "case": "block-dirty-bitmap-remove", + "type": "591" + }, + { + "case": "block-dirty-bitmap-clear", + "type": "591" + }, + { + "case": "block-dirty-bitmap-enable", + "type": "591" + }, + { + "case": "block-dirty-bitmap-disable", + "type": "591" + }, + { + "case": "block-dirty-bitmap-merge", + "type": "592" + }, + { + "case": "blockdev-backup", + "type": "593" + }, + { + "case": "blockdev-snapshot", + "type": "594" + }, + { + "case": "blockdev-snapshot-internal-sync", + "type": "595" + }, + { + "case": "blockdev-snapshot-sync", + "type": "596" + }, + { + "case": "drive-backup", + "type": "597" + } + ], + "members": [ + { + "name": "type", + "type": "588" + } + ], + "meta-type": "object" + }, + { + "name": "416", + "members": [ + { + "name": "completion-mode", + "default": null, + "type": "598" + } + ], + "meta-type": "object" + }, + { + "name": "417", + "members": [ + { + "name": "unavailable" + }, + { + "name": "disabled" + }, + { + "name": "enabled" + } + ], + "meta-type": "enum", + "values": [ + "unavailable", + "disabled", + "enabled" + ] + }, + { + "name": "[418]", + "element-type": "418", + "meta-type": "array" + }, + { + "name": "418", + "members": [ + { + "name": "oob" + } + ], + "meta-type": "enum", + "values": [ + "oob" + ] + }, + { + "name": "419", + "members": [ + { + "name": "major", + "type": "int" + }, + { + "name": "minor", + "type": "int" + }, + { + "name": "micro", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "420", + "members": [ + { + "name": "builtin" + }, + { + "name": "enum" + }, + { + "name": "array" + }, + { + "name": "object" + }, + { + "name": "alternate" + }, + { + "name": "command" + }, + { + "name": "event" + } + ], + "meta-type": "enum", + "values": [ + "builtin", + "enum", + "array", + "object", + "alternate", + "command", + "event" + ] + }, + { + "name": "421", + "members": [ + { + "name": "json-type", + "type": "599" + } + ], + "meta-type": "object" + }, + { + "name": "422", + "members": [ + { + "name": "members", + "type": "[600]" + }, + { + "name": "values", + "type": "[str]", + "features": [ + "deprecated" + ] + } + ], + "meta-type": "object" + }, + { + "name": "423", + "members": [ + { + "name": "element-type", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "424", + "members": [ + { + "name": "members", + "type": "[601]" + }, + { + "name": "tag", + "default": null, + "type": "str" + }, + { + "name": "variants", + "default": null, + "type": "[602]" + } + ], + "meta-type": "object" + }, + { + "name": "425", + "members": [ + { + "name": "members", + "type": "[603]" + } + ], + "meta-type": "object" + }, + { + "name": "426", + "members": [ + { + "name": "arg-type", + "type": "str" + }, + { + "name": "ret-type", + "type": "str" + }, + { + "name": "allow-oob", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "427", + "members": [ + { + "name": "arg-type", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "428", + "members": [ + { + "name": "authz-list" + }, + { + "name": "authz-listfile" + }, + { + "name": "authz-pam" + }, + { + "name": "authz-simple" + }, + { + "name": "can-bus" + }, + { + "name": "can-host-socketcan" + }, + { + "name": "colo-compare" + }, + { + "name": "cryptodev-backend" + }, + { + "name": "cryptodev-backend-builtin" + }, + { + "name": "cryptodev-backend-lkcf" + }, + { + "name": "cryptodev-vhost-user" + }, + { + "name": "dbus-vmstate" + }, + { + "name": "filter-buffer" + }, + { + "name": "filter-dump" + }, + { + "name": "filter-mirror" + }, + { + "name": "filter-redirector" + }, + { + "name": "filter-replay" + }, + { + "name": "filter-rewriter" + }, + { + "name": "input-barrier" + }, + { + "name": "input-linux" + }, + { + "name": "iothread" + }, + { + "name": "main-loop" + }, + { + "name": "memory-backend-epc" + }, + { + "name": "memory-backend-file" + }, + { + "name": "memory-backend-memfd" + }, + { + "name": "memory-backend-ram" + }, + { + "name": "pef-guest" + }, + { + "name": "pr-manager-helper" + }, + { + "name": "qtest" + }, + { + "name": "rng-builtin" + }, + { + "name": "rng-egd" + }, + { + "name": "rng-random" + }, + { + "name": "secret" + }, + { + "name": "secret_keyring" + }, + { + "name": "sev-guest" + }, + { + "name": "thread-context" + }, + { + "name": "s390-pv-guest" + }, + { + "name": "throttle-group" + }, + { + "name": "tls-creds-anon" + }, + { + "name": "tls-creds-psk" + }, + { + "name": "tls-creds-x509" + }, + { + "name": "tls-cipher-suites" + }, + { + "name": "x-remote-object", + "features": [ + "unstable" + ] + }, + { + "name": "x-vfio-user-server", + "features": [ + "unstable" + ] + } + ], + "meta-type": "enum", + "values": [ + "authz-list", + "authz-listfile", + "authz-pam", + "authz-simple", + "can-bus", + "can-host-socketcan", + "colo-compare", + "cryptodev-backend", + "cryptodev-backend-builtin", + "cryptodev-backend-lkcf", + "cryptodev-vhost-user", + "dbus-vmstate", + "filter-buffer", + "filter-dump", + "filter-mirror", + "filter-redirector", + "filter-replay", + "filter-rewriter", + "input-barrier", + "input-linux", + "iothread", + "main-loop", + "memory-backend-epc", + "memory-backend-file", + "memory-backend-memfd", + "memory-backend-ram", + "pef-guest", + "pr-manager-helper", + "qtest", + "rng-builtin", + "rng-egd", + "rng-random", + "secret", + "secret_keyring", + "sev-guest", + "thread-context", + "s390-pv-guest", + "throttle-group", + "tls-creds-anon", + "tls-creds-psk", + "tls-creds-x509", + "tls-cipher-suites", + "x-remote-object", + "x-vfio-user-server" + ] + }, + { + "name": "429", + "members": [ + { + "name": "policy", + "default": null, + "type": "604" + }, + { + "name": "rules", + "default": null, + "type": "[605]" + } + ], + "meta-type": "object" + }, + { + "name": "430", + "members": [ + { + "name": "filename", + "type": "str" + }, + { + "name": "refresh", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "431", + "members": [ + { + "name": "service", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "432", + "members": [ + { + "name": "identity", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "433", + "members": [ + { + "name": "if", + "type": "str" + }, + { + "name": "canbus", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "434", + "members": [ + { + "name": "primary_in", + "type": "str" + }, + { + "name": "secondary_in", + "type": "str" + }, + { + "name": "outdev", + "type": "str" + }, + { + "name": "iothread", + "type": "str" + }, + { + "name": "notify_dev", + "default": null, + "type": "str" + }, + { + "name": "compare_timeout", + "default": null, + "type": "int" + }, + { + "name": "expired_scan_cycle", + "default": null, + "type": "int" + }, + { + "name": "max_queue_size", + "default": null, + "type": "int" + }, + { + "name": "vnet_hdr_support", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "435", + "members": [ + { + "name": "queues", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "436", + "members": [ + { + "name": "queues", + "default": null, + "type": "int" + }, + { + "name": "chardev", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "437", + "members": [ + { + "name": "addr", + "type": "str" + }, + { + "name": "id-list", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "438", + "members": [ + { + "name": "netdev", + "type": "str" + }, + { + "name": "queue", + "default": null, + "type": "606" + }, + { + "name": "status", + "default": null, + "type": "str" + }, + { + "name": "position", + "default": null, + "type": "str" + }, + { + "name": "insert", + "default": null, + "type": "607" + }, + { + "name": "interval", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "439", + "members": [ + { + "name": "netdev", + "type": "str" + }, + { + "name": "queue", + "default": null, + "type": "606" + }, + { + "name": "status", + "default": null, + "type": "str" + }, + { + "name": "position", + "default": null, + "type": "str" + }, + { + "name": "insert", + "default": null, + "type": "607" + }, + { + "name": "file", + "type": "str" + }, + { + "name": "maxlen", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "440", + "members": [ + { + "name": "netdev", + "type": "str" + }, + { + "name": "queue", + "default": null, + "type": "606" + }, + { + "name": "status", + "default": null, + "type": "str" + }, + { + "name": "position", + "default": null, + "type": "str" + }, + { + "name": "insert", + "default": null, + "type": "607" + }, + { + "name": "outdev", + "type": "str" + }, + { + "name": "vnet_hdr_support", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "441", + "members": [ + { + "name": "netdev", + "type": "str" + }, + { + "name": "queue", + "default": null, + "type": "606" + }, + { + "name": "status", + "default": null, + "type": "str" + }, + { + "name": "position", + "default": null, + "type": "str" + }, + { + "name": "insert", + "default": null, + "type": "607" + }, + { + "name": "indev", + "default": null, + "type": "str" + }, + { + "name": "outdev", + "default": null, + "type": "str" + }, + { + "name": "vnet_hdr_support", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "442", + "members": [ + { + "name": "netdev", + "type": "str" + }, + { + "name": "queue", + "default": null, + "type": "606" + }, + { + "name": "status", + "default": null, + "type": "str" + }, + { + "name": "position", + "default": null, + "type": "str" + }, + { + "name": "insert", + "default": null, + "type": "607" + } + ], + "meta-type": "object" + }, + { + "name": "443", + "members": [ + { + "name": "netdev", + "type": "str" + }, + { + "name": "queue", + "default": null, + "type": "606" + }, + { + "name": "status", + "default": null, + "type": "str" + }, + { + "name": "position", + "default": null, + "type": "str" + }, + { + "name": "insert", + "default": null, + "type": "607" + }, + { + "name": "vnet_hdr_support", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "444", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "server", + "default": null, + "type": "str" + }, + { + "name": "port", + "default": null, + "type": "str" + }, + { + "name": "x-origin", + "default": null, + "type": "str" + }, + { + "name": "y-origin", + "default": null, + "type": "str" + }, + { + "name": "width", + "default": null, + "type": "str" + }, + { + "name": "height", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "445", + "members": [ + { + "name": "evdev", + "type": "str" + }, + { + "name": "grab_all", + "default": null, + "type": "bool" + }, + { + "name": "repeat", + "default": null, + "type": "bool" + }, + { + "name": "grab-toggle", + "default": null, + "type": "608" + } + ], + "meta-type": "object" + }, + { + "name": "446", + "members": [ + { + "name": "aio-max-batch", + "default": null, + "type": "int" + }, + { + "name": "thread-pool-min", + "default": null, + "type": "int" + }, + { + "name": "thread-pool-max", + "default": null, + "type": "int" + }, + { + "name": "poll-max-ns", + "default": null, + "type": "int" + }, + { + "name": "poll-grow", + "default": null, + "type": "int" + }, + { + "name": "poll-shrink", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "447", + "members": [ + { + "name": "aio-max-batch", + "default": null, + "type": "int" + }, + { + "name": "thread-pool-min", + "default": null, + "type": "int" + }, + { + "name": "thread-pool-max", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "448", + "members": [ + { + "name": "dump", + "default": null, + "type": "bool" + }, + { + "name": "host-nodes", + "default": null, + "type": "[int]" + }, + { + "name": "merge", + "default": null, + "type": "bool" + }, + { + "name": "policy", + "default": null, + "type": "471" + }, + { + "name": "prealloc", + "default": null, + "type": "bool" + }, + { + "name": "prealloc-threads", + "default": null, + "type": "int" + }, + { + "name": "prealloc-context", + "default": null, + "type": "str" + }, + { + "name": "share", + "default": null, + "type": "bool" + }, + { + "name": "reserve", + "default": null, + "type": "bool" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "x-use-canonical-path-for-ramblock-id", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "449", + "members": [ + { + "name": "dump", + "default": null, + "type": "bool" + }, + { + "name": "host-nodes", + "default": null, + "type": "[int]" + }, + { + "name": "merge", + "default": null, + "type": "bool" + }, + { + "name": "policy", + "default": null, + "type": "471" + }, + { + "name": "prealloc", + "default": null, + "type": "bool" + }, + { + "name": "prealloc-threads", + "default": null, + "type": "int" + }, + { + "name": "prealloc-context", + "default": null, + "type": "str" + }, + { + "name": "share", + "default": null, + "type": "bool" + }, + { + "name": "reserve", + "default": null, + "type": "bool" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "x-use-canonical-path-for-ramblock-id", + "default": null, + "type": "bool" + }, + { + "name": "align", + "default": null, + "type": "int" + }, + { + "name": "discard-data", + "default": null, + "type": "bool" + }, + { + "name": "mem-path", + "type": "str" + }, + { + "name": "pmem", + "default": null, + "type": "bool" + }, + { + "name": "readonly", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "450", + "members": [ + { + "name": "dump", + "default": null, + "type": "bool" + }, + { + "name": "host-nodes", + "default": null, + "type": "[int]" + }, + { + "name": "merge", + "default": null, + "type": "bool" + }, + { + "name": "policy", + "default": null, + "type": "471" + }, + { + "name": "prealloc", + "default": null, + "type": "bool" + }, + { + "name": "prealloc-threads", + "default": null, + "type": "int" + }, + { + "name": "prealloc-context", + "default": null, + "type": "str" + }, + { + "name": "share", + "default": null, + "type": "bool" + }, + { + "name": "reserve", + "default": null, + "type": "bool" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "x-use-canonical-path-for-ramblock-id", + "default": null, + "type": "bool" + }, + { + "name": "hugetlb", + "default": null, + "type": "bool" + }, + { + "name": "hugetlbsize", + "default": null, + "type": "int" + }, + { + "name": "seal", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "451", + "members": [ + { + "name": "dump", + "default": null, + "type": "bool" + }, + { + "name": "host-nodes", + "default": null, + "type": "[int]" + }, + { + "name": "merge", + "default": null, + "type": "bool" + }, + { + "name": "policy", + "default": null, + "type": "471" + }, + { + "name": "prealloc", + "default": null, + "type": "bool" + }, + { + "name": "prealloc-threads", + "default": null, + "type": "int" + }, + { + "name": "prealloc-context", + "default": null, + "type": "str" + }, + { + "name": "share", + "default": null, + "type": "bool" + }, + { + "name": "reserve", + "default": null, + "type": "bool" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "x-use-canonical-path-for-ramblock-id", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "452", + "members": [ + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "453", + "members": [ + { + "name": "chardev", + "type": "str" + }, + { + "name": "log", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "454", + "members": [ + { + "name": "opened", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + } + ], + "meta-type": "object" + }, + { + "name": "455", + "members": [ + { + "name": "opened", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + }, + { + "name": "chardev", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "456", + "members": [ + { + "name": "opened", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + }, + { + "name": "filename", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "457", + "members": [ + { + "name": "loaded", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + }, + { + "name": "format", + "default": null, + "type": "609" + }, + { + "name": "keyid", + "default": null, + "type": "str" + }, + { + "name": "iv", + "default": null, + "type": "str" + }, + { + "name": "data", + "default": null, + "type": "str" + }, + { + "name": "file", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "458", + "members": [ + { + "name": "loaded", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + }, + { + "name": "format", + "default": null, + "type": "609" + }, + { + "name": "keyid", + "default": null, + "type": "str" + }, + { + "name": "iv", + "default": null, + "type": "str" + }, + { + "name": "serial", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "459", + "members": [ + { + "name": "sev-device", + "default": null, + "type": "str" + }, + { + "name": "dh-cert-file", + "default": null, + "type": "str" + }, + { + "name": "session-file", + "default": null, + "type": "str" + }, + { + "name": "policy", + "default": null, + "type": "int" + }, + { + "name": "handle", + "default": null, + "type": "int" + }, + { + "name": "cbitpos", + "default": null, + "type": "int" + }, + { + "name": "reduced-phys-bits", + "type": "int" + }, + { + "name": "kernel-hashes", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "460", + "members": [ + { + "name": "cpu-affinity", + "default": null, + "type": "[int]" + }, + { + "name": "node-affinity", + "default": null, + "type": "[int]" + } + ], + "meta-type": "object" + }, + { + "name": "461", + "members": [ + { + "name": "limits", + "default": null, + "type": "610" + }, + { + "name": "x-iops-total", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-iops-total-max", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-iops-total-max-length", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-iops-read", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-iops-read-max", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-iops-read-max-length", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-iops-write", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-iops-write-max", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-iops-write-max-length", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-bps-total", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-bps-total-max", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-bps-total-max-length", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-bps-read", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-bps-read-max", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-bps-read-max-length", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-bps-write", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-bps-write-max", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-bps-write-max-length", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + }, + { + "name": "x-iops-size", + "default": null, + "type": "int", + "features": [ + "unstable" + ] + } + ], + "meta-type": "object" + }, + { + "name": "462", + "members": [ + { + "name": "verify-peer", + "default": null, + "type": "bool" + }, + { + "name": "dir", + "default": null, + "type": "str" + }, + { + "name": "endpoint", + "default": null, + "type": "611" + }, + { + "name": "priority", + "default": null, + "type": "str" + }, + { + "name": "loaded", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + } + ], + "meta-type": "object" + }, + { + "name": "463", + "members": [ + { + "name": "verify-peer", + "default": null, + "type": "bool" + }, + { + "name": "dir", + "default": null, + "type": "str" + }, + { + "name": "endpoint", + "default": null, + "type": "611" + }, + { + "name": "priority", + "default": null, + "type": "str" + }, + { + "name": "loaded", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + }, + { + "name": "username", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "464", + "members": [ + { + "name": "verify-peer", + "default": null, + "type": "bool" + }, + { + "name": "dir", + "default": null, + "type": "str" + }, + { + "name": "endpoint", + "default": null, + "type": "611" + }, + { + "name": "priority", + "default": null, + "type": "str" + }, + { + "name": "loaded", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + }, + { + "name": "sanity-check", + "default": null, + "type": "bool" + }, + { + "name": "passwordid", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "465", + "members": [ + { + "name": "verify-peer", + "default": null, + "type": "bool" + }, + { + "name": "dir", + "default": null, + "type": "str" + }, + { + "name": "endpoint", + "default": null, + "type": "611" + }, + { + "name": "priority", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "466", + "members": [ + { + "name": "fd", + "type": "str" + }, + { + "name": "devid", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "467", + "members": [ + { + "name": "socket", + "type": "365" + }, + { + "name": "device", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "468", + "members": [ + { + "name": "node-id", + "default": null, + "type": "int" + }, + { + "name": "socket-id", + "default": null, + "type": "int" + }, + { + "name": "die-id", + "default": null, + "type": "int" + }, + { + "name": "cluster-id", + "default": null, + "type": "int" + }, + { + "name": "core-id", + "default": null, + "type": "int" + }, + { + "name": "thread-id", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "469", + "members": [ + { + "name": "aarch64" + }, + { + "name": "alpha" + }, + { + "name": "arm" + }, + { + "name": "avr" + }, + { + "name": "cris" + }, + { + "name": "hppa" + }, + { + "name": "i386" + }, + { + "name": "loongarch64" + }, + { + "name": "m68k" + }, + { + "name": "microblaze" + }, + { + "name": "microblazeel" + }, + { + "name": "mips" + }, + { + "name": "mips64" + }, + { + "name": "mips64el" + }, + { + "name": "mipsel" + }, + { + "name": "nios2" + }, + { + "name": "or1k" + }, + { + "name": "ppc" + }, + { + "name": "ppc64" + }, + { + "name": "riscv32" + }, + { + "name": "riscv64" + }, + { + "name": "rx" + }, + { + "name": "s390x" + }, + { + "name": "sh4" + }, + { + "name": "sh4eb" + }, + { + "name": "sparc" + }, + { + "name": "sparc64" + }, + { + "name": "tricore" + }, + { + "name": "x86_64" + }, + { + "name": "xtensa" + }, + { + "name": "xtensaeb" + } + ], + "meta-type": "enum", + "values": [ + "aarch64", + "alpha", + "arm", + "avr", + "cris", + "hppa", + "i386", + "loongarch64", + "m68k", + "microblaze", + "microblazeel", + "mips", + "mips64", + "mips64el", + "mipsel", + "nios2", + "or1k", + "ppc", + "ppc64", + "riscv32", + "riscv64", + "rx", + "s390x", + "sh4", + "sh4eb", + "sparc", + "sparc64", + "tricore", + "x86_64", + "xtensa", + "xtensaeb" + ] + }, + { + "name": "470", + "members": [ + { + "name": "cpu-state", + "type": "612" + } + ], + "meta-type": "object" + }, + { + "name": "471", + "members": [ + { + "name": "default" + }, + { + "name": "preferred" + }, + { + "name": "bind" + }, + { + "name": "interleave" + } + ], + "meta-type": "enum", + "values": [ + "default", + "preferred", + "bind", + "interleave" + ] + }, + { + "name": "472", + "members": [ + { + "name": "node" + }, + { + "name": "dist" + }, + { + "name": "cpu" + }, + { + "name": "hmat-lb" + }, + { + "name": "hmat-cache" + } + ], + "meta-type": "enum", + "values": [ + "node", + "dist", + "cpu", + "hmat-lb", + "hmat-cache" + ] + }, + { + "name": "473", + "members": [ + { + "name": "nodeid", + "default": null, + "type": "int" + }, + { + "name": "cpus", + "default": null, + "type": "[int]" + }, + { + "name": "mem", + "default": null, + "type": "int" + }, + { + "name": "memdev", + "default": null, + "type": "str" + }, + { + "name": "initiator", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "474", + "members": [ + { + "name": "src", + "type": "int" + }, + { + "name": "dst", + "type": "int" + }, + { + "name": "val", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "475", + "members": [ + { + "name": "node-id", + "default": null, + "type": "int" + }, + { + "name": "socket-id", + "default": null, + "type": "int" + }, + { + "name": "die-id", + "default": null, + "type": "int" + }, + { + "name": "cluster-id", + "default": null, + "type": "int" + }, + { + "name": "core-id", + "default": null, + "type": "int" + }, + { + "name": "thread-id", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "476", + "members": [ + { + "name": "initiator", + "type": "int" + }, + { + "name": "target", + "type": "int" + }, + { + "name": "hierarchy", + "type": "613" + }, + { + "name": "data-type", + "type": "614" + }, + { + "name": "latency", + "default": null, + "type": "int" + }, + { + "name": "bandwidth", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "477", + "members": [ + { + "name": "node-id", + "type": "int" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "level", + "type": "int" + }, + { + "name": "associativity", + "type": "615" + }, + { + "name": "policy", + "type": "616" + }, + { + "name": "line", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "478", + "members": [ + { + "name": "dimm" + }, + { + "name": "nvdimm" + }, + { + "name": "virtio-pmem" + }, + { + "name": "virtio-mem" + }, + { + "name": "sgx-epc" + } + ], + "meta-type": "enum", + "values": [ + "dimm", + "nvdimm", + "virtio-pmem", + "virtio-mem", + "sgx-epc" + ] + }, + { + "name": "479", + "members": [ + { + "name": "data", + "type": "617" + } + ], + "meta-type": "object" + }, + { + "name": "480", + "members": [ + { + "name": "data", + "type": "618" + } + ], + "meta-type": "object" + }, + { + "name": "481", + "members": [ + { + "name": "data", + "type": "619" + } + ], + "meta-type": "object" + }, + { + "name": "482", + "members": [ + { + "name": "data", + "type": "620" + } + ], + "meta-type": "object" + }, + { + "name": "483", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "props", + "default": null, + "type": "any" + } + ], + "meta-type": "object" + }, + { + "name": "484", + "members": [ + { + "name": "incompatible" + }, + { + "name": "identical" + }, + { + "name": "superset" + }, + { + "name": "subset" + } + ], + "meta-type": "enum", + "values": [ + "incompatible", + "identical", + "superset", + "subset" + ] + }, + { + "name": "485", + "members": [ + { + "name": "static" + }, + { + "name": "full" + } + ], + "meta-type": "enum", + "values": [ + "static", + "full" + ] + }, + { + "name": "486", + "members": [ + { + "name": "none" + }, + { + "name": "record" + }, + { + "name": "play" + } + ], + "meta-type": "enum", + "values": [ + "none", + "record", + "play" + ] + }, + { + "name": "487", + "members": [ + { + "name": "block-node" + }, + { + "name": "chardev" + }, + { + "name": "migration" + } + ], + "meta-type": "enum", + "values": [ + "block-node", + "chardev", + "migration" + ] + }, + { + "name": "488", + "members": [ + { + "name": "node-name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "489", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[490]", + "element-type": "490", + "meta-type": "array" + }, + { + "name": "490", + "members": [ + { + "name": "fd", + "type": "int" + }, + { + "name": "opaque", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[491]", + "element-type": "491", + "meta-type": "array" + }, + { + "name": "491", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "type", + "type": "621" + }, + { + "name": "help", + "default": null, + "type": "str" + }, + { + "name": "default", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[493]", + "element-type": "493", + "meta-type": "array" + }, + { + "name": "493", + "members": [ + { + "name": "node", + "type": "int" + }, + { + "name": "size", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "494", + "members": [ + { + "name": "DIMM" + }, + { + "name": "CPU" + } + ], + "meta-type": "enum", + "values": [ + "DIMM", + "CPU" + ] + }, + { + "name": "[495]", + "element-type": "495", + "meta-type": "array" + }, + { + "name": "495", + "members": [ + { + "name": "bus", + "type": "int" + }, + { + "name": "slot", + "type": "int" + }, + { + "name": "function", + "type": "int" + }, + { + "name": "class_info", + "type": "622" + }, + { + "name": "id", + "type": "623" + }, + { + "name": "irq", + "default": null, + "type": "int" + }, + { + "name": "irq_pin", + "type": "int" + }, + { + "name": "qdev_id", + "type": "str" + }, + { + "name": "pci_bridge", + "default": null, + "type": "624" + }, + { + "name": "regions", + "type": "[625]" + } + ], + "meta-type": "object" + }, + { + "name": "496", + "members": [ + { + "name": "vm" + }, + { + "name": "vcpu" + } + ], + "meta-type": "enum", + "values": [ + "vm", + "vcpu" + ] + }, + { + "name": "[497]", + "element-type": "497", + "meta-type": "array" + }, + { + "name": "497", + "members": [ + { + "name": "provider", + "type": "499" + }, + { + "name": "names", + "default": null, + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "498", + "members": [ + { + "name": "vcpus", + "default": null, + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "499", + "members": [ + { + "name": "kvm" + } + ], + "meta-type": "enum", + "values": [ + "kvm" + ] + }, + { + "name": "[500]", + "element-type": "500", + "meta-type": "array" + }, + { + "name": "500", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "value", + "type": "626" + } + ], + "meta-type": "object" + }, + { + "name": "[501]", + "element-type": "501", + "meta-type": "array" + }, + { + "name": "501", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "type", + "type": "627" + }, + { + "name": "unit", + "default": null, + "type": "628" + }, + { + "name": "base", + "default": null, + "type": "int" + }, + { + "name": "exponent", + "type": "int" + }, + { + "name": "bucket-size", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "502", + "members": [ + { + "name": "transports", + "type": "[str]" + }, + { + "name": "dev-features", + "default": null, + "type": "[str]" + }, + { + "name": "unknown-dev-features", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "503", + "members": [ + { + "name": "statuses", + "type": "[str]" + }, + { + "name": "unknown-statuses", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "504", + "members": [ + { + "name": "n-mem-sections", + "type": "int" + }, + { + "name": "n-tmp-sections", + "type": "int" + }, + { + "name": "nvqs", + "type": "int" + }, + { + "name": "vq-index", + "type": "int" + }, + { + "name": "features", + "type": "502" + }, + { + "name": "acked-features", + "type": "502" + }, + { + "name": "backend-features", + "type": "502" + }, + { + "name": "protocol-features", + "type": "629" + }, + { + "name": "max-queues", + "type": "int" + }, + { + "name": "backend-cap", + "type": "int" + }, + { + "name": "log-enabled", + "type": "bool" + }, + { + "name": "log-size", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[505]", + "element-type": "505", + "meta-type": "array" + }, + { + "name": "505", + "members": [ + { + "name": "addr", + "type": "int" + }, + { + "name": "len", + "type": "int" + }, + { + "name": "flags", + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "506", + "members": [ + { + "name": "flags", + "type": "int" + }, + { + "name": "idx", + "type": "int" + }, + { + "name": "ring", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "507", + "members": [ + { + "name": "flags", + "type": "int" + }, + { + "name": "idx", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "508", + "members": [ + { + "name": "hyper-v" + }, + { + "name": "s390" + } + ], + "meta-type": "enum", + "values": [ + "hyper-v", + "s390" + ] + }, + { + "name": "509", + "members": [ + { + "name": "arg1", + "type": "int" + }, + { + "name": "arg2", + "type": "int" + }, + { + "name": "arg3", + "type": "int" + }, + { + "name": "arg4", + "type": "int" + }, + { + "name": "arg5", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "510", + "members": [ + { + "name": "core", + "type": "int" + }, + { + "name": "psw-mask", + "type": "int" + }, + { + "name": "psw-addr", + "type": "int" + }, + { + "name": "reason", + "type": "630" + } + ], + "meta-type": "object" + }, + { + "name": "[511]", + "element-type": "511", + "meta-type": "array" + }, + { + "name": "511", + "members": [ + { + "name": "interval_length", + "type": "int" + }, + { + "name": "min_rd_latency_ns", + "type": "int" + }, + { + "name": "max_rd_latency_ns", + "type": "int" + }, + { + "name": "avg_rd_latency_ns", + "type": "int" + }, + { + "name": "min_wr_latency_ns", + "type": "int" + }, + { + "name": "max_wr_latency_ns", + "type": "int" + }, + { + "name": "avg_wr_latency_ns", + "type": "int" + }, + { + "name": "min_flush_latency_ns", + "type": "int" + }, + { + "name": "max_flush_latency_ns", + "type": "int" + }, + { + "name": "avg_flush_latency_ns", + "type": "int" + }, + { + "name": "avg_rd_queue_depth", + "type": "number" + }, + { + "name": "avg_wr_queue_depth", + "type": "number" + } + ], + "meta-type": "object" + }, + { + "name": "512", + "members": [ + { + "name": "boundaries", + "type": "[int]" + }, + { + "name": "bins", + "type": "[int]" + } + ], + "meta-type": "object" + }, + { + "name": "513", + "members": [ + { + "name": "discard-nb-ok", + "type": "int" + }, + { + "name": "discard-nb-failed", + "type": "int" + }, + { + "name": "discard-bytes-ok", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "514", + "members": [ + { + "name": "completion-errors", + "type": "int" + }, + { + "name": "aligned-accesses", + "type": "int" + }, + { + "name": "unaligned-accesses", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[69]", + "element-type": "69", + "meta-type": "array" + }, + { + "name": "515", + "tag": "type", + "variants": [ + { + "case": "qcow2", + "type": "632" + }, + { + "case": "vmdk", + "type": "633" + }, + { + "case": "luks", + "type": "634" + }, + { + "case": "rbd", + "type": "635" + } + ], + "members": [ + { + "name": "type", + "type": "631" + } + ], + "meta-type": "object" + }, + { + "name": "516", + "members": [ + { + "name": "block-backend" + }, + { + "name": "block-job" + }, + { + "name": "block-driver" + } + ], + "meta-type": "enum", + "values": [ + "block-backend", + "block-job", + "block-driver" + ] + }, + { + "name": "[517]", + "element-type": "517", + "meta-type": "array" + }, + { + "name": "517", + "members": [ + { + "name": "consistent-read" + }, + { + "name": "write" + }, + { + "name": "write-unchanged" + }, + { + "name": "resize" + } + ], + "meta-type": "enum", + "values": [ + "consistent-read", + "write", + "write-unchanged", + "resize" + ] + }, + { + "name": "518", + "members": [ + { + "type": "49" + }, + { + "type": "str" + } + ], + "meta-type": "alternate" + }, + { + "name": "[519]", + "element-type": "519", + "meta-type": "array" + }, + { + "name": "519", + "members": [ + { + "name": "event", + "type": "636" + }, + { + "name": "state", + "default": null, + "type": "int" + }, + { + "name": "iotype", + "default": null, + "type": "637" + }, + { + "name": "errno", + "default": null, + "type": "int" + }, + { + "name": "sector", + "default": null, + "type": "int" + }, + { + "name": "once", + "default": null, + "type": "bool" + }, + { + "name": "immediately", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "[520]", + "element-type": "520", + "meta-type": "array" + }, + { + "name": "520", + "members": [ + { + "name": "event", + "type": "636" + }, + { + "name": "state", + "default": null, + "type": "int" + }, + { + "name": "new_state", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "521", + "members": [ + { + "name": "break-guest-write" + }, + { + "name": "break-snapshot" + } + ], + "meta-type": "enum", + "values": [ + "break-guest-write", + "break-snapshot" + ] + }, + { + "name": "522", + "members": [ + { + "name": "auto" + }, + { + "name": "on" + }, + { + "name": "off" + } + ], + "meta-type": "enum", + "values": [ + "auto", + "on", + "off" + ] + }, + { + "name": "523", + "members": [ + { + "name": "threads" + }, + { + "name": "native" + }, + { + "name": "io_uring" + } + ], + "meta-type": "enum", + "values": [ + "threads", + "native", + "io_uring" + ] + }, + { + "name": "524", + "members": [ + { + "name": "tcp" + }, + { + "name": "iser" + } + ], + "meta-type": "enum", + "values": [ + "tcp", + "iser" + ] + }, + { + "name": "525", + "members": [ + { + "name": "crc32c" + }, + { + "name": "none" + }, + { + "name": "crc32c-none" + }, + { + "name": "none-crc32c" + } + ], + "meta-type": "enum", + "values": [ + "crc32c", + "none", + "crc32c-none", + "none-crc32c" + ] + }, + { + "name": "526", + "members": [ + { + "name": "type", + "type": "638" + }, + { + "name": "host", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "527", + "members": [ + { + "type": "49" + }, + { + "type": "str" + }, + { + "type": "null" + } + ], + "meta-type": "alternate" + }, + { + "name": "528", + "members": [ + { + "type": "639" + }, + { + "type": "640" + } + ], + "meta-type": "alternate" + }, + { + "name": "529", + "tag": "format", + "variants": [ + { + "case": "aes", + "type": "642" + }, + { + "case": "luks", + "type": "643" + } + ], + "members": [ + { + "name": "format", + "type": "641" + } + ], + "meta-type": "object" + }, + { + "name": "530", + "tag": "format", + "variants": [ + { + "case": "aes", + "type": "642" + } + ], + "members": [ + { + "name": "format", + "type": "644" + } + ], + "meta-type": "object" + }, + { + "name": "[518]", + "element-type": "518", + "meta-type": "array" + }, + { + "name": "531", + "members": [ + { + "name": "quorum" + }, + { + "name": "fifo" + } + ], + "meta-type": "enum", + "values": [ + "quorum", + "fifo" + ] + }, + { + "name": "532", + "tag": "format", + "variants": [ + { + "case": "luks", + "type": "646" + }, + { + "case": "luks2", + "type": "647" + } + ], + "members": [ + { + "name": "format", + "type": "645" + } + ], + "meta-type": "object" + }, + { + "name": "[533]", + "element-type": "533", + "meta-type": "array" + }, + { + "name": "533", + "members": [ + { + "name": "cephx" + }, + { + "name": "none" + } + ], + "meta-type": "enum", + "values": [ + "cephx", + "none" + ] + }, + { + "name": "[534]", + "element-type": "534", + "meta-type": "array" + }, + { + "name": "534", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "port", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "535", + "members": [ + { + "name": "primary" + }, + { + "name": "secondary" + } + ], + "meta-type": "enum", + "values": [ + "primary", + "secondary" + ] + }, + { + "name": "536", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "port", + "type": "str" + }, + { + "name": "numeric", + "default": null, + "type": "bool" + }, + { + "name": "to", + "default": null, + "type": "int" + }, + { + "name": "ipv4", + "default": null, + "type": "bool" + }, + { + "name": "ipv6", + "default": null, + "type": "bool" + }, + { + "name": "keep-alive", + "default": null, + "type": "bool" + }, + { + "name": "mptcp", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "537", + "tag": "mode", + "variants": [ + { + "case": "hash", + "type": "649" + }, + { + "case": "none", + "type": "0" + }, + { + "case": "known_hosts", + "type": "0" + } + ], + "members": [ + { + "name": "mode", + "type": "648" + } + ], + "meta-type": "object" + }, + { + "name": "538", + "members": [ + { + "name": "filename", + "type": "str" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "preallocation", + "default": null, + "type": "650" + }, + { + "name": "nocow", + "default": null, + "type": "bool" + }, + { + "name": "extent-size-hint", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "539", + "members": [ + { + "name": "location", + "type": "304" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "preallocation", + "default": null, + "type": "650" + } + ], + "meta-type": "object" + }, + { + "name": "540", + "members": [ + { + "name": "key-secret", + "default": null, + "type": "str" + }, + { + "name": "cipher-alg", + "default": null, + "type": "651" + }, + { + "name": "cipher-mode", + "default": null, + "type": "652" + }, + { + "name": "ivgen-alg", + "default": null, + "type": "653" + }, + { + "name": "ivgen-hash-alg", + "default": null, + "type": "654" + }, + { + "name": "hash-alg", + "default": null, + "type": "654" + }, + { + "name": "iter-time", + "default": null, + "type": "int" + }, + { + "name": "file", + "type": "518" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "preallocation", + "default": null, + "type": "650" + } + ], + "meta-type": "object" + }, + { + "name": "541", + "members": [ + { + "name": "location", + "type": "311" + }, + { + "name": "size", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "542", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "cluster-size", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "543", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "backing-file", + "default": null, + "type": "str" + }, + { + "name": "encrypt", + "default": null, + "type": "655" + } + ], + "meta-type": "object" + }, + { + "name": "544", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "data-file", + "default": null, + "type": "518" + }, + { + "name": "data-file-raw", + "default": null, + "type": "bool" + }, + { + "name": "extended-l2", + "default": null, + "type": "bool" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "version", + "default": null, + "type": "656" + }, + { + "name": "backing-file", + "default": null, + "type": "str" + }, + { + "name": "backing-fmt", + "default": null, + "type": "291" + }, + { + "name": "encrypt", + "default": null, + "type": "655" + }, + { + "name": "cluster-size", + "default": null, + "type": "int" + }, + { + "name": "preallocation", + "default": null, + "type": "650" + }, + { + "name": "lazy-refcounts", + "default": null, + "type": "bool" + }, + { + "name": "refcount-bits", + "default": null, + "type": "int" + }, + { + "name": "compression-type", + "default": null, + "type": "657" + } + ], + "meta-type": "object" + }, + { + "name": "545", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "backing-file", + "default": null, + "type": "str" + }, + { + "name": "backing-fmt", + "default": null, + "type": "291" + }, + { + "name": "cluster-size", + "default": null, + "type": "int" + }, + { + "name": "table-size", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "546", + "members": [ + { + "name": "location", + "type": "321" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "cluster-size", + "default": null, + "type": "int" + }, + { + "name": "encrypt", + "default": null, + "type": "658" + } + ], + "meta-type": "object" + }, + { + "name": "547", + "members": [ + { + "name": "location", + "type": "323" + }, + { + "name": "size", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "548", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "preallocation", + "default": null, + "type": "650" + } + ], + "meta-type": "object" + }, + { + "name": "549", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "log-size", + "default": null, + "type": "int" + }, + { + "name": "block-size", + "default": null, + "type": "int" + }, + { + "name": "subformat", + "default": null, + "type": "659" + }, + { + "name": "block-state-zero", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "550", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "extents", + "default": null, + "type": "[518]" + }, + { + "name": "subformat", + "default": null, + "type": "660" + }, + { + "name": "backing-file", + "default": null, + "type": "str" + }, + { + "name": "adapter-type", + "default": null, + "type": "661" + }, + { + "name": "hwversion", + "default": null, + "type": "str" + }, + { + "name": "toolsversion", + "default": null, + "type": "str" + }, + { + "name": "zeroed-grain", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "551", + "members": [ + { + "name": "file", + "type": "518" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "subformat", + "default": null, + "type": "662" + }, + { + "name": "force-size", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "552", + "members": [ + { + "name": "state", + "type": "663" + }, + { + "name": "new-secret", + "default": null, + "type": "str" + }, + { + "name": "old-secret", + "default": null, + "type": "str" + }, + { + "name": "keyslot", + "default": null, + "type": "int" + }, + { + "name": "iter-time", + "default": null, + "type": "int" + }, + { + "name": "secret", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "553", + "members": [ + { + "name": "encrypt", + "default": null, + "type": "664" + } + ], + "meta-type": "object" + }, + { + "name": "null", + "json-type": "null", + "meta-type": "builtin" + }, + { + "name": "554", + "members": [ + { + "name": "inet" + }, + { + "name": "unix" + }, + { + "name": "vsock" + }, + { + "name": "fd" + } + ], + "meta-type": "enum", + "values": [ + "inet", + "unix", + "vsock", + "fd" + ] + }, + { + "name": "555", + "members": [ + { + "name": "data", + "type": "536" + } + ], + "meta-type": "object" + }, + { + "name": "556", + "members": [ + { + "name": "data", + "type": "575" + } + ], + "meta-type": "object" + }, + { + "name": "557", + "members": [ + { + "name": "data", + "type": "576" + } + ], + "meta-type": "object" + }, + { + "name": "558", + "members": [ + { + "name": "data", + "type": "574" + } + ], + "meta-type": "object" + }, + { + "name": "559", + "members": [ + { + "name": "off" + }, + { + "name": "on" + }, + { + "name": "auto" + } + ], + "meta-type": "enum", + "values": [ + "off", + "on", + "auto" + ] + }, + { + "name": "560", + "members": [ + { + "name": "file" + }, + { + "name": "serial" + }, + { + "name": "parallel" + }, + { + "name": "pipe" + }, + { + "name": "socket" + }, + { + "name": "udp" + }, + { + "name": "pty" + }, + { + "name": "null" + }, + { + "name": "mux" + }, + { + "name": "msmouse" + }, + { + "name": "wctablet" + }, + { + "name": "braille" + }, + { + "name": "testdev" + }, + { + "name": "stdio" + }, + { + "name": "console" + }, + { + "name": "spicevmc" + }, + { + "name": "spiceport" + }, + { + "name": "qemu-vdagent" + }, + { + "name": "dbus" + }, + { + "name": "vc" + }, + { + "name": "ringbuf" + }, + { + "name": "memory" + } + ], + "meta-type": "enum", + "values": [ + "file", + "serial", + "parallel", + "pipe", + "socket", + "udp", + "pty", + "null", + "mux", + "msmouse", + "wctablet", + "braille", + "testdev", + "stdio", + "console", + "spicevmc", + "spiceport", + "qemu-vdagent", + "dbus", + "vc", + "ringbuf", + "memory" + ] + }, + { + "name": "561", + "members": [ + { + "name": "data", + "type": "665" + } + ], + "meta-type": "object" + }, + { + "name": "562", + "members": [ + { + "name": "data", + "type": "666" + } + ], + "meta-type": "object" + }, + { + "name": "563", + "members": [ + { + "name": "data", + "type": "667" + } + ], + "meta-type": "object" + }, + { + "name": "564", + "members": [ + { + "name": "data", + "type": "668" + } + ], + "meta-type": "object" + }, + { + "name": "565", + "members": [ + { + "name": "data", + "type": "669" + } + ], + "meta-type": "object" + }, + { + "name": "566", + "members": [ + { + "name": "data", + "type": "670" + } + ], + "meta-type": "object" + }, + { + "name": "567", + "members": [ + { + "name": "data", + "type": "671" + } + ], + "meta-type": "object" + }, + { + "name": "568", + "members": [ + { + "name": "data", + "type": "672" + } + ], + "meta-type": "object" + }, + { + "name": "569", + "members": [ + { + "name": "data", + "type": "673" + } + ], + "meta-type": "object" + }, + { + "name": "570", + "members": [ + { + "name": "data", + "type": "674" + } + ], + "meta-type": "object" + }, + { + "name": "571", + "members": [ + { + "name": "data", + "type": "675" + } + ], + "meta-type": "object" + }, + { + "name": "572", + "members": [ + { + "name": "data", + "type": "676" + } + ], + "meta-type": "object" + }, + { + "name": "573", + "members": [ + { + "name": "data", + "type": "677" + } + ], + "meta-type": "object" + }, + { + "name": "[574]", + "element-type": "574", + "meta-type": "array" + }, + { + "name": "574", + "members": [ + { + "name": "str", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "575", + "members": [ + { + "name": "path", + "type": "str" + }, + { + "name": "abstract", + "default": null, + "type": "bool" + }, + { + "name": "tight", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "576", + "members": [ + { + "name": "cid", + "type": "str" + }, + { + "name": "port", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "577", + "members": [ + { + "name": "data", + "type": "678" + } + ], + "meta-type": "object" + }, + { + "name": "578", + "members": [ + { + "name": "data", + "type": "679" + } + ], + "meta-type": "object" + }, + { + "name": "579", + "members": [ + { + "name": "number" + }, + { + "name": "qcode" + } + ], + "meta-type": "enum", + "values": [ + "number", + "qcode" + ] + }, + { + "name": "580", + "members": [ + { + "name": "data", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "581", + "members": [ + { + "name": "data", + "type": "680" + } + ], + "meta-type": "object" + }, + { + "name": "582", + "members": [ + { + "name": "key" + }, + { + "name": "btn" + }, + { + "name": "rel" + }, + { + "name": "abs" + } + ], + "meta-type": "enum", + "values": [ + "key", + "btn", + "rel", + "abs" + ] + }, + { + "name": "583", + "members": [ + { + "name": "data", + "type": "681" + } + ], + "meta-type": "object" + }, + { + "name": "584", + "members": [ + { + "name": "data", + "type": "682" + } + ], + "meta-type": "object" + }, + { + "name": "585", + "members": [ + { + "name": "data", + "type": "683" + } + ], + "meta-type": "object" + }, + { + "name": "586", + "members": [ + { + "name": "lctrl-lalt" + }, + { + "name": "lshift-lctrl-lalt" + }, + { + "name": "rctrl" + } + ], + "meta-type": "enum", + "values": [ + "lctrl-lalt", + "lshift-lctrl-lalt", + "rctrl" + ] + }, + { + "name": "number", + "json-type": "number", + "meta-type": "builtin" + }, + { + "name": "[587]", + "element-type": "587", + "meta-type": "array" + }, + { + "name": "587", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "alias", + "type": "str" + }, + { + "name": "transform", + "default": null, + "type": "684" + } + ], + "meta-type": "object" + }, + { + "name": "588", + "members": [ + { + "name": "abort" + }, + { + "name": "block-dirty-bitmap-add" + }, + { + "name": "block-dirty-bitmap-remove" + }, + { + "name": "block-dirty-bitmap-clear" + }, + { + "name": "block-dirty-bitmap-enable" + }, + { + "name": "block-dirty-bitmap-disable" + }, + { + "name": "block-dirty-bitmap-merge" + }, + { + "name": "blockdev-backup" + }, + { + "name": "blockdev-snapshot" + }, + { + "name": "blockdev-snapshot-internal-sync" + }, + { + "name": "blockdev-snapshot-sync" + }, + { + "name": "drive-backup", + "features": [ + "deprecated" + ] + } + ], + "meta-type": "enum", + "values": [ + "abort", + "block-dirty-bitmap-add", + "block-dirty-bitmap-remove", + "block-dirty-bitmap-clear", + "block-dirty-bitmap-enable", + "block-dirty-bitmap-disable", + "block-dirty-bitmap-merge", + "blockdev-backup", + "blockdev-snapshot", + "blockdev-snapshot-internal-sync", + "blockdev-snapshot-sync", + "drive-backup" + ] + }, + { + "name": "589", + "members": [ + { + "name": "data", + "type": "685" + } + ], + "meta-type": "object" + }, + { + "name": "590", + "members": [ + { + "name": "data", + "type": "36" + } + ], + "meta-type": "object" + }, + { + "name": "591", + "members": [ + { + "name": "data", + "type": "37" + } + ], + "meta-type": "object" + }, + { + "name": "592", + "members": [ + { + "name": "data", + "type": "38" + } + ], + "meta-type": "object" + }, + { + "name": "593", + "members": [ + { + "name": "data", + "type": "31" + } + ], + "meta-type": "object" + }, + { + "name": "594", + "members": [ + { + "name": "data", + "type": "27" + } + ], + "meta-type": "object" + }, + { + "name": "595", + "members": [ + { + "name": "data", + "type": "67" + } + ], + "meta-type": "object" + }, + { + "name": "596", + "members": [ + { + "name": "data", + "type": "26" + } + ], + "meta-type": "object" + }, + { + "name": "597", + "members": [ + { + "name": "data", + "type": "30" + } + ], + "meta-type": "object" + }, + { + "name": "598", + "members": [ + { + "name": "individual" + }, + { + "name": "grouped" + } + ], + "meta-type": "enum", + "values": [ + "individual", + "grouped" + ] + }, + { + "name": "599", + "members": [ + { + "name": "string" + }, + { + "name": "number" + }, + { + "name": "int" + }, + { + "name": "boolean" + }, + { + "name": "null" + }, + { + "name": "object" + }, + { + "name": "array" + }, + { + "name": "value" + } + ], + "meta-type": "enum", + "values": [ + "string", + "number", + "int", + "boolean", + "null", + "object", + "array", + "value" + ] + }, + { + "name": "[600]", + "element-type": "600", + "meta-type": "array" + }, + { + "name": "600", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "features", + "default": null, + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "[601]", + "element-type": "601", + "meta-type": "array" + }, + { + "name": "601", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "type", + "type": "str" + }, + { + "name": "default", + "default": null, + "type": "any" + }, + { + "name": "features", + "default": null, + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "[602]", + "element-type": "602", + "meta-type": "array" + }, + { + "name": "602", + "members": [ + { + "name": "case", + "type": "str" + }, + { + "name": "type", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[603]", + "element-type": "603", + "meta-type": "array" + }, + { + "name": "603", + "members": [ + { + "name": "type", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "604", + "members": [ + { + "name": "deny" + }, + { + "name": "allow" + } + ], + "meta-type": "enum", + "values": [ + "deny", + "allow" + ] + }, + { + "name": "[605]", + "element-type": "605", + "meta-type": "array" + }, + { + "name": "605", + "members": [ + { + "name": "match", + "type": "str" + }, + { + "name": "policy", + "type": "604" + }, + { + "name": "format", + "default": null, + "type": "686" + } + ], + "meta-type": "object" + }, + { + "name": "606", + "members": [ + { + "name": "all" + }, + { + "name": "rx" + }, + { + "name": "tx" + } + ], + "meta-type": "enum", + "values": [ + "all", + "rx", + "tx" + ] + }, + { + "name": "607", + "members": [ + { + "name": "before" + }, + { + "name": "behind" + } + ], + "meta-type": "enum", + "values": [ + "before", + "behind" + ] + }, + { + "name": "608", + "members": [ + { + "name": "ctrl-ctrl" + }, + { + "name": "alt-alt" + }, + { + "name": "shift-shift" + }, + { + "name": "meta-meta" + }, + { + "name": "scrolllock" + }, + { + "name": "ctrl-scrolllock" + } + ], + "meta-type": "enum", + "values": [ + "ctrl-ctrl", + "alt-alt", + "shift-shift", + "meta-meta", + "scrolllock", + "ctrl-scrolllock" + ] + }, + { + "name": "609", + "members": [ + { + "name": "raw" + }, + { + "name": "base64" + } + ], + "meta-type": "enum", + "values": [ + "raw", + "base64" + ] + }, + { + "name": "610", + "members": [ + { + "name": "iops-total", + "default": null, + "type": "int" + }, + { + "name": "iops-total-max", + "default": null, + "type": "int" + }, + { + "name": "iops-total-max-length", + "default": null, + "type": "int" + }, + { + "name": "iops-read", + "default": null, + "type": "int" + }, + { + "name": "iops-read-max", + "default": null, + "type": "int" + }, + { + "name": "iops-read-max-length", + "default": null, + "type": "int" + }, + { + "name": "iops-write", + "default": null, + "type": "int" + }, + { + "name": "iops-write-max", + "default": null, + "type": "int" + }, + { + "name": "iops-write-max-length", + "default": null, + "type": "int" + }, + { + "name": "bps-total", + "default": null, + "type": "int" + }, + { + "name": "bps-total-max", + "default": null, + "type": "int" + }, + { + "name": "bps-total-max-length", + "default": null, + "type": "int" + }, + { + "name": "bps-read", + "default": null, + "type": "int" + }, + { + "name": "bps-read-max", + "default": null, + "type": "int" + }, + { + "name": "bps-read-max-length", + "default": null, + "type": "int" + }, + { + "name": "bps-write", + "default": null, + "type": "int" + }, + { + "name": "bps-write-max", + "default": null, + "type": "int" + }, + { + "name": "bps-write-max-length", + "default": null, + "type": "int" + }, + { + "name": "iops-size", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "611", + "members": [ + { + "name": "client" + }, + { + "name": "server" + } + ], + "meta-type": "enum", + "values": [ + "client", + "server" + ] + }, + { + "name": "612", + "members": [ + { + "name": "uninitialized" + }, + { + "name": "stopped" + }, + { + "name": "check-stop" + }, + { + "name": "operating" + }, + { + "name": "load" + } + ], + "meta-type": "enum", + "values": [ + "uninitialized", + "stopped", + "check-stop", + "operating", + "load" + ] + }, + { + "name": "613", + "members": [ + { + "name": "memory" + }, + { + "name": "first-level" + }, + { + "name": "second-level" + }, + { + "name": "third-level" + } + ], + "meta-type": "enum", + "values": [ + "memory", + "first-level", + "second-level", + "third-level" + ] + }, + { + "name": "614", + "members": [ + { + "name": "access-latency" + }, + { + "name": "read-latency" + }, + { + "name": "write-latency" + }, + { + "name": "access-bandwidth" + }, + { + "name": "read-bandwidth" + }, + { + "name": "write-bandwidth" + } + ], + "meta-type": "enum", + "values": [ + "access-latency", + "read-latency", + "write-latency", + "access-bandwidth", + "read-bandwidth", + "write-bandwidth" + ] + }, + { + "name": "615", + "members": [ + { + "name": "none" + }, + { + "name": "direct" + }, + { + "name": "complex" + } + ], + "meta-type": "enum", + "values": [ + "none", + "direct", + "complex" + ] + }, + { + "name": "616", + "members": [ + { + "name": "none" + }, + { + "name": "write-back" + }, + { + "name": "write-through" + } + ], + "meta-type": "enum", + "values": [ + "none", + "write-back", + "write-through" + ] + }, + { + "name": "617", + "members": [ + { + "name": "id", + "default": null, + "type": "str" + }, + { + "name": "addr", + "type": "int" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "slot", + "type": "int" + }, + { + "name": "node", + "type": "int" + }, + { + "name": "memdev", + "type": "str" + }, + { + "name": "hotplugged", + "type": "bool" + }, + { + "name": "hotpluggable", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "618", + "members": [ + { + "name": "id", + "default": null, + "type": "str" + }, + { + "name": "memaddr", + "type": "int" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "memdev", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "619", + "members": [ + { + "name": "id", + "default": null, + "type": "str" + }, + { + "name": "memaddr", + "type": "int" + }, + { + "name": "requested-size", + "type": "int" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "max-size", + "type": "int" + }, + { + "name": "block-size", + "type": "int" + }, + { + "name": "node", + "type": "int" + }, + { + "name": "memdev", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "620", + "members": [ + { + "name": "id", + "default": null, + "type": "str" + }, + { + "name": "memaddr", + "type": "int" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "node", + "type": "int" + }, + { + "name": "memdev", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "621", + "members": [ + { + "name": "string" + }, + { + "name": "boolean" + }, + { + "name": "number" + }, + { + "name": "size" + } + ], + "meta-type": "enum", + "values": [ + "string", + "boolean", + "number", + "size" + ] + }, + { + "name": "622", + "members": [ + { + "name": "desc", + "default": null, + "type": "str" + }, + { + "name": "class", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "623", + "members": [ + { + "name": "device", + "type": "int" + }, + { + "name": "vendor", + "type": "int" + }, + { + "name": "subsystem", + "default": null, + "type": "int" + }, + { + "name": "subsystem-vendor", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "624", + "members": [ + { + "name": "bus", + "type": "687" + }, + { + "name": "devices", + "default": null, + "type": "[495]" + } + ], + "meta-type": "object" + }, + { + "name": "[625]", + "element-type": "625", + "meta-type": "array" + }, + { + "name": "625", + "members": [ + { + "name": "bar", + "type": "int" + }, + { + "name": "type", + "type": "str" + }, + { + "name": "address", + "type": "int" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "prefetch", + "default": null, + "type": "bool" + }, + { + "name": "mem_type_64", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "626", + "members": [ + { + "type": "int" + }, + { + "type": "bool" + }, + { + "type": "[int]" + } + ], + "meta-type": "alternate" + }, + { + "name": "627", + "members": [ + { + "name": "cumulative" + }, + { + "name": "instant" + }, + { + "name": "peak" + }, + { + "name": "linear-histogram" + }, + { + "name": "log2-histogram" + } + ], + "meta-type": "enum", + "values": [ + "cumulative", + "instant", + "peak", + "linear-histogram", + "log2-histogram" + ] + }, + { + "name": "628", + "members": [ + { + "name": "bytes" + }, + { + "name": "seconds" + }, + { + "name": "cycles" + }, + { + "name": "boolean" + } + ], + "meta-type": "enum", + "values": [ + "bytes", + "seconds", + "cycles", + "boolean" + ] + }, + { + "name": "629", + "members": [ + { + "name": "protocols", + "type": "[str]" + }, + { + "name": "unknown-protocols", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "630", + "members": [ + { + "name": "unknown" + }, + { + "name": "disabled-wait" + }, + { + "name": "extint-loop" + }, + { + "name": "pgmint-loop" + }, + { + "name": "opint-loop" + } + ], + "meta-type": "enum", + "values": [ + "unknown", + "disabled-wait", + "extint-loop", + "pgmint-loop", + "opint-loop" + ] + }, + { + "name": "631", + "members": [ + { + "name": "qcow2" + }, + { + "name": "vmdk" + }, + { + "name": "luks" + }, + { + "name": "rbd" + } + ], + "meta-type": "enum", + "values": [ + "qcow2", + "vmdk", + "luks", + "rbd" + ] + }, + { + "name": "632", + "members": [ + { + "name": "data", + "type": "688" + } + ], + "meta-type": "object" + }, + { + "name": "633", + "members": [ + { + "name": "data", + "type": "689" + } + ], + "meta-type": "object" + }, + { + "name": "634", + "members": [ + { + "name": "data", + "type": "690" + } + ], + "meta-type": "object" + }, + { + "name": "635", + "members": [ + { + "name": "data", + "type": "691" + } + ], + "meta-type": "object" + }, + { + "name": "636", + "members": [ + { + "name": "l1_update" + }, + { + "name": "l1_grow_alloc_table" + }, + { + "name": "l1_grow_write_table" + }, + { + "name": "l1_grow_activate_table" + }, + { + "name": "l2_load" + }, + { + "name": "l2_update" + }, + { + "name": "l2_update_compressed" + }, + { + "name": "l2_alloc_cow_read" + }, + { + "name": "l2_alloc_write" + }, + { + "name": "read_aio" + }, + { + "name": "read_backing_aio" + }, + { + "name": "read_compressed" + }, + { + "name": "write_aio" + }, + { + "name": "write_compressed" + }, + { + "name": "vmstate_load" + }, + { + "name": "vmstate_save" + }, + { + "name": "cow_read" + }, + { + "name": "cow_write" + }, + { + "name": "reftable_load" + }, + { + "name": "reftable_grow" + }, + { + "name": "reftable_update" + }, + { + "name": "refblock_load" + }, + { + "name": "refblock_update" + }, + { + "name": "refblock_update_part" + }, + { + "name": "refblock_alloc" + }, + { + "name": "refblock_alloc_hookup" + }, + { + "name": "refblock_alloc_write" + }, + { + "name": "refblock_alloc_write_blocks" + }, + { + "name": "refblock_alloc_write_table" + }, + { + "name": "refblock_alloc_switch_table" + }, + { + "name": "cluster_alloc" + }, + { + "name": "cluster_alloc_bytes" + }, + { + "name": "cluster_free" + }, + { + "name": "flush_to_os" + }, + { + "name": "flush_to_disk" + }, + { + "name": "pwritev_rmw_head" + }, + { + "name": "pwritev_rmw_after_head" + }, + { + "name": "pwritev_rmw_tail" + }, + { + "name": "pwritev_rmw_after_tail" + }, + { + "name": "pwritev" + }, + { + "name": "pwritev_zero" + }, + { + "name": "pwritev_done" + }, + { + "name": "empty_image_prepare" + }, + { + "name": "l1_shrink_write_table" + }, + { + "name": "l1_shrink_free_l2_clusters" + }, + { + "name": "cor_write" + }, + { + "name": "cluster_alloc_space" + }, + { + "name": "none" + } + ], + "meta-type": "enum", + "values": [ + "l1_update", + "l1_grow_alloc_table", + "l1_grow_write_table", + "l1_grow_activate_table", + "l2_load", + "l2_update", + "l2_update_compressed", + "l2_alloc_cow_read", + "l2_alloc_write", + "read_aio", + "read_backing_aio", + "read_compressed", + "write_aio", + "write_compressed", + "vmstate_load", + "vmstate_save", + "cow_read", + "cow_write", + "reftable_load", + "reftable_grow", + "reftable_update", + "refblock_load", + "refblock_update", + "refblock_update_part", + "refblock_alloc", + "refblock_alloc_hookup", + "refblock_alloc_write", + "refblock_alloc_write_blocks", + "refblock_alloc_write_table", + "refblock_alloc_switch_table", + "cluster_alloc", + "cluster_alloc_bytes", + "cluster_free", + "flush_to_os", + "flush_to_disk", + "pwritev_rmw_head", + "pwritev_rmw_after_head", + "pwritev_rmw_tail", + "pwritev_rmw_after_tail", + "pwritev", + "pwritev_zero", + "pwritev_done", + "empty_image_prepare", + "l1_shrink_write_table", + "l1_shrink_free_l2_clusters", + "cor_write", + "cluster_alloc_space", + "none" + ] + }, + { + "name": "637", + "members": [ + { + "name": "read" + }, + { + "name": "write" + }, + { + "name": "write-zeroes" + }, + { + "name": "discard" + }, + { + "name": "flush" + }, + { + "name": "block-status" + } + ], + "meta-type": "enum", + "values": [ + "read", + "write", + "write-zeroes", + "discard", + "flush", + "block-status" + ] + }, + { + "name": "638", + "members": [ + { + "name": "inet" + } + ], + "meta-type": "enum", + "values": [ + "inet" + ] + }, + { + "name": "639", + "members": [ + { + "name": "template", + "default": null, + "type": "640" + }, + { + "name": "main-header", + "default": null, + "type": "bool" + }, + { + "name": "active-l1", + "default": null, + "type": "bool" + }, + { + "name": "active-l2", + "default": null, + "type": "bool" + }, + { + "name": "refcount-table", + "default": null, + "type": "bool" + }, + { + "name": "refcount-block", + "default": null, + "type": "bool" + }, + { + "name": "snapshot-table", + "default": null, + "type": "bool" + }, + { + "name": "inactive-l1", + "default": null, + "type": "bool" + }, + { + "name": "inactive-l2", + "default": null, + "type": "bool" + }, + { + "name": "bitmap-directory", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "640", + "members": [ + { + "name": "none" + }, + { + "name": "constant" + }, + { + "name": "cached" + }, + { + "name": "all" + } + ], + "meta-type": "enum", + "values": [ + "none", + "constant", + "cached", + "all" + ] + }, + { + "name": "641", + "members": [ + { + "name": "aes" + }, + { + "name": "luks" + } + ], + "meta-type": "enum", + "values": [ + "aes", + "luks" + ] + }, + { + "name": "642", + "members": [ + { + "name": "key-secret", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "643", + "members": [ + { + "name": "key-secret", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "644", + "members": [ + { + "name": "aes" + } + ], + "meta-type": "enum", + "values": [ + "aes" + ] + }, + { + "name": "645", + "members": [ + { + "name": "luks" + }, + { + "name": "luks2" + } + ], + "meta-type": "enum", + "values": [ + "luks", + "luks2" + ] + }, + { + "name": "646", + "members": [ + { + "name": "key-secret", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "647", + "members": [ + { + "name": "key-secret", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "648", + "members": [ + { + "name": "none" + }, + { + "name": "hash" + }, + { + "name": "known_hosts" + } + ], + "meta-type": "enum", + "values": [ + "none", + "hash", + "known_hosts" + ] + }, + { + "name": "649", + "members": [ + { + "name": "type", + "type": "692" + }, + { + "name": "hash", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "650", + "members": [ + { + "name": "off" + }, + { + "name": "metadata" + }, + { + "name": "falloc" + }, + { + "name": "full" + } + ], + "meta-type": "enum", + "values": [ + "off", + "metadata", + "falloc", + "full" + ] + }, + { + "name": "651", + "members": [ + { + "name": "aes-128" + }, + { + "name": "aes-192" + }, + { + "name": "aes-256" + }, + { + "name": "des" + }, + { + "name": "3des" + }, + { + "name": "cast5-128" + }, + { + "name": "serpent-128" + }, + { + "name": "serpent-192" + }, + { + "name": "serpent-256" + }, + { + "name": "twofish-128" + }, + { + "name": "twofish-192" + }, + { + "name": "twofish-256" + } + ], + "meta-type": "enum", + "values": [ + "aes-128", + "aes-192", + "aes-256", + "des", + "3des", + "cast5-128", + "serpent-128", + "serpent-192", + "serpent-256", + "twofish-128", + "twofish-192", + "twofish-256" + ] + }, + { + "name": "652", + "members": [ + { + "name": "ecb" + }, + { + "name": "cbc" + }, + { + "name": "xts" + }, + { + "name": "ctr" + } + ], + "meta-type": "enum", + "values": [ + "ecb", + "cbc", + "xts", + "ctr" + ] + }, + { + "name": "653", + "members": [ + { + "name": "plain" + }, + { + "name": "plain64" + }, + { + "name": "essiv" + } + ], + "meta-type": "enum", + "values": [ + "plain", + "plain64", + "essiv" + ] + }, + { + "name": "654", + "members": [ + { + "name": "md5" + }, + { + "name": "sha1" + }, + { + "name": "sha224" + }, + { + "name": "sha256" + }, + { + "name": "sha384" + }, + { + "name": "sha512" + }, + { + "name": "ripemd160" + } + ], + "meta-type": "enum", + "values": [ + "md5", + "sha1", + "sha224", + "sha256", + "sha384", + "sha512", + "ripemd160" + ] + }, + { + "name": "655", + "tag": "format", + "variants": [ + { + "case": "qcow", + "type": "642" + }, + { + "case": "luks", + "type": "694" + } + ], + "members": [ + { + "name": "format", + "type": "693" + } + ], + "meta-type": "object" + }, + { + "name": "656", + "members": [ + { + "name": "v2" + }, + { + "name": "v3" + } + ], + "meta-type": "enum", + "values": [ + "v2", + "v3" + ] + }, + { + "name": "657", + "members": [ + { + "name": "zlib" + }, + { + "name": "zstd" + } + ], + "meta-type": "enum", + "values": [ + "zlib", + "zstd" + ] + }, + { + "name": "658", + "tag": "format", + "variants": [ + { + "case": "luks", + "type": "695" + }, + { + "case": "luks2", + "type": "696" + } + ], + "members": [ + { + "name": "format", + "type": "645" + } + ], + "meta-type": "object" + }, + { + "name": "659", + "members": [ + { + "name": "dynamic" + }, + { + "name": "fixed" + } + ], + "meta-type": "enum", + "values": [ + "dynamic", + "fixed" + ] + }, + { + "name": "660", + "members": [ + { + "name": "monolithicSparse" + }, + { + "name": "monolithicFlat" + }, + { + "name": "twoGbMaxExtentSparse" + }, + { + "name": "twoGbMaxExtentFlat" + }, + { + "name": "streamOptimized" + } + ], + "meta-type": "enum", + "values": [ + "monolithicSparse", + "monolithicFlat", + "twoGbMaxExtentSparse", + "twoGbMaxExtentFlat", + "streamOptimized" + ] + }, + { + "name": "661", + "members": [ + { + "name": "ide" + }, + { + "name": "buslogic" + }, + { + "name": "lsilogic" + }, + { + "name": "legacyESX" + } + ], + "meta-type": "enum", + "values": [ + "ide", + "buslogic", + "lsilogic", + "legacyESX" + ] + }, + { + "name": "662", + "members": [ + { + "name": "dynamic" + }, + { + "name": "fixed" + } + ], + "meta-type": "enum", + "values": [ + "dynamic", + "fixed" + ] + }, + { + "name": "663", + "members": [ + { + "name": "active" + }, + { + "name": "inactive" + } + ], + "meta-type": "enum", + "values": [ + "active", + "inactive" + ] + }, + { + "name": "664", + "tag": "format", + "variants": [ + { + "case": "luks", + "type": "697" + }, + { + "case": "qcow", + "type": "0" + } + ], + "members": [ + { + "name": "format", + "type": "693" + } + ], + "meta-type": "object" + }, + { + "name": "665", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "in", + "default": null, + "type": "str" + }, + { + "name": "out", + "type": "str" + }, + { + "name": "append", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "666", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "device", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "667", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "addr", + "type": "336" + }, + { + "name": "tls-creds", + "default": null, + "type": "str" + }, + { + "name": "tls-authz", + "default": null, + "type": "str" + }, + { + "name": "server", + "default": null, + "type": "bool" + }, + { + "name": "wait", + "default": null, + "type": "bool" + }, + { + "name": "nodelay", + "default": null, + "type": "bool" + }, + { + "name": "telnet", + "default": null, + "type": "bool" + }, + { + "name": "tn3270", + "default": null, + "type": "bool" + }, + { + "name": "websocket", + "default": null, + "type": "bool" + }, + { + "name": "reconnect", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "668", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "remote", + "type": "336" + }, + { + "name": "local", + "default": null, + "type": "336" + } + ], + "meta-type": "object" + }, + { + "name": "669", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "670", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "chardev", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "671", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "signal", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "672", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "type", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "673", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "fqdn", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "674", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "mouse", + "default": null, + "type": "bool" + }, + { + "name": "clipboard", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "675", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "676", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "width", + "default": null, + "type": "int" + }, + { + "name": "height", + "default": null, + "type": "int" + }, + { + "name": "cols", + "default": null, + "type": "int" + }, + { + "name": "rows", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "677", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "size", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "678", + "members": [ + { + "name": "path", + "default": null, + "type": "str" + }, + { + "name": "cancel-path", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "679", + "members": [ + { + "name": "chardev", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "680", + "members": [ + { + "name": "unmapped" + }, + { + "name": "shift" + }, + { + "name": "shift_r" + }, + { + "name": "alt" + }, + { + "name": "alt_r" + }, + { + "name": "ctrl" + }, + { + "name": "ctrl_r" + }, + { + "name": "menu" + }, + { + "name": "esc" + }, + { + "name": "1" + }, + { + "name": "2" + }, + { + "name": "3" + }, + { + "name": "4" + }, + { + "name": "5" + }, + { + "name": "6" + }, + { + "name": "7" + }, + { + "name": "8" + }, + { + "name": "9" + }, + { + "name": "0" + }, + { + "name": "minus" + }, + { + "name": "equal" + }, + { + "name": "backspace" + }, + { + "name": "tab" + }, + { + "name": "q" + }, + { + "name": "w" + }, + { + "name": "e" + }, + { + "name": "r" + }, + { + "name": "t" + }, + { + "name": "y" + }, + { + "name": "u" + }, + { + "name": "i" + }, + { + "name": "o" + }, + { + "name": "p" + }, + { + "name": "bracket_left" + }, + { + "name": "bracket_right" + }, + { + "name": "ret" + }, + { + "name": "a" + }, + { + "name": "s" + }, + { + "name": "d" + }, + { + "name": "f" + }, + { + "name": "g" + }, + { + "name": "h" + }, + { + "name": "j" + }, + { + "name": "k" + }, + { + "name": "l" + }, + { + "name": "semicolon" + }, + { + "name": "apostrophe" + }, + { + "name": "grave_accent" + }, + { + "name": "backslash" + }, + { + "name": "z" + }, + { + "name": "x" + }, + { + "name": "c" + }, + { + "name": "v" + }, + { + "name": "b" + }, + { + "name": "n" + }, + { + "name": "m" + }, + { + "name": "comma" + }, + { + "name": "dot" + }, + { + "name": "slash" + }, + { + "name": "asterisk" + }, + { + "name": "spc" + }, + { + "name": "caps_lock" + }, + { + "name": "f1" + }, + { + "name": "f2" + }, + { + "name": "f3" + }, + { + "name": "f4" + }, + { + "name": "f5" + }, + { + "name": "f6" + }, + { + "name": "f7" + }, + { + "name": "f8" + }, + { + "name": "f9" + }, + { + "name": "f10" + }, + { + "name": "num_lock" + }, + { + "name": "scroll_lock" + }, + { + "name": "kp_divide" + }, + { + "name": "kp_multiply" + }, + { + "name": "kp_subtract" + }, + { + "name": "kp_add" + }, + { + "name": "kp_enter" + }, + { + "name": "kp_decimal" + }, + { + "name": "sysrq" + }, + { + "name": "kp_0" + }, + { + "name": "kp_1" + }, + { + "name": "kp_2" + }, + { + "name": "kp_3" + }, + { + "name": "kp_4" + }, + { + "name": "kp_5" + }, + { + "name": "kp_6" + }, + { + "name": "kp_7" + }, + { + "name": "kp_8" + }, + { + "name": "kp_9" + }, + { + "name": "less" + }, + { + "name": "f11" + }, + { + "name": "f12" + }, + { + "name": "print" + }, + { + "name": "home" + }, + { + "name": "pgup" + }, + { + "name": "pgdn" + }, + { + "name": "end" + }, + { + "name": "left" + }, + { + "name": "up" + }, + { + "name": "down" + }, + { + "name": "right" + }, + { + "name": "insert" + }, + { + "name": "delete" + }, + { + "name": "stop" + }, + { + "name": "again" + }, + { + "name": "props" + }, + { + "name": "undo" + }, + { + "name": "front" + }, + { + "name": "copy" + }, + { + "name": "open" + }, + { + "name": "paste" + }, + { + "name": "find" + }, + { + "name": "cut" + }, + { + "name": "lf" + }, + { + "name": "help" + }, + { + "name": "meta_l" + }, + { + "name": "meta_r" + }, + { + "name": "compose" + }, + { + "name": "pause" + }, + { + "name": "ro" + }, + { + "name": "hiragana" + }, + { + "name": "henkan" + }, + { + "name": "yen" + }, + { + "name": "muhenkan" + }, + { + "name": "katakanahiragana" + }, + { + "name": "kp_comma" + }, + { + "name": "kp_equals" + }, + { + "name": "power" + }, + { + "name": "sleep" + }, + { + "name": "wake" + }, + { + "name": "audionext" + }, + { + "name": "audioprev" + }, + { + "name": "audiostop" + }, + { + "name": "audioplay" + }, + { + "name": "audiomute" + }, + { + "name": "volumeup" + }, + { + "name": "volumedown" + }, + { + "name": "mediaselect" + }, + { + "name": "mail" + }, + { + "name": "calculator" + }, + { + "name": "computer" + }, + { + "name": "ac_home" + }, + { + "name": "ac_back" + }, + { + "name": "ac_forward" + }, + { + "name": "ac_refresh" + }, + { + "name": "ac_bookmarks" + }, + { + "name": "lang1" + }, + { + "name": "lang2" + } + ], + "meta-type": "enum", + "values": [ + "unmapped", + "shift", + "shift_r", + "alt", + "alt_r", + "ctrl", + "ctrl_r", + "menu", + "esc", + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "0", + "minus", + "equal", + "backspace", + "tab", + "q", + "w", + "e", + "r", + "t", + "y", + "u", + "i", + "o", + "p", + "bracket_left", + "bracket_right", + "ret", + "a", + "s", + "d", + "f", + "g", + "h", + "j", + "k", + "l", + "semicolon", + "apostrophe", + "grave_accent", + "backslash", + "z", + "x", + "c", + "v", + "b", + "n", + "m", + "comma", + "dot", + "slash", + "asterisk", + "spc", + "caps_lock", + "f1", + "f2", + "f3", + "f4", + "f5", + "f6", + "f7", + "f8", + "f9", + "f10", + "num_lock", + "scroll_lock", + "kp_divide", + "kp_multiply", + "kp_subtract", + "kp_add", + "kp_enter", + "kp_decimal", + "sysrq", + "kp_0", + "kp_1", + "kp_2", + "kp_3", + "kp_4", + "kp_5", + "kp_6", + "kp_7", + "kp_8", + "kp_9", + "less", + "f11", + "f12", + "print", + "home", + "pgup", + "pgdn", + "end", + "left", + "up", + "down", + "right", + "insert", + "delete", + "stop", + "again", + "props", + "undo", + "front", + "copy", + "open", + "paste", + "find", + "cut", + "lf", + "help", + "meta_l", + "meta_r", + "compose", + "pause", + "ro", + "hiragana", + "henkan", + "yen", + "muhenkan", + "katakanahiragana", + "kp_comma", + "kp_equals", + "power", + "sleep", + "wake", + "audionext", + "audioprev", + "audiostop", + "audioplay", + "audiomute", + "volumeup", + "volumedown", + "mediaselect", + "mail", + "calculator", + "computer", + "ac_home", + "ac_back", + "ac_forward", + "ac_refresh", + "ac_bookmarks", + "lang1", + "lang2" + ] + }, + { + "name": "681", + "members": [ + { + "name": "key", + "type": "388" + }, + { + "name": "down", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "682", + "members": [ + { + "name": "button", + "type": "698" + }, + { + "name": "down", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "683", + "members": [ + { + "name": "axis", + "type": "699" + }, + { + "name": "value", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "684", + "members": [ + { + "name": "persistent", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "685", + "members": [ + ], + "meta-type": "object" + }, + { + "name": "686", + "members": [ + { + "name": "exact" + }, + { + "name": "glob" + } + ], + "meta-type": "enum", + "values": [ + "exact", + "glob" + ] + }, + { + "name": "687", + "members": [ + { + "name": "number", + "type": "int" + }, + { + "name": "secondary", + "type": "int" + }, + { + "name": "subordinate", + "type": "int" + }, + { + "name": "io_range", + "type": "700" + }, + { + "name": "memory_range", + "type": "700" + }, + { + "name": "prefetchable_range", + "type": "700" + } + ], + "meta-type": "object" + }, + { + "name": "688", + "members": [ + { + "name": "compat", + "type": "str" + }, + { + "name": "data-file", + "default": null, + "type": "str" + }, + { + "name": "data-file-raw", + "default": null, + "type": "bool" + }, + { + "name": "extended-l2", + "default": null, + "type": "bool" + }, + { + "name": "lazy-refcounts", + "default": null, + "type": "bool" + }, + { + "name": "corrupt", + "default": null, + "type": "bool" + }, + { + "name": "refcount-bits", + "type": "int" + }, + { + "name": "encrypt", + "default": null, + "type": "701" + }, + { + "name": "bitmaps", + "default": null, + "type": "[702]" + }, + { + "name": "compression-type", + "type": "657" + } + ], + "meta-type": "object" + }, + { + "name": "689", + "members": [ + { + "name": "create-type", + "type": "str" + }, + { + "name": "cid", + "type": "int" + }, + { + "name": "parent-cid", + "type": "int" + }, + { + "name": "extents", + "type": "[284]" + } + ], + "meta-type": "object" + }, + { + "name": "690", + "members": [ + { + "name": "cipher-alg", + "type": "651" + }, + { + "name": "cipher-mode", + "type": "652" + }, + { + "name": "ivgen-alg", + "type": "653" + }, + { + "name": "ivgen-hash-alg", + "default": null, + "type": "654" + }, + { + "name": "hash-alg", + "type": "654" + }, + { + "name": "payload-offset", + "type": "int" + }, + { + "name": "master-key-iters", + "type": "int" + }, + { + "name": "uuid", + "type": "str" + }, + { + "name": "slots", + "type": "[703]" + } + ], + "meta-type": "object" + }, + { + "name": "691", + "members": [ + { + "name": "encryption-format", + "default": null, + "type": "645" + } + ], + "meta-type": "object" + }, + { + "name": "692", + "members": [ + { + "name": "md5" + }, + { + "name": "sha1" + }, + { + "name": "sha256" + } + ], + "meta-type": "enum", + "values": [ + "md5", + "sha1", + "sha256" + ] + }, + { + "name": "693", + "members": [ + { + "name": "qcow" + }, + { + "name": "luks" + } + ], + "meta-type": "enum", + "values": [ + "qcow", + "luks" + ] + }, + { + "name": "694", + "members": [ + { + "name": "key-secret", + "default": null, + "type": "str" + }, + { + "name": "cipher-alg", + "default": null, + "type": "651" + }, + { + "name": "cipher-mode", + "default": null, + "type": "652" + }, + { + "name": "ivgen-alg", + "default": null, + "type": "653" + }, + { + "name": "ivgen-hash-alg", + "default": null, + "type": "654" + }, + { + "name": "hash-alg", + "default": null, + "type": "654" + }, + { + "name": "iter-time", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "695", + "members": [ + { + "name": "key-secret", + "type": "str" + }, + { + "name": "cipher-alg", + "default": null, + "type": "651" + } + ], + "meta-type": "object" + }, + { + "name": "696", + "members": [ + { + "name": "key-secret", + "type": "str" + }, + { + "name": "cipher-alg", + "default": null, + "type": "651" + } + ], + "meta-type": "object" + }, + { + "name": "697", + "members": [ + { + "name": "state", + "type": "663" + }, + { + "name": "new-secret", + "default": null, + "type": "str" + }, + { + "name": "old-secret", + "default": null, + "type": "str" + }, + { + "name": "keyslot", + "default": null, + "type": "int" + }, + { + "name": "iter-time", + "default": null, + "type": "int" + }, + { + "name": "secret", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "698", + "members": [ + { + "name": "left" + }, + { + "name": "middle" + }, + { + "name": "right" + }, + { + "name": "wheel-up" + }, + { + "name": "wheel-down" + }, + { + "name": "side" + }, + { + "name": "extra" + }, + { + "name": "wheel-left" + }, + { + "name": "wheel-right" + } + ], + "meta-type": "enum", + "values": [ + "left", + "middle", + "right", + "wheel-up", + "wheel-down", + "side", + "extra", + "wheel-left", + "wheel-right" + ] + }, + { + "name": "699", + "members": [ + { + "name": "x" + }, + { + "name": "y" + } + ], + "meta-type": "enum", + "values": [ + "x", + "y" + ] + }, + { + "name": "700", + "members": [ + { + "name": "base", + "type": "int" + }, + { + "name": "limit", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "701", + "tag": "format", + "variants": [ + { + "case": "luks", + "type": "690" + }, + { + "case": "aes", + "type": "0" + } + ], + "members": [ + { + "name": "format", + "type": "641" + } + ], + "meta-type": "object" + }, + { + "name": "[702]", + "element-type": "702", + "meta-type": "array" + }, + { + "name": "702", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "granularity", + "type": "int" + }, + { + "name": "flags", + "type": "[704]" + } + ], + "meta-type": "object" + }, + { + "name": "[284]", + "element-type": "284", + "meta-type": "array" + }, + { + "name": "[703]", + "element-type": "703", + "meta-type": "array" + }, + { + "name": "703", + "members": [ + { + "name": "active", + "type": "bool" + }, + { + "name": "iters", + "default": null, + "type": "int" + }, + { + "name": "stripes", + "default": null, + "type": "int" + }, + { + "name": "key-offset", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[704]", + "element-type": "704", + "meta-type": "array" + }, + { + "name": "704", + "members": [ + { + "name": "in-use" + }, + { + "name": "auto" + } + ], + "meta-type": "enum", + "values": [ + "in-use", + "auto" + ] + } + ], + "id": "libvirt-4" +} + +{ + "execute": "query-commands", + "id": "libvirt-5" +} + +{ + "return": [ + { + "name": "device_add" + }, + { + "name": "x-query-virtio-queue-element" + }, + { + "name": "x-query-virtio-vhost-queue-status" + }, + { + "name": "x-query-virtio-queue-status" + }, + { + "name": "x-query-virtio-status" + }, + { + "name": "x-query-virtio" + }, + { + "name": "query-stats-schemas" + }, + { + "name": "query-stats" + }, + { + "name": "query-pci" + }, + { + "name": "query-acpi-ospm-status" + }, + { + "name": "query-command-line-options" + }, + { + "name": "query-fdsets" + }, + { + "name": "remove-fd" + }, + { + "name": "add-fd" + }, + { + "name": "closefd" + }, + { + "name": "getfd" + }, + { + "name": "human-monitor-command" + }, + { + "name": "x-exit-preconfig" + }, + { + "name": "cont" + }, + { + "name": "stop" + }, + { + "name": "query-iothreads" + }, + { + "name": "query-name" + }, + { + "name": "add_client" + }, + { + "name": "query-yank" + }, + { + "name": "yank" + }, + { + "name": "replay-seek" + }, + { + "name": "replay-delete-break" + }, + { + "name": "replay-break" + }, + { + "name": "query-replay" + }, + { + "name": "query-cpu-definitions" + }, + { + "name": "dumpdtb" + }, + { + "name": "x-query-usb" + }, + { + "name": "x-query-roms" + }, + { + "name": "x-query-rdma" + }, + { + "name": "x-query-ramblock" + }, + { + "name": "x-query-profile" + }, + { + "name": "x-query-opcount" + }, + { + "name": "x-query-numa" + }, + { + "name": "x-query-jit" + }, + { + "name": "x-query-irq" + }, + { + "name": "query-memory-devices" + }, + { + "name": "query-memory-size-summary" + }, + { + "name": "query-balloon" + }, + { + "name": "balloon" + }, + { + "name": "set-numa-node" + }, + { + "name": "query-hotpluggable-cpus" + }, + { + "name": "query-memdev" + }, + { + "name": "pmemsave" + }, + { + "name": "memsave" + }, + { + "name": "query-kvm" + }, + { + "name": "inject-nmi" + }, + { + "name": "system_wakeup" + }, + { + "name": "system_powerdown" + }, + { + "name": "system_reset" + }, + { + "name": "query-vm-generation-id" + }, + { + "name": "query-uuid" + }, + { + "name": "query-target" + }, + { + "name": "query-current-machine" + }, + { + "name": "query-machines" + }, + { + "name": "query-cpus-fast" + }, + { + "name": "device_del" + }, + { + "name": "device-list-properties" + }, + { + "name": "object-del" + }, + { + "name": "object-add" + }, + { + "name": "qom-list-properties" + }, + { + "name": "qom-list-types" + }, + { + "name": "qom-set" + }, + { + "name": "qom-get" + }, + { + "name": "qom-list" + }, + { + "name": "query-qmp-schema" + }, + { + "name": "quit" + }, + { + "name": "query-commands" + }, + { + "name": "query-version" + }, + { + "name": "qmp_capabilities" + }, + { + "name": "trace-event-set-state" + }, + { + "name": "trace-event-get-state" + }, + { + "name": "transaction" + }, + { + "name": "snapshot-delete" + }, + { + "name": "snapshot-load" + }, + { + "name": "snapshot-save" + }, + { + "name": "query-vcpu-dirty-limit" + }, + { + "name": "cancel-vcpu-dirty-limit" + }, + { + "name": "set-vcpu-dirty-limit" + }, + { + "name": "query-dirty-rate" + }, + { + "name": "calc-dirty-rate" + }, + { + "name": "migrate-pause" + }, + { + "name": "migrate-recover" + }, + { + "name": "query-colo-status" + }, + { + "name": "xen-colo-do-checkpoint" + }, + { + "name": "query-xen-replication-status" + }, + { + "name": "xen-set-replication" + }, + { + "name": "xen-load-devices-state" + }, + { + "name": "xen-set-global-dirty-log" + }, + { + "name": "xen-save-devices-state" + }, + { + "name": "migrate-incoming" + }, + { + "name": "migrate" + }, + { + "name": "migrate-continue" + }, + { + "name": "migrate_cancel" + }, + { + "name": "x-colo-lost-heartbeat" + }, + { + "name": "migrate-start-postcopy" + }, + { + "name": "client_migrate_info" + }, + { + "name": "query-migrate-parameters" + }, + { + "name": "migrate-set-parameters" + }, + { + "name": "query-migrate-capabilities" + }, + { + "name": "migrate-set-capabilities" + }, + { + "name": "query-migrate" + }, + { + "name": "display-update" + }, + { + "name": "display-reload" + }, + { + "name": "query-display-options" + }, + { + "name": "input-send-event" + }, + { + "name": "send-key" + }, + { + "name": "query-mice" + }, + { + "name": "change-vnc-password" + }, + { + "name": "query-vnc-servers" + }, + { + "name": "query-vnc" + }, + { + "name": "query-spice" + }, + { + "name": "screendump" + }, + { + "name": "expire_password" + }, + { + "name": "set_password" + }, + { + "name": "query-tpm" + }, + { + "name": "query-tpm-types" + }, + { + "name": "query-tpm-models" + }, + { + "name": "query-rocker-of-dpa-groups" + }, + { + "name": "query-rocker-of-dpa-flows" + }, + { + "name": "query-rocker-ports" + }, + { + "name": "query-rocker" + }, + { + "name": "announce-self" + }, + { + "name": "query-rx-filter" + }, + { + "name": "netdev_del" + }, + { + "name": "netdev_add" + }, + { + "name": "set_link" + }, + { + "name": "query-dump-guest-memory-capability" + }, + { + "name": "query-dump" + }, + { + "name": "dump-guest-memory" + }, + { + "name": "chardev-send-break" + }, + { + "name": "chardev-remove" + }, + { + "name": "chardev-change" + }, + { + "name": "chardev-add" + }, + { + "name": "ringbuf-read" + }, + { + "name": "ringbuf-write" + }, + { + "name": "query-chardev-backends" + }, + { + "name": "query-chardev" + }, + { + "name": "query-block-exports" + }, + { + "name": "block-export-del" + }, + { + "name": "block-export-add" + }, + { + "name": "nbd-server-stop" + }, + { + "name": "nbd-server-remove" + }, + { + "name": "nbd-server-add" + }, + { + "name": "nbd-server-start" + }, + { + "name": "query-jobs" + }, + { + "name": "job-finalize" + }, + { + "name": "job-dismiss" + }, + { + "name": "job-complete" + }, + { + "name": "job-cancel" + }, + { + "name": "job-resume" + }, + { + "name": "job-pause" + }, + { + "name": "blockdev-snapshot-delete-internal-sync" + }, + { + "name": "blockdev-snapshot-internal-sync" + }, + { + "name": "x-blockdev-set-iothread" + }, + { + "name": "x-blockdev-change" + }, + { + "name": "block-set-write-threshold" + }, + { + "name": "x-blockdev-amend" + }, + { + "name": "blockdev-create" + }, + { + "name": "blockdev-del" + }, + { + "name": "blockdev-reopen" + }, + { + "name": "blockdev-add" + }, + { + "name": "block-job-finalize" + }, + { + "name": "block-job-dismiss" + }, + { + "name": "block-job-complete" + }, + { + "name": "block-job-resume" + }, + { + "name": "block-job-pause" + }, + { + "name": "block-job-cancel" + }, + { + "name": "block-job-set-speed" + }, + { + "name": "block-stream" + }, + { + "name": "blockdev-mirror" + }, + { + "name": "x-debug-block-dirty-bitmap-sha256" + }, + { + "name": "block-dirty-bitmap-merge" + }, + { + "name": "block-dirty-bitmap-disable" + }, + { + "name": "block-dirty-bitmap-enable" + }, + { + "name": "block-dirty-bitmap-clear" + }, + { + "name": "block-dirty-bitmap-remove" + }, + { + "name": "block-dirty-bitmap-add" + }, + { + "name": "drive-mirror" + }, + { + "name": "x-debug-query-block-graph" + }, + { + "name": "query-named-block-nodes" + }, + { + "name": "blockdev-backup" + }, + { + "name": "drive-backup" + }, + { + "name": "block-commit" + }, + { + "name": "change-backing-file" + }, + { + "name": "blockdev-snapshot" + }, + { + "name": "blockdev-snapshot-sync" + }, + { + "name": "block_resize" + }, + { + "name": "query-block-jobs" + }, + { + "name": "query-blockstats" + }, + { + "name": "query-block" + }, + { + "name": "block-latency-histogram-set" + }, + { + "name": "block_set_io_throttle" + }, + { + "name": "blockdev-change-medium" + }, + { + "name": "blockdev-insert-medium" + }, + { + "name": "blockdev-remove-medium" + }, + { + "name": "blockdev-close-tray" + }, + { + "name": "blockdev-open-tray" + }, + { + "name": "eject" + }, + { + "name": "query-pr-managers" + }, + { + "name": "set-action" + }, + { + "name": "watchdog-set-action" + }, + { + "name": "query-status" + } + ], + "id": "libvirt-5" +} + +{ + "execute": "query-kvm", + "id": "libvirt-6" +} + +{ + "return": { + "enabled": false, + "present": false + }, + "id": "libvirt-6" +} + +{ + "execute": "qom-list-types", + "id": "libvirt-7" +} + +{ + "return": [ + { + "name": "chardev-pty", + "parent": "chardev" + }, + { + "name": "vhost-user-vsock-device", + "parent": "vhost-vsock-common" + }, + { + "name": "pcie-pci-bridge", + "parent": "base-pci-bridge" + }, + { + "name": "i82374", + "parent": "isa-device" + }, + { + "name": "acpi-erst", + "parent": "pci-device" + }, + { + "name": "usb-redir", + "parent": "usb-device" + }, + { + "name": "745_v2.8-powerpc-cpu", + "parent": "745-family-powerpc-cpu" + }, + { + "name": "grackle", + "parent": "pci-device" + }, + { + "name": "750cx_v2.1-powerpc-cpu", + "parent": "750cx-family-powerpc-cpu" + }, + { + "name": "603e7v2-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "mpc8545e_v21-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "floppy-bus", + "parent": "bus" + }, + { + "name": "chardev-testdev", + "parent": "chardev" + }, + { + "name": "g2le-powerpc-cpu", + "parent": "G2LE-family-powerpc-cpu" + }, + { + "name": "aw-h3-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "platform-bus-device", + "parent": "sys-bus-device" + }, + { + "name": "750l_v2.0-powerpc-cpu", + "parent": "750-family-powerpc-cpu" + }, + { + "name": "chardev-stdio", + "parent": "chardev-fd" + }, + { + "name": "tegra2-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "filter-buffer", + "parent": "netfilter" + }, + { + "name": "usb-wacom-tablet", + "parent": "usb-device" + }, + { + "name": "ich9-usb-uhci6", + "parent": "pci-uhci-usb" + }, + { + "name": "secondary-vga", + "parent": "pci-vga" + }, + { + "name": "virtio-blk-pci-transitional", + "parent": "virtio-blk-pci-base" + }, + { + "name": "sysbus-m48t08", + "parent": "sysbus-m48txx" + }, + { + "name": "rtl8139", + "parent": "pci-device" + }, + { + "name": "pci-bridge", + "parent": "base-pci-bridge" + }, + { + "name": "uni-north-internal-pci", + "parent": "pci-device" + }, + { + "name": "virtio-rng-device", + "parent": "virtio-device" + }, + { + "name": "virtio-crypto-device", + "parent": "virtio-device" + }, + { + "name": "755_v1.1-powerpc-cpu", + "parent": "755-family-powerpc-cpu" + }, + { + "name": "ich9-usb-uhci5", + "parent": "pci-uhci-usb" + }, + { + "name": "pcm3680_pci", + "parent": "pci-device" + }, + { + "name": "7445_v2.1-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "vmware-svga", + "parent": "pci-device" + }, + { + "name": "i8042-mmio", + "parent": "sys-bus-device" + }, + { + "name": "virtio-gpu-gl-device", + "parent": "virtio-gpu-device" + }, + { + "name": "mpc8544_v10-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "serial", + "parent": "device" + }, + { + "name": "gus", + "parent": "isa-device" + }, + { + "name": "ich9-usb-uhci4", + "parent": "pci-uhci-usb" + }, + { + "name": "usb-hub", + "parent": "usb-device" + }, + { + "name": "750l_v2.1-powerpc-cpu", + "parent": "750-family-powerpc-cpu" + }, + { + "name": "openpic", + "parent": "sys-bus-device" + }, + { + "name": "virtio-blk-device", + "parent": "virtio-device" + }, + { + "name": "mv64361-pcibridge", + "parent": "pci-device" + }, + { + "name": "ppc405-cpc", + "parent": "ppc4xx-dcr-device" + }, + { + "name": "ich9-usb-uhci3", + "parent": "pci-uhci-usb" + }, + { + "name": "mpc8343-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "mos6522-cuda", + "parent": "mos6522" + }, + { + "name": "g2ls-powerpc-cpu", + "parent": "G2-family-powerpc-cpu" + }, + { + "name": "chardev-serial", + "parent": "chardev-fd" + }, + { + "name": "mpc8543e_v10-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "chardev-wctablet", + "parent": "chardev" + }, + { + "name": "750gl-powerpc-cpu", + "parent": "750gx-family-powerpc-cpu" + }, + { + "name": "ich9-usb-uhci2", + "parent": "pci-uhci-usb" + }, + { + "name": "7457_v1.2-powerpc-cpu", + "parent": "7455-family-powerpc-cpu" + }, + { + "name": "mpc8641d-powerpc-cpu", + "parent": "e600-family-powerpc-cpu" + }, + { + "name": "750fx_v1.0-powerpc-cpu", + "parent": "750fx-family-powerpc-cpu" + }, + { + "name": "7447_v1.0-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "vhost-user-vsock-pci", + "parent": "vhost-user-vsock-pci-base" + }, + { + "name": "PCIE", + "parent": "PCI" + }, + { + "name": "ich9-usb-uhci1", + "parent": "pci-uhci-usb" + }, + { + "name": "scsi-generic", + "parent": "scsi-device" + }, + { + "name": "adb-keyboard", + "parent": "adb-device" + }, + { + "name": "mpc8544ds-machine", + "parent": "ppce500-base-machine" + }, + { + "name": "440-xilinx-w-dfpu-powerpc-cpu", + "parent": "440x5wDFPU-family-powerpc-cpu" + }, + { + "name": "usb-host", + "parent": "usb-device" + }, + { + "name": "x3130-upstream", + "parent": "pcie-port" + }, + { + "name": "virtio-serial-pci-transitional", + "parent": "virtio-serial-pci-base" + }, + { + "name": "memory-backend-ram", + "parent": "memory-backend" + }, + { + "name": "e1000e", + "parent": "pci-device" + }, + { + "name": "virtio-gpu-pci", + "parent": "virtio-gpu-pci-base-type" + }, + { + "name": "750cxe_v2.1-powerpc-cpu", + "parent": "750cx-family-powerpc-cpu" + }, + { + "name": "603p-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "sysbus-m48t02", + "parent": "sysbus-m48txx" + }, + { + "name": "dec-21154-sysbus", + "parent": "pci-host-bridge" + }, + { + "name": "chardev-file", + "parent": "chardev-fd" + }, + { + "name": "virtio-serial-bus", + "parent": "bus" + }, + { + "name": "mpc8560_v20-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "ps2-mouse", + "parent": "ps2-device" + }, + { + "name": "vhost-user-vsock-pci-non-transitional", + "parent": "vhost-user-vsock-pci-base" + }, + { + "name": "tulip", + "parent": "pci-device" + }, + { + "name": "virtio-9p-pci-transitional", + "parent": "virtio-9p-pci-base" + }, + { + "name": "filter-rewriter", + "parent": "netfilter" + }, + { + "name": "vhost-vsock-pci-non-transitional", + "parent": "vhost-vsock-pci-base" + }, + { + "name": "npe405l-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "mpc8543_v10-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "vhost-scsi-pci", + "parent": "vhost-scsi-pci-base" + }, + { + "name": "mpc8572e-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "at24c-eeprom", + "parent": "i2c-slave" + }, + { + "name": "mac-dbdma", + "parent": "sys-bus-device" + }, + { + "name": "750cxe_v2.4b-powerpc-cpu", + "parent": "750cx-family-powerpc-cpu" + }, + { + "name": "xio3130-downstream", + "parent": "pcie-slot" + }, + { + "name": "pc87312", + "parent": "isa-superio" + }, + { + "name": "mpc8349a-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "uni-north-internal-pci-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "PCI", + "parent": "bus" + }, + { + "name": "mpc8347at-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "sdhci-bus", + "parent": "sd-bus" + }, + { + "name": "imx-usdhc", + "parent": "generic-sdhci" + }, + { + "name": "ppc440-pcix-host", + "parent": "pci-host-bridge" + }, + { + "name": "pci-serial-2x", + "parent": "pci-device" + }, + { + "name": "e300c1-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "vhost-user-i2c-device", + "parent": "virtio-device" + }, + { + "name": "virtio-9p-device", + "parent": "virtio-device" + }, + { + "name": "virtio-scsi-pci", + "parent": "virtio-scsi-pci-base" + }, + { + "name": "vt82c686b-superio", + "parent": "via-superio" + }, + { + "name": "750cx_v2.2-powerpc-cpu", + "parent": "750cx-family-powerpc-cpu" + }, + { + "name": "usb-audio", + "parent": "usb-device" + }, + { + "name": "ds1338", + "parent": "i2c-slave" + }, + { + "name": "7451_v2.10-powerpc-cpu", + "parent": "7450-family-powerpc-cpu" + }, + { + "name": "mos6522-pmu", + "parent": "mos6522" + }, + { + "name": "fusbh200-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "usb-net", + "parent": "usb-device" + }, + { + "name": "CXL", + "parent": "PCIE" + }, + { + "name": "405gpa-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "ich9-usb-ehci2", + "parent": "pci-ehci-usb" + }, + { + "name": "virtio-input-host-pci", + "parent": "virtio-input-host-pci-base-type" + }, + { + "name": "vfio-pci-nohotplug", + "parent": "vfio-pci" + }, + { + "name": "memory-region", + "parent": "object" + }, + { + "name": "virtio-gpu-gl-pci", + "parent": "virtio-gpu-gl-pci-base-type" + }, + { + "name": "i2c-bus", + "parent": "bus" + }, + { + "name": "e300c2-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "pr-manager-helper", + "parent": "pr-manager" + }, + { + "name": "ctucan_pci", + "parent": "pci-device" + }, + { + "name": "ich9-usb-ehci1", + "parent": "pci-ehci-usb" + }, + { + "name": "604e_v1.0-powerpc-cpu", + "parent": "604E-family-powerpc-cpu" + }, + { + "name": "740_v1.0-powerpc-cpu", + "parent": "740-family-powerpc-cpu" + }, + { + "name": "750_v2.0-powerpc-cpu", + "parent": "750-family-powerpc-cpu" + }, + { + "name": "xlnx.xps-intc", + "parent": "sys-bus-device" + }, + { + "name": "virtio-scsi-pci-non-transitional", + "parent": "virtio-scsi-pci-base" + }, + { + "name": "mpc8548e_v10-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "750cxr-powerpc-cpu", + "parent": "750cx-family-powerpc-cpu" + }, + { + "name": "7455_v3.2-powerpc-cpu", + "parent": "7455-family-powerpc-cpu" + }, + { + "name": "serial-mm", + "parent": "sys-bus-device" + }, + { + "name": "745_v1.0-powerpc-cpu", + "parent": "745-family-powerpc-cpu" + }, + { + "name": "755_v2.0-powerpc-cpu", + "parent": "755-family-powerpc-cpu" + }, + { + "name": "mpc8544_v11-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "405ez-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "i82557c", + "parent": "pci-device" + }, + { + "name": "thread-context", + "parent": "object" + }, + { + "name": "virtio-scsi-device", + "parent": "virtio-scsi-common" + }, + { + "name": "750l_v2.2-powerpc-cpu", + "parent": "750-family-powerpc-cpu" + }, + { + "name": "mpc8343ea-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "vhost-user-i2c-pci", + "parent": "vhost-user-i2c-pci-base" + }, + { + "name": "input-barrier", + "parent": "object" + }, + { + "name": "cpu-cluster", + "parent": "device" + }, + { + "name": "i82557b", + "parent": "pci-device" + }, + { + "name": "7451_v2.3-powerpc-cpu", + "parent": "7450-family-powerpc-cpu" + }, + { + "name": "mpc8543e_v11-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "vhost-user-scsi-pci-non-transitional", + "parent": "vhost-user-scsi-pci-base" + }, + { + "name": "ppc405-opba", + "parent": "sys-bus-device" + }, + { + "name": "chardev-udp", + "parent": "chardev" + }, + { + "name": "i82557a", + "parent": "pci-device" + }, + { + "name": "generic-sdhci", + "parent": "sys-bus-device" + }, + { + "name": "cuda", + "parent": "sys-bus-device" + }, + { + "name": "7441_v2.1-powerpc-cpu", + "parent": "7440-family-powerpc-cpu" + }, + { + "name": "migration", + "parent": "device" + }, + { + "name": "745_v1.1-powerpc-cpu", + "parent": "745-family-powerpc-cpu" + }, + { + "name": "ps2-kbd", + "parent": "ps2-device" + }, + { + "name": "750cl_v1.0-powerpc-cpu", + "parent": "750cl-family-powerpc-cpu" + }, + { + "name": "mpc8548e_v11-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "virtio-mouse-pci", + "parent": "virtio-mouse-pci-base-type" + }, + { + "name": "chardev-memory", + "parent": "chardev-ringbuf" + }, + { + "name": "virtio-serial-pci", + "parent": "virtio-serial-pci-base" + }, + { + "name": "virtio-blk-pci-non-transitional", + "parent": "virtio-blk-pci-base" + }, + { + "name": "7447_v1.1-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "mpc8568e-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "e500v2_v30-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "750cxe_v2.2-powerpc-cpu", + "parent": "750cx-family-powerpc-cpu" + }, + { + "name": "vhost-vsock-device", + "parent": "vhost-vsock-common" + }, + { + "name": "virtio-9p-pci-non-transitional", + "parent": "virtio-9p-pci-base" + }, + { + "name": "ib700", + "parent": "isa-device" + }, + { + "name": "usb-braille", + "parent": "usb-serial-dev" + }, + { + "name": "apple-desktop-bus", + "parent": "bus" + }, + { + "name": "g2-powerpc-cpu", + "parent": "G2-family-powerpc-cpu" + }, + { + "name": "via-pmu", + "parent": "sys-bus-device" + }, + { + "name": "raven-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "mpc8560_v21-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "sysbus-m48t59", + "parent": "sysbus-m48txx" + }, + { + "name": "memory-backend-file", + "parent": "memory-backend" + }, + { + "name": "via-mc97", + "parent": "pci-device" + }, + { + "name": "isa-pcspk", + "parent": "isa-device" + }, + { + "name": "mpc8555_v10-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "vhost-scsi", + "parent": "vhost-scsi-common" + }, + { + "name": "mpc8544-guts", + "parent": "sys-bus-device" + }, + { + "name": "440-xilinx-powerpc-cpu", + "parent": "440x5-family-powerpc-cpu" + }, + { + "name": "sysbus-ahci", + "parent": "sys-bus-device" + }, + { + "name": "usb-tablet", + "parent": "usb-hid" + }, + { + "name": "sd-card", + "parent": "device" + }, + { + "name": "mpc8555e_v10-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "mpc8548_v20-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "750cxe_v2.3-powerpc-cpu", + "parent": "750cx-family-powerpc-cpu" + }, + { + "name": "esp", + "parent": "device" + }, + { + "name": "750cxe_v3.1b-powerpc-cpu", + "parent": "750cx-family-powerpc-cpu" + }, + { + "name": "isabus-bridge", + "parent": "sys-bus-device" + }, + { + "name": "ne2k_pci", + "parent": "pci-device" + }, + { + "name": "usb-bus", + "parent": "bus" + }, + { + "name": "ide-cd", + "parent": "ide-device" + }, + { + "name": "qtest", + "parent": "object" + }, + { + "name": "vhost-user-gpu-pci", + "parent": "vhost-user-gpu-pci-base-type" + }, + { + "name": "tcg-accel", + "parent": "accel" + }, + { + "name": "mpc8543_v11-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "virtio-gpu-device", + "parent": "virtio-gpu-base" + }, + { + "name": "virtio-balloon-pci", + "parent": "virtio-balloon-pci-base" + }, + { + "name": "qio-channel-null", + "parent": "qio-channel" + }, + { + "name": "vt8231-isa", + "parent": "via-isa" + }, + { + "name": "e1000", + "parent": "e1000-base" + }, + { + "name": "405gpb-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "mpc8555_v11-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "ppc-uic", + "parent": "ppc4xx-dcr-device" + }, + { + "name": "i82551", + "parent": "pci-device" + }, + { + "name": "i82550", + "parent": "pci-device" + }, + { + "name": "7400_v2.6-powerpc-cpu", + "parent": "7400-family-powerpc-cpu" + }, + { + "name": "vhost-user-backend", + "parent": "object" + }, + { + "name": "mpc8379e-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "mpc8540_v10-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "macio-nvram", + "parent": "sys-bus-device" + }, + { + "name": "nvme", + "parent": "pci-device" + }, + { + "name": "mioe3680_pci", + "parent": "pci-device" + }, + { + "name": "vmxnet3", + "parent": "pci-device" + }, + { + "name": "nec-usb-xhci", + "parent": "pci-xhci" + }, + { + "name": "ES1370", + "parent": "pci-device" + }, + { + "name": "e300c3-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "750_v2.1-powerpc-cpu", + "parent": "750-family-powerpc-cpu" + }, + { + "name": "isa-pit", + "parent": "pit-common" + }, + { + "name": "405lp-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "iothread", + "parent": "event-loop-base" + }, + { + "name": "memory-backend-memfd", + "parent": "memory-backend" + }, + { + "name": "smbus-eeprom", + "parent": "smbus-device" + }, + { + "name": "750l_v3.0-powerpc-cpu", + "parent": "750-family-powerpc-cpu" + }, + { + "name": "mpc8541_v10-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "7455_v3.3-powerpc-cpu", + "parent": "7455-family-powerpc-cpu" + }, + { + "name": "virtio-crypto-pci", + "parent": "virtio-crypto-pci-base-type" + }, + { + "name": "755_v2.1-powerpc-cpu", + "parent": "755-family-powerpc-cpu" + }, + { + "name": "405gpc-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "755_v2.2-powerpc-cpu", + "parent": "755-family-powerpc-cpu" + }, + { + "name": "7400_v2.7-powerpc-cpu", + "parent": "7400-family-powerpc-cpu" + }, + { + "name": "System", + "parent": "bus" + }, + { + "name": "i8042", + "parent": "isa-device" + }, + { + "name": "dec-21154", + "parent": "pci-device" + }, + { + "name": "macio-gpio", + "parent": "sys-bus-device" + }, + { + "name": "e300c4-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "or-irq", + "parent": "device" + }, + { + "name": "uni-north-pci", + "parent": "pci-device" + }, + { + "name": "ati-vga", + "parent": "pci-device" + }, + { + "name": "750_v2.2-powerpc-cpu", + "parent": "750-family-powerpc-cpu" + }, + { + "name": "virtio-serial-device", + "parent": "virtio-device" + }, + { + "name": "isa-serial", + "parent": "isa-device" + }, + { + "name": "603e_v4.1-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "imx.usbphy", + "parent": "sys-bus-device" + }, + { + "name": "mpc8541_v11-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "vhost-user-scsi", + "parent": "vhost-scsi-common" + }, + { + "name": "7455_v3.4-powerpc-cpu", + "parent": "7455-family-powerpc-cpu" + }, + { + "name": "750cxe_v3.0-powerpc-cpu", + "parent": "750cx-family-powerpc-cpu" + }, + { + "name": "macio-bus", + "parent": "System" + }, + { + "name": "cirrus-vga", + "parent": "pci-device" + }, + { + "name": "740p-powerpc-cpu", + "parent": "740-family-powerpc-cpu" + }, + { + "name": "7410_v1.0-powerpc-cpu", + "parent": "7410-family-powerpc-cpu" + }, + { + "name": "mpc8533e_v10-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "mpc8547e_v20-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "405gpd-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "mpc8349e-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "i82559er", + "parent": "pci-device" + }, + { + "name": "virtio-rng-pci-non-transitional", + "parent": "virtio-rng-pci-base" + }, + { + "name": "mpc8544e_v10-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "ppc4xx-ebc", + "parent": "ppc4xx-dcr-device" + }, + { + "name": "main-loop", + "parent": "event-loop-base" + }, + { + "name": "7441_v2.10-powerpc-cpu", + "parent": "7440-family-powerpc-cpu" + }, + { + "name": "750fx_v2.0-powerpc-cpu", + "parent": "750fx-family-powerpc-cpu" + }, + { + "name": "via-ac97", + "parent": "pci-device" + }, + { + "name": "container", + "parent": "object" + }, + { + "name": "vhost-user-blk-pci-non-transitional", + "parent": "vhost-user-blk-pci-base" + }, + { + "name": "scsi-cd", + "parent": "scsi-disk-base" + }, + { + "name": "7441_v2.3-powerpc-cpu", + "parent": "7440-family-powerpc-cpu" + }, + { + "name": "isa-ide", + "parent": "isa-device" + }, + { + "name": "am53c974", + "parent": "pci-device" + }, + { + "name": "virtio-serial-pci-non-transitional", + "parent": "virtio-serial-pci-base" + }, + { + "name": "750cxe_v2.4-powerpc-cpu", + "parent": "750cx-family-powerpc-cpu" + }, + { + "name": "750cxe_v3.1-powerpc-cpu", + "parent": "750cx-family-powerpc-cpu" + }, + { + "name": "e1000-82545em", + "parent": "e1000-base" + }, + { + "name": "7410_v1.1-powerpc-cpu", + "parent": "7410-family-powerpc-cpu" + }, + { + "name": "mpc8533e_v11-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "mpc8547e_v21-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "virtio-rng-pci-transitional", + "parent": "virtio-rng-pci-base" + }, + { + "name": "7448_v1.0-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "exynos4210-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "sdhci-pci", + "parent": "pci-device" + }, + { + "name": "mpc8544e_v11-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "PIIX4_PM", + "parent": "pci-device" + }, + { + "name": "750fx_v2.1-powerpc-cpu", + "parent": "750fx-family-powerpc-cpu" + }, + { + "name": "440epx-powerpc-cpu", + "parent": "440EP-family-powerpc-cpu" + }, + { + "name": "raven", + "parent": "pci-device" + }, + { + "name": "usb-bot", + "parent": "usb-storage-dev" + }, + { + "name": "mpc8555e_v11-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "mpc8548_v21-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "mpc8347ep-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "mpc8377e-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "405gpr-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "603e_v3-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "VGA", + "parent": "pci-vga" + }, + { + "name": "prep-systemio", + "parent": "isa-device" + }, + { + "name": "g3beige-machine", + "parent": "machine" + }, + { + "name": "qio-channel-buffer", + "parent": "qio-channel" + }, + { + "name": "7448_v1.1-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "mpc8347p-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "npe405h2-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "macio-ide", + "parent": "sys-bus-device" + }, + { + "name": "mpc8545_v20-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "ppc405-dma", + "parent": "ppc4xx-dcr-device" + }, + { + "name": "750fx_v2.2-powerpc-cpu", + "parent": "750fx-family-powerpc-cpu" + }, + { + "name": "vhost-user-fs-device", + "parent": "virtio-device" + }, + { + "name": "pci-serial-4x", + "parent": "pci-device" + }, + { + "name": "fdc37m81x-superio", + "parent": "isa-superio" + }, + { + "name": "mpc-i2c", + "parent": "sys-bus-device" + }, + { + "name": "603e_v4-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "ccid-card-passthru", + "parent": "ccid-card" + }, + { + "name": "e500v2_v10-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "pci-ohci", + "parent": "pci-device" + }, + { + "name": "virtio-tablet-device", + "parent": "virtio-input-hid-device" + }, + { + "name": "heathrow", + "parent": "sys-bus-device" + }, + { + "name": "7450_v1.0-powerpc-cpu", + "parent": "7450-family-powerpc-cpu" + }, + { + "name": "u3-agp-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "7455_v1.0-powerpc-cpu", + "parent": "7455-family-powerpc-cpu" + }, + { + "name": "chardev-parallel", + "parent": "chardev" + }, + { + "name": "chardev-vc", + "parent": "chardev" + }, + { + "name": "cryptodev-backend", + "parent": "object" + }, + { + "name": "cryptodev-vhost-user", + "parent": "cryptodev-backend" + }, + { + "name": "750_v3.0-powerpc-cpu", + "parent": "750-family-powerpc-cpu" + }, + { + "name": "i8257", + "parent": "isa-device" + }, + { + "name": "740_v2.0-powerpc-cpu", + "parent": "740-family-powerpc-cpu" + }, + { + "name": "mpc5200b_v20-powerpc-cpu", + "parent": "G2LE-family-powerpc-cpu" + }, + { + "name": "usb-uas", + "parent": "usb-device" + }, + { + "name": "7445_v3.2-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "chardev-spiceport", + "parent": "chardev-spice" + }, + { + "name": "7400_v2.8-powerpc-cpu", + "parent": "7400-family-powerpc-cpu" + }, + { + "name": "ivshmem-plain", + "parent": "ivshmem-common" + }, + { + "name": "virtio-keyboard-pci", + "parent": "virtio-keyboard-pci-base-type" + }, + { + "name": "745_v2.0-powerpc-cpu", + "parent": "745-family-powerpc-cpu" + }, + { + "name": "mpc8610-powerpc-cpu", + "parent": "e600-family-powerpc-cpu" + }, + { + "name": "pcnet", + "parent": "pci-device" + }, + { + "name": "405ep-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "vt8231-pm", + "parent": "via-pm" + }, + { + "name": "vhost-user-scsi-pci", + "parent": "vhost-user-scsi-pci-base" + }, + { + "name": "7445_v3.3-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "750l_v3.2-powerpc-cpu", + "parent": "750-family-powerpc-cpu" + }, + { + "name": "i82559c", + "parent": "pci-device" + }, + { + "name": "740_v2.1-powerpc-cpu", + "parent": "740-family-powerpc-cpu" + }, + { + "name": "ppc460ex-pcie-host", + "parent": "pcie-host-bridge" + }, + { + "name": "virtserialport", + "parent": "virtio-serial-port" + }, + { + "name": "ipoctal232", + "parent": "ipack-device" + }, + { + "name": "ref405ep-machine", + "parent": "ppc405-machine" + }, + { + "name": "i82559b", + "parent": "pci-device" + }, + { + "name": "755_v2.3-powerpc-cpu", + "parent": "755-family-powerpc-cpu" + }, + { + "name": "usb-mouse", + "parent": "usb-hid" + }, + { + "name": "filter-redirector", + "parent": "netfilter" + }, + { + "name": "ccid-bus", + "parent": "bus" + }, + { + "name": "7400_v2.9-powerpc-cpu", + "parent": "7400-family-powerpc-cpu" + }, + { + "name": "ide-hd", + "parent": "ide-device" + }, + { + "name": "750cl_v2.0-powerpc-cpu", + "parent": "750cl-family-powerpc-cpu" + }, + { + "name": "745_v2.1-powerpc-cpu", + "parent": "745-family-powerpc-cpu" + }, + { + "name": "virtio-blk-pci", + "parent": "virtio-blk-pci-base" + }, + { + "name": "40p-machine", + "parent": "machine" + }, + { + "name": "603e_v1.1-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "e500-ccsr", + "parent": "sys-bus-device" + }, + { + "name": "i82559a", + "parent": "pci-device" + }, + { + "name": "kvaser_pci", + "parent": "pci-device" + }, + { + "name": "dbus-vmstate", + "parent": "object" + }, + { + "name": "755_v2.4-powerpc-cpu", + "parent": "755-family-powerpc-cpu" + }, + { + "name": "ppc4xx-i2c", + "parent": "sys-bus-device" + }, + { + "name": "tls-creds-x509", + "parent": "tls-creds" + }, + { + "name": "740e-powerpc-cpu", + "parent": "740-family-powerpc-cpu" + }, + { + "name": "e1000-82544gc", + "parent": "e1000-base" + }, + { + "name": "qio-channel-command", + "parent": "qio-channel" + }, + { + "name": "virtio-net-device", + "parent": "virtio-device" + }, + { + "name": "usb-ccid", + "parent": "usb-device" + }, + { + "name": "740_v2.2-powerpc-cpu", + "parent": "740-family-powerpc-cpu" + }, + { + "name": "7410_v1.2-powerpc-cpu", + "parent": "7410-family-powerpc-cpu" + }, + { + "name": "uni-north-pci-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "stb25-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "mpc8543e_v20-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "pvrdma", + "parent": "pci-device" + }, + { + "name": "7400_v1.0-powerpc-cpu", + "parent": "7400-family-powerpc-cpu" + }, + { + "name": "vhost-user-gpu", + "parent": "virtio-gpu-base" + }, + { + "name": "chardev-braille", + "parent": "chardev" + }, + { + "name": "e600-powerpc-cpu", + "parent": "e600-family-powerpc-cpu" + }, + { + "name": "mpc8548e_v20-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "mc146818rtc", + "parent": "isa-device" + }, + { + "name": "vfio-pci", + "parent": "pci-device" + }, + { + "name": "bochs-display", + "parent": "pci-device" + }, + { + "name": "qio-net-listener", + "parent": "object" + }, + { + "name": "qio-channel-websock", + "parent": "qio-channel" + }, + { + "name": "edu", + "parent": "pci-device" + }, + { + "name": "pc-testdev", + "parent": "isa-device" + }, + { + "name": "755_v2.5-powerpc-cpu", + "parent": "755-family-powerpc-cpu" + }, + { + "name": "7410_v1.3-powerpc-cpu", + "parent": "7410-family-powerpc-cpu" + }, + { + "name": "megasas", + "parent": "megasas-base" + }, + { + "name": "npe4gs3-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "qio-channel-file", + "parent": "qio-channel" + }, + { + "name": "750_v3.1-powerpc-cpu", + "parent": "750-family-powerpc-cpu" + }, + { + "name": "virtio-iommu-pci", + "parent": "virtio-iommu-pci-base-type" + }, + { + "name": "mpc8545_v21-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "mpc8543e_v21-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "tpci200", + "parent": "pci-device" + }, + { + "name": "750fx_v2.3-powerpc-cpu", + "parent": "750fx-family-powerpc-cpu" + }, + { + "name": "rocker", + "parent": "pci-device" + }, + { + "name": "405d2-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "gpio_i2c", + "parent": "sys-bus-device" + }, + { + "name": "mpc8347eap-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "stb03-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "mpc8349-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "7450_v1.1-powerpc-cpu", + "parent": "7450-family-powerpc-cpu" + }, + { + "name": "vt8231-superio", + "parent": "via-superio" + }, + { + "name": "adb-mouse", + "parent": "adb-device" + }, + { + "name": "qio-channel-socket", + "parent": "qio-channel" + }, + { + "name": "qemu-console", + "parent": "object" + }, + { + "name": "chardev-socket", + "parent": "chardev" + }, + { + "name": "e500_v10-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "mv64361-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "m41t80", + "parent": "i2c-slave" + }, + { + "name": "secret", + "parent": "secret_common" + }, + { + "name": "usb-ehci", + "parent": "pci-ehci-usb" + }, + { + "name": "clock", + "parent": "object" + }, + { + "name": "AC97", + "parent": "pci-device" + }, + { + "name": "sm501", + "parent": "pci-device" + }, + { + "name": "virtio-net-pci-non-transitional", + "parent": "virtio-net-pci-base" + }, + { + "name": "603-powerpc-cpu", + "parent": "603-family-powerpc-cpu" + }, + { + "name": "mpc5200_v10-powerpc-cpu", + "parent": "G2LE-family-powerpc-cpu" + }, + { + "name": "nvme-bus", + "parent": "bus" + }, + { + "name": "mpc8543_v20-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "cs4231a", + "parent": "isa-device" + }, + { + "name": "scsi-hd", + "parent": "scsi-disk-base" + }, + { + "name": "isa-fdc", + "parent": "isa-device" + }, + { + "name": "mpc5200b_v21-powerpc-cpu", + "parent": "G2LE-family-powerpc-cpu" + }, + { + "name": "usb-kbd", + "parent": "usb-hid" + }, + { + "name": "isa-m48t59", + "parent": "isa-m48txx" + }, + { + "name": "base-xhci", + "parent": "device" + }, + { + "name": "filter-replay", + "parent": "netfilter" + }, + { + "name": "usb-mtp", + "parent": "usb-device" + }, + { + "name": "input-linux", + "parent": "object" + }, + { + "name": "vhost-user-rng", + "parent": "virtio-device" + }, + { + "name": "7450_v1.2-powerpc-cpu", + "parent": "7450-family-powerpc-cpu" + }, + { + "name": "s3c-sdhci", + "parent": "generic-sdhci" + }, + { + "name": "604r-powerpc-cpu", + "parent": "604E-family-powerpc-cpu" + }, + { + "name": "fw_cfg_mem", + "parent": "fw_cfg" + }, + { + "name": "ccid-card-emulated", + "parent": "ccid-card" + }, + { + "name": "lsi53c810", + "parent": "lsi53c895a" + }, + { + "name": "ppc4xx-host-bridge", + "parent": "pci-device" + }, + { + "name": "virtio-mouse-device", + "parent": "virtio-input-hid-device" + }, + { + "name": "virtconsole", + "parent": "virtserialport" + }, + { + "name": "ioh3420", + "parent": "pcie-root-port-base" + }, + { + "name": "guest-loader", + "parent": "device" + }, + { + "name": "filter-mirror", + "parent": "netfilter" + }, + { + "name": "throttle-group", + "parent": "object" + }, + { + "name": "mpc8543_v21-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "virtio-rng-pci", + "parent": "virtio-rng-pci-base" + }, + { + "name": "chardev-gdb", + "parent": "chardev" + }, + { + "name": "piix4-usb-uhci", + "parent": "pci-uhci-usb" + }, + { + "name": "bamboo-machine", + "parent": "machine" + }, + { + "name": "vhost-user-gpio-device", + "parent": "virtio-device" + }, + { + "name": "7445_v3.4-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "603e7-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "sii3112", + "parent": "pci-ide" + }, + { + "name": "virtio-scsi-pci-transitional", + "parent": "virtio-scsi-pci-base" + }, + { + "name": "745_v2.2-powerpc-cpu", + "parent": "745-family-powerpc-cpu" + }, + { + "name": "603e_v1.2-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "604e_v2.2-powerpc-cpu", + "parent": "604E-family-powerpc-cpu" + }, + { + "name": "xlnx.xps-timer", + "parent": "sys-bus-device" + }, + { + "name": "g2hip3-powerpc-cpu", + "parent": "G2-family-powerpc-cpu" + }, + { + "name": "750p-powerpc-cpu", + "parent": "750-family-powerpc-cpu" + }, + { + "name": "pci-testdev", + "parent": "pci-device" + }, + { + "name": "mpc8377-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "vhost-user-input", + "parent": "virtio-input-device" + }, + { + "name": "xlnx.xps-uartlite", + "parent": "sys-bus-device" + }, + { + "name": "vt82c686b-usb-uhci", + "parent": "pci-uhci-usb" + }, + { + "name": "ich9-intel-hda", + "parent": "intel-hda-generic" + }, + { + "name": "secret_keyring", + "parent": "secret_common" + }, + { + "name": "virtio-9p-pci", + "parent": "virtio-9p-pci-base" + }, + { + "name": "x2vp20-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "escc", + "parent": "sys-bus-device" + }, + { + "name": "ISA", + "parent": "bus" + }, + { + "name": "7400_v1.1-powerpc-cpu", + "parent": "7400-family-powerpc-cpu" + }, + { + "name": "745_v2.3-powerpc-cpu", + "parent": "745-family-powerpc-cpu" + }, + { + "name": "603e_v1.3-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "vhost-vsock-pci", + "parent": "vhost-vsock-pci-base" + }, + { + "name": "7448_v2.0-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "ppc4xx-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "mpc8548e_v21-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "mpc8378-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "virtio-net-pci-transitional", + "parent": "virtio-net-pci-base" + }, + { + "name": "virtio-balloon-pci-non-transitional", + "parent": "virtio-balloon-pci-base" + }, + { + "name": "tls-creds-psk", + "parent": "tls-creds" + }, + { + "name": "vhost-user-blk-pci", + "parent": "vhost-user-blk-pci-base" + }, + { + "name": "irq", + "parent": "object" + }, + { + "name": "vhost-user-blk-pci-transitional", + "parent": "vhost-user-blk-pci-base" + }, + { + "name": "7410_v1.4-powerpc-cpu", + "parent": "7410-family-powerpc-cpu" + }, + { + "name": "755_v2.6-powerpc-cpu", + "parent": "755-family-powerpc-cpu" + }, + { + "name": "usb-storage", + "parent": "usb-storage-dev" + }, + { + "name": "chardev-msmouse", + "parent": "chardev" + }, + { + "name": "vhost-scsi-pci-transitional", + "parent": "vhost-scsi-pci-base" + }, + { + "name": "isa-i8259", + "parent": "pic-common" + }, + { + "name": "colo-compare", + "parent": "object" + }, + { + "name": "745_v2.4-powerpc-cpu", + "parent": "745-family-powerpc-cpu" + }, + { + "name": "603e_v1.4-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "stb04-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "7448_v2.1-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "tls-cipher-suites", + "parent": "tls-creds" + }, + { + "name": "ppc405-soc", + "parent": "device" + }, + { + "name": "mpc8560_v10-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "mpc8379-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "qemu-xhci", + "parent": "pci-xhci" + }, + { + "name": "virtio-iommu-device", + "parent": "virtio-device" + }, + { + "name": "sungem", + "parent": "pci-device" + }, + { + "name": "rng-random", + "parent": "rng-backend" + }, + { + "name": "7457a_v1.0-powerpc-cpu", + "parent": "7455-family-powerpc-cpu" + }, + { + "name": "755_v2.7-powerpc-cpu", + "parent": "755-family-powerpc-cpu" + }, + { + "name": "mpc8541e_v10-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "750cx_v1.0-powerpc-cpu", + "parent": "750cx-family-powerpc-cpu" + }, + { + "name": "nvme-ns", + "parent": "device" + }, + { + "name": "authz-simple", + "parent": "authz" + }, + { + "name": "xlnx.xps-ethernetlite", + "parent": "sys-bus-device" + }, + { + "name": "mpc8347et-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "604-powerpc-cpu", + "parent": "604-family-powerpc-cpu" + }, + { + "name": "mpc5200_v11-powerpc-cpu", + "parent": "G2LE-family-powerpc-cpu" + }, + { + "name": "megasas-gen2", + "parent": "megasas-base" + }, + { + "name": "405d4-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "7450_v2.0-powerpc-cpu", + "parent": "7450-family-powerpc-cpu" + }, + { + "name": "fw_cfg_io", + "parent": "fw_cfg" + }, + { + "name": "740_v3.0-powerpc-cpu", + "parent": "740-family-powerpc-cpu" + }, + { + "name": "none-machine", + "parent": "machine" + }, + { + "name": "HDA", + "parent": "bus" + }, + { + "name": "via-ide", + "parent": "pci-ide" + }, + { + "name": "u2f-passthru", + "parent": "u2f-key" + }, + { + "name": "750fl-powerpc-cpu", + "parent": "750fx-family-powerpc-cpu" + }, + { + "name": "mpc8540_v20-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "mpc8541e_v11-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "7445_v1.0-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "sysbus-esp", + "parent": "sys-bus-device" + }, + { + "name": "cryptodev-backend-builtin", + "parent": "cryptodev-backend" + }, + { + "name": "e500mc-powerpc-cpu", + "parent": "e500mc-family-powerpc-cpu" + }, + { + "name": "pegasos2-machine", + "parent": "machine" + }, + { + "name": "mpc8347t-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "mpc603-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "g2legp-powerpc-cpu", + "parent": "G2LE-family-powerpc-cpu" + }, + { + "name": "sam460ex-machine", + "parent": "machine" + }, + { + "name": "mv64361", + "parent": "sys-bus-device" + }, + { + "name": "mpc8343a-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "ppce500-machine", + "parent": "ppce500-base-machine" + }, + { + "name": "qio-dns-resolver", + "parent": "object" + }, + { + "name": "mpc5200_v12-powerpc-cpu", + "parent": "G2LE-family-powerpc-cpu" + }, + { + "name": "virtio-balloon-pci-transitional", + "parent": "virtio-balloon-pci-base" + }, + { + "name": "vt82c686b-pm", + "parent": "via-pm" + }, + { + "name": "mpc8567-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "e500-spin", + "parent": "sys-bus-device" + }, + { + "name": "e200z5-powerpc-cpu", + "parent": "e200-family-powerpc-cpu" + }, + { + "name": "i82801b11-bridge", + "parent": "base-pci-bridge" + }, + { + "name": "virtio-keyboard-device", + "parent": "virtio-input-hid-device" + }, + { + "name": "hda-output", + "parent": "hda-audio" + }, + { + "name": "440epa-powerpc-cpu", + "parent": "440EP-family-powerpc-cpu" + }, + { + "name": "virtio-input-host-device", + "parent": "virtio-input-device" + }, + { + "name": "ppc4xx-plb", + "parent": "ppc4xx-dcr-device" + }, + { + "name": "ppc4xx-mal", + "parent": "ppc4xx-dcr-device" + }, + { + "name": "IndustryPack", + "parent": "bus" + }, + { + "name": "740_v3.1-powerpc-cpu", + "parent": "740-family-powerpc-cpu" + }, + { + "name": "g2hip4-powerpc-cpu", + "parent": "G2-family-powerpc-cpu" + }, + { + "name": "mpc8540_v21-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "603e7t-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "mpc8568-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "vhost-scsi-pci-non-transitional", + "parent": "vhost-scsi-pci-base" + }, + { + "name": "mpc8567e-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "mpc8347eat-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "e500-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "pci-serial", + "parent": "pci-device" + }, + { + "name": "e200z6-powerpc-cpu", + "parent": "e200-family-powerpc-cpu" + }, + { + "name": "ppc405-ocm", + "parent": "ppc4xx-dcr-device" + }, + { + "name": "sysbus-ohci", + "parent": "sys-bus-device" + }, + { + "name": "750e-powerpc-cpu", + "parent": "750-family-powerpc-cpu" + }, + { + "name": "vfio-platform", + "parent": "sys-bus-device" + }, + { + "name": "piix3-usb-uhci", + "parent": "pci-uhci-usb" + }, + { + "name": "440epb-powerpc-cpu", + "parent": "440EP-family-powerpc-cpu" + }, + { + "name": "qio-channel-rdma", + "parent": "qio-channel" + }, + { + "name": "virtio-iommu-memory-region", + "parent": "iommu-memory-region" + }, + { + "name": "ne2k_isa", + "parent": "isa-device" + }, + { + "name": "eTSEC", + "parent": "sys-bus-device" + }, + { + "name": "mpc8xxx_gpio", + "parent": "sys-bus-device" + }, + { + "name": "adlib", + "parent": "isa-device" + }, + { + "name": "604e_v2.4-powerpc-cpu", + "parent": "604E-family-powerpc-cpu" + }, + { + "name": "vhost-user-gpio-pci", + "parent": "vhost-user-gpio-pci-base" + }, + { + "name": "750gx_v1.0-powerpc-cpu", + "parent": "750gx-family-powerpc-cpu" + }, + { + "name": "mpc8347ap-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "hda-duplex", + "parent": "hda-audio" + }, + { + "name": "7400_v2.0-powerpc-cpu", + "parent": "7400-family-powerpc-cpu" + }, + { + "name": "can-bus", + "parent": "object" + }, + { + "name": "pvpanic-pci", + "parent": "pci-device" + }, + { + "name": "cfi.pflash02", + "parent": "sys-bus-device" + }, + { + "name": "u3-agp", + "parent": "pci-device" + }, + { + "name": "virtio-balloon-device", + "parent": "virtio-device" + }, + { + "name": "vhost-user-rng-pci", + "parent": "vhost-user-rng-pci-base" + }, + { + "name": "cfi.pflash01", + "parent": "sys-bus-device" + }, + { + "name": "isa-parallel", + "parent": "isa-device" + }, + { + "name": "chardev-null", + "parent": "chardev" + }, + { + "name": "745_v2.5-powerpc-cpu", + "parent": "745-family-powerpc-cpu" + }, + { + "name": "uni-north-agp", + "parent": "pci-device" + }, + { + "name": "ppc4xx-sdram-ddr2", + "parent": "ppc4xx-dcr-device" + }, + { + "name": "405cra-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "macio-newworld", + "parent": "macio" + }, + { + "name": "g2gp-powerpc-cpu", + "parent": "G2-family-powerpc-cpu" + }, + { + "name": "sysbus-sm501", + "parent": "sys-bus-device" + }, + { + "name": "tls-creds-anon", + "parent": "tls-creds" + }, + { + "name": "7457a_v1.1-powerpc-cpu", + "parent": "7455-family-powerpc-cpu" + }, + { + "name": "rng-egd", + "parent": "rng-backend" + }, + { + "name": "ppc4xx-sdram-ddr", + "parent": "ppc4xx-dcr-device" + }, + { + "name": "mpc8572-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "755_v2.8-powerpc-cpu", + "parent": "755-family-powerpc-cpu" + }, + { + "name": "g2legp1-powerpc-cpu", + "parent": "G2LE-family-powerpc-cpu" + }, + { + "name": "i82558b", + "parent": "pci-device" + }, + { + "name": "virtio-net-pci", + "parent": "virtio-net-pci-base" + }, + { + "name": "ivshmem-doorbell", + "parent": "ivshmem-common" + }, + { + "name": "7450_v2.1-powerpc-cpu", + "parent": "7450-family-powerpc-cpu" + }, + { + "name": "mpc8641-powerpc-cpu", + "parent": "e600-family-powerpc-cpu" + }, + { + "name": "rs6000-mc", + "parent": "isa-device" + }, + { + "name": "mpc8378e-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "745_v2.6-powerpc-cpu", + "parent": "745-family-powerpc-cpu" + }, + { + "name": "i82558a", + "parent": "pci-device" + }, + { + "name": "loader", + "parent": "device" + }, + { + "name": "usb-serial", + "parent": "usb-serial-dev" + }, + { + "name": "pvscsi", + "parent": "pci-device" + }, + { + "name": "accel", + "parent": "object" + }, + { + "name": "i82801", + "parent": "pci-device" + }, + { + "name": "7455_v2.1-powerpc-cpu", + "parent": "7455-family-powerpc-cpu" + }, + { + "name": "g2lels-powerpc-cpu", + "parent": "G2LE-family-powerpc-cpu" + }, + { + "name": "vfio-calxeda-xgmac", + "parent": "vfio-platform" + }, + { + "name": "7457a_v1.2-powerpc-cpu", + "parent": "7455-family-powerpc-cpu" + }, + { + "name": "macio-oldworld", + "parent": "macio" + }, + { + "name": "g2h4-powerpc-cpu", + "parent": "G2-family-powerpc-cpu" + }, + { + "name": "uni-north", + "parent": "sys-bus-device" + }, + { + "name": "virtio-tablet-pci", + "parent": "virtio-tablet-pci-base-type" + }, + { + "name": "mpc8545e_v20-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "mpc8349ea-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "dc390", + "parent": "am53c974" + }, + { + "name": "e500v2_v20-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "i6300esb", + "parent": "pci-device" + }, + { + "name": "floppy", + "parent": "device" + }, + { + "name": "authz-list", + "parent": "authz" + }, + { + "name": "npe405h-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "750_v1.0-powerpc-cpu", + "parent": "750-family-powerpc-cpu" + }, + { + "name": "ppc4xx-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "755_v1.0-powerpc-cpu", + "parent": "755-family-powerpc-cpu" + }, + { + "name": "460exb-powerpc-cpu", + "parent": "460EX-family-powerpc-cpu" + }, + { + "name": "chardev-qemu-vdagent", + "parent": "chardev" + }, + { + "name": "vhost-user-fs-pci", + "parent": "vhost-user-fs-pci-base" + }, + { + "name": "g2legp3-powerpc-cpu", + "parent": "G2LE-family-powerpc-cpu" + }, + { + "name": "ppc405-pob", + "parent": "ppc4xx-dcr-device" + }, + { + "name": "sb16", + "parent": "isa-device" + }, + { + "name": "vfio-amd-xgbe", + "parent": "vfio-platform" + }, + { + "name": "ich9-ahci", + "parent": "pci-device" + }, + { + "name": "vhost-user-scsi-pci-transitional", + "parent": "vhost-user-scsi-pci-base" + }, + { + "name": "603e_v2.2-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "vt82c686b-isa", + "parent": "via-isa" + }, + { + "name": "mpc8548_v10-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "e500_v20-powerpc-cpu", + "parent": "e500v1-family-powerpc-cpu" + }, + { + "name": "e500v2_v21-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "chardev-pipe", + "parent": "chardev-fd" + }, + { + "name": "i2c-ddc", + "parent": "i2c-slave" + }, + { + "name": "can-host-socketcan", + "parent": "can-host" + }, + { + "name": "7457_v1.0-powerpc-cpu", + "parent": "7455-family-powerpc-cpu" + }, + { + "name": "i82562", + "parent": "pci-device" + }, + { + "name": "pci-bridge-seat", + "parent": "pci-bridge" + }, + { + "name": "x2vp4-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "grackle-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "chardev-mux", + "parent": "chardev" + }, + { + "name": "npcm7xx-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "lsi53c895a", + "parent": "pci-device" + }, + { + "name": "mac99-machine", + "parent": "machine" + }, + { + "name": "qio-channel-block", + "parent": "qio-channel" + }, + { + "name": "750gx_v1.1-powerpc-cpu", + "parent": "750gx-family-powerpc-cpu" + }, + { + "name": "603e7v-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "intel-hda", + "parent": "intel-hda-generic" + }, + { + "name": "7400_v2.1-powerpc-cpu", + "parent": "7400-family-powerpc-cpu" + }, + { + "name": "7447a_v1.0-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "mpc8548_v11-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "e500v2_v22-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "7457_v1.1-powerpc-cpu", + "parent": "7455-family-powerpc-cpu" + }, + { + "name": "IDE", + "parent": "bus" + }, + { + "name": "virtex-ml507-machine", + "parent": "machine" + }, + { + "name": "ppc405-gpt", + "parent": "sys-bus-device" + }, + { + "name": "pcie-root-port", + "parent": "pcie-root-port-base" + }, + { + "name": "scsi-block", + "parent": "scsi-disk-base" + }, + { + "name": "mptsas1068", + "parent": "pci-device" + }, + { + "name": "SCSI", + "parent": "bus" + }, + { + "name": "mpc8533_v10-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "chardev-spicevmc", + "parent": "chardev-spice" + }, + { + "name": "platform-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "dec-21154-p2p-bridge", + "parent": "base-pci-bridge" + }, + { + "name": "uni-north-agp-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "750gx_v1.2-powerpc-cpu", + "parent": "750gx-family-powerpc-cpu" + }, + { + "name": "405crb-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "i82378", + "parent": "pci-device" + }, + { + "name": "hda-micro", + "parent": "hda-audio" + }, + { + "name": "mpc8343e-powerpc-cpu", + "parent": "e300-family-powerpc-cpu" + }, + { + "name": "745_v2.7-powerpc-cpu", + "parent": "745-family-powerpc-cpu" + }, + { + "name": "7400_v2.2-powerpc-cpu", + "parent": "7400-family-powerpc-cpu" + }, + { + "name": "7447a_v1.1-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "rng-builtin", + "parent": "rng-backend" + }, + { + "name": "sd-bus", + "parent": "bus" + }, + { + "name": "ppc405-gpio", + "parent": "sys-bus-device" + }, + { + "name": "filter-dump", + "parent": "netfilter" + }, + { + "name": "virtio-pci-bus", + "parent": "virtio-bus" + }, + { + "name": "chardev-ringbuf", + "parent": "chardev" + }, + { + "name": "mpc8533_v11-powerpc-cpu", + "parent": "e500v2-family-powerpc-cpu" + }, + { + "name": "ref405ep-fpga", + "parent": "sys-bus-device" + }, + { + "name": "750cx_v2.0-powerpc-cpu", + "parent": "750cx-family-powerpc-cpu" + }, + { + "name": "603e7v1-powerpc-cpu", + "parent": "603E-family-powerpc-cpu" + }, + { + "name": "e500-host-bridge", + "parent": "pci-device" + }, + { + "name": "vhost-user-blk", + "parent": "virtio-device" + }, + { + "name": "nvme-subsys", + "parent": "device" + }, + { + "name": "405crc-powerpc-cpu", + "parent": "405-family-powerpc-cpu" + }, + { + "name": "authz-list-file", + "parent": "authz" + }, + { + "name": "qio-channel-tls", + "parent": "qio-channel" + }, + { + "name": "7447a_v1.2-powerpc-cpu", + "parent": "7445-family-powerpc-cpu" + }, + { + "name": "vhost-user-input-pci", + "parent": "vhost-user-input-pci-base-type" + }, + { + "name": "authz-pam", + "parent": "authz" + } + ], + "id": "libvirt-7" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-blk-pci" + }, + "id": "libvirt-8" +} + +{ + "return": [ + { + "name": "failover_pair_id", + "type": "str" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "migrate-extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "ats", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-ignore-backend-features", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-pm-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "aer", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-flr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-lnkctl-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-ats-page-aligned", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "page-per-vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-deverr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "virtio-pci-bus-master-bug-migration", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "modern-pio-notify", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-pcie", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "vectors", + "type": "uint32" + }, + { + "default-value": true, + "name": "ioeventfd", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "class", + "type": "uint32" + }, + { + "default-value": "auto", + "name": "disable-legacy", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": false, + "name": "disable-modern", + "type": "bool" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "share-rw", + "type": "bool" + }, + { + "default-value": 0, + "name": "lcyls", + "type": "uint32" + }, + { + "default-value": 256, + "name": "queue-size", + "type": "uint16" + }, + { + "default-value": 0, + "name": "lsecs", + "type": "uint32" + }, + { + "default-value": 0, + "name": "heads", + "type": "uint32" + }, + { + "default-value": "auto", + "name": "account-invalid", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "name": "iothread", + "type": "link<iothread>" + }, + { + "default-value": 0, + "name": "lheads", + "type": "uint32" + }, + { + "default-value": 65535, + "name": "num-queues", + "type": "uint16" + }, + { + "default-value": 0, + "name": "cyls", + "type": "uint32" + }, + { + "default-value": 0, + "name": "secs", + "type": "uint32" + }, + { + "name": "virtio-backend", + "type": "child<virtio-blk-device>" + }, + { + "default-value": 0, + "name": "min_io_size", + "type": "size" + }, + { + "name": "bootindex", + "type": "int32" + }, + { + "default-value": true, + "name": "config-wce", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "seg-max-adjust", + "type": "bool" + }, + { + "name": "drive", + "description": "Node name or ID of a block device to use as a backend", + "type": "str" + }, + { + "default-value": "auto", + "name": "werror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "default-value": true, + "name": "report-discard-granularity", + "type": "bool" + }, + { + "default-value": "auto", + "name": "rerror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "default-value": "auto", + "name": "write-cache", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "physical_block_size", + "description": "A power of two between 512 B and 2 MiB", + "type": "size" + }, + { + "default-value": false, + "name": "scsi", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "opt_io_size", + "type": "size" + }, + { + "default-value": 0, + "name": "logical_block_size", + "description": "A power of two between 512 B and 2 MiB", + "type": "size" + }, + { + "default-value": 4194303, + "name": "max-discard-sectors", + "type": "uint32" + }, + { + "default-value": true, + "name": "discard", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "discard_granularity", + "type": "size" + }, + { + "default-value": true, + "name": "request-merging", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "queue_reset", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "write-zeroes", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4194303, + "name": "max-write-zeroes-sectors", + "type": "uint32" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + }, + { + "default-value": "auto", + "name": "account-failed", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": true, + "name": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-enable-wce-if-config-wce", + "type": "bool" + }, + { + "default-value": "auto", + "name": "backend_defaults", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "name": "serial", + "type": "str" + } + ], + "id": "libvirt-8" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-net-pci" + }, + "id": "libvirt-9" +} + +{ + "return": [ + { + "name": "failover_pair_id", + "type": "str" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "migrate-extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "ats", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-ignore-backend-features", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-pm-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "aer", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-flr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-lnkctl-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-ats-page-aligned", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "page-per-vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-deverr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "virtio-pci-bus-master-bug-migration", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "modern-pio-notify", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-pcie", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "vectors", + "type": "uint32" + }, + { + "default-value": true, + "name": "ioeventfd", + "description": "on/off", + "type": "bool" + }, + { + "default-value": "auto", + "name": "disable-legacy", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": false, + "name": "disable-modern", + "type": "bool" + }, + { + "name": "mac", + "description": "Ethernet 6-byte MAC Address, example: 52:54:00:12:34:56", + "type": "str" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "gso", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 150000, + "name": "x-txtimer", + "type": "uint32" + }, + { + "default-value": false, + "name": "mq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "mrg_rxbuf", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 256, + "name": "x-txburst", + "type": "int32" + }, + { + "default-value": 0, + "name": "host_mtu", + "type": "uint16" + }, + { + "name": "tx", + "type": "str" + }, + { + "default-value": false, + "name": "rss", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "status", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "failover", + "type": "bool" + }, + { + "name": "virtio-backend", + "type": "child<virtio-net-device>" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "ctrl_mac_addr", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 256, + "name": "tx_queue_size", + "type": "uint16" + }, + { + "default-value": true, + "name": "guest_tso4", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "default-value": false, + "name": "hash", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "host_tso6", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "ctrl_guest_offloads", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "guest_ufo", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "ctrl_vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "guest_ecn", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "host_ufo", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "host_ecn", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "guest_rsc_ext", + "description": "on/off", + "type": "bool" + }, + { + "name": "duplex", + "type": "str" + }, + { + "default-value": 300000, + "name": "rsc_interval", + "type": "uint32" + }, + { + "default-value": true, + "name": "guest_announce", + "description": "on/off", + "type": "bool" + }, + { + "name": "netdev", + "description": "ID of a netdev to use as a backend", + "type": "str" + }, + { + "default-value": true, + "name": "host_tso4", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-mtu-bypass-backend", + "type": "bool" + }, + { + "default-value": true, + "name": "queue_reset", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "ctrl_rx_extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 256, + "name": "rx_queue_size", + "type": "uint16" + }, + { + "default-value": true, + "name": "guest_csum", + "description": "on/off", + "type": "bool" + }, + { + "name": "bootindex", + "type": "int32" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "ctrl_vlan", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "guest_tso6", + "description": "on/off", + "type": "bool" + }, + { + "default-value": -1, + "name": "speed", + "type": "int32" + }, + { + "default-value": true, + "name": "csum", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "ctrl_rx", + "description": "on/off", + "type": "bool" + } + ], + "id": "libvirt-9" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-scsi-pci" + }, + "id": "libvirt-10" +} + +{ + "return": [ + { + "name": "failover_pair_id", + "type": "str" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "migrate-extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "ats", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-ignore-backend-features", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-pm-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "aer", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-flr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-lnkctl-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-ats-page-aligned", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "page-per-vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-deverr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "virtio-pci-bus-master-bug-migration", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "modern-pio-notify", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-pcie", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "vectors", + "type": "uint32" + }, + { + "default-value": true, + "name": "ioeventfd", + "description": "on/off", + "type": "bool" + }, + { + "default-value": "auto", + "name": "disable-legacy", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": false, + "name": "disable-modern", + "type": "bool" + }, + { + "default-value": true, + "name": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "hotplug", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "num_queues", + "type": "uint32" + }, + { + "default-value": 65535, + "name": "max_sectors", + "type": "uint32" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "name": "iothread", + "type": "link<iothread>" + }, + { + "default-value": true, + "name": "param_change", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "queue_reset", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 256, + "name": "virtqueue_size", + "type": "uint32" + }, + { + "default-value": true, + "name": "seg_max_adjust", + "type": "bool" + }, + { + "default-value": 128, + "name": "cmd_per_lun", + "type": "uint32" + }, + { + "name": "virtio-backend", + "type": "child<virtio-scsi-device>" + } + ], + "id": "libvirt-10" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-net-ccw" + }, + "id": "libvirt-11" +} + +{ + "id": "libvirt-11", + "error": { + "class": "DeviceNotFound", + "desc": "Device 'virtio-net-ccw' not found" + } +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-scsi-ccw" + }, + "id": "libvirt-12" +} + +{ + "id": "libvirt-12", + "error": { + "class": "DeviceNotFound", + "desc": "Device 'virtio-scsi-ccw' not found" + } +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "vfio-pci" + }, + "id": "libvirt-13" +} + +{ + "return": [ + { + "name": "failover_pair_id", + "type": "str" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-no-kvm-msix", + "type": "bool" + }, + { + "default-value": 0, + "name": "yres", + "type": "uint32" + }, + { + "default-value": false, + "name": "x-vga", + "description": "on/off", + "type": "bool" + }, + { + "default-value": "on", + "name": "x-pre-copy-dirty-page-tracking", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "name": "x-nv-gpudirect-clique", + "description": "NVIDIA GPUDirect Clique ID (0 - 15)", + "type": "uint4" + }, + { + "default-value": "off", + "name": "x-msix-relocation", + "description": "off/auto/bar0/bar1/bar2/bar3/bar4/bar5", + "type": "OffAutoPCIBAR" + }, + { + "default-value": false, + "name": "x-no-vfio-ioeventfd", + "type": "bool" + }, + { + "name": "sysfsdev", + "type": "str" + }, + { + "name": "host", + "description": "Address (bus/device/function) of the host device, example: 04:10.0", + "type": "str" + }, + { + "default-value": 4294967295, + "name": "x-pci-device-id", + "type": "uint32" + }, + { + "default-value": false, + "name": "x-no-kvm-msi", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "x-pci-sub-vendor-id", + "type": "uint32" + }, + { + "default-value": false, + "name": "x-enable-migration", + "type": "bool" + }, + { + "default-value": false, + "name": "x-no-geforce-quirks", + "type": "bool" + }, + { + "default-value": true, + "name": "x-req", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "x-igd-gms", + "type": "uint32" + }, + { + "default-value": 1100, + "name": "x-intx-mmap-timeout-ms", + "type": "uint32" + }, + { + "default-value": false, + "name": "x-no-kvm-intx", + "type": "bool" + }, + { + "default-value": false, + "name": "x-no-kvm-ioeventfd", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "x-pci-sub-device-id", + "type": "uint32" + }, + { + "default-value": "off", + "name": "display", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": false, + "name": "x-igd-opregion", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "x-pci-vendor-id", + "type": "uint32" + }, + { + "default-value": 0, + "name": "xres", + "type": "uint32" + }, + { + "default-value": false, + "name": "x-no-mmap", + "type": "bool" + }, + { + "default-value": false, + "name": "x-balloon-allowed", + "type": "bool" + }, + { + "name": "bootindex", + "type": "int32" + } + ], + "id": "libvirt-13" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "scsi-hd" + }, + "id": "libvirt-14" +} + +{ + "return": [ + { + "default-value": 4294967295, + "name": "scsi-id", + "type": "uint32" + }, + { + "default-value": 4294967295, + "name": "lun", + "type": "uint32" + }, + { + "default-value": 0, + "name": "channel", + "type": "uint32" + }, + { + "default-value": 0, + "name": "lheads", + "type": "uint32" + }, + { + "default-value": 0, + "name": "lcyls", + "type": "uint32" + }, + { + "default-value": false, + "name": "share-rw", + "type": "bool" + }, + { + "default-value": "auto", + "name": "account-invalid", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": 0, + "name": "lsecs", + "type": "uint32" + }, + { + "default-value": 5, + "name": "scsi_version", + "type": "int32" + }, + { + "default-value": 0, + "name": "secs", + "type": "uint32" + }, + { + "default-value": false, + "name": "removable", + "description": "on/off", + "type": "bool" + }, + { + "name": "ver", + "type": "str" + }, + { + "default-value": 1073741824, + "name": "max_unmap_size", + "type": "uint64" + }, + { + "default-value": 0, + "name": "cyls", + "type": "uint32" + }, + { + "name": "serial", + "type": "str" + }, + { + "default-value": 0, + "name": "min_io_size", + "type": "size" + }, + { + "name": "product", + "type": "str" + }, + { + "default-value": 0, + "name": "rotation_rate", + "type": "uint16" + }, + { + "default-value": 0, + "name": "heads", + "type": "uint32" + }, + { + "default-value": false, + "name": "dpofua", + "description": "on/off", + "type": "bool" + }, + { + "name": "drive", + "description": "Node name or ID of a block device to use as a backend", + "type": "str" + }, + { + "default-value": "auto", + "name": "werror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "default-value": 0, + "name": "wwn", + "type": "uint64" + }, + { + "name": "vendor", + "type": "str" + }, + { + "default-value": "auto", + "name": "rerror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "default-value": "auto", + "name": "write-cache", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": 0, + "name": "physical_block_size", + "description": "A power of two between 512 B and 2 MiB", + "type": "size" + }, + { + "default-value": 2147483647, + "name": "max_io_size", + "type": "uint64" + }, + { + "default-value": false, + "name": "quirk_mode_page_vendor_specific_apple", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "opt_io_size", + "type": "size" + }, + { + "default-value": 0, + "name": "logical_block_size", + "description": "A power of two between 512 B and 2 MiB", + "type": "size" + }, + { + "default-value": 4294967295, + "name": "discard_granularity", + "type": "size" + }, + { + "default-value": 0, + "name": "port_wwn", + "type": "uint64" + }, + { + "default-value": 0, + "name": "port_index", + "type": "uint16" + }, + { + "default-value": "auto", + "name": "account-failed", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "name": "device_id", + "type": "str" + }, + { + "default-value": "auto", + "name": "backend_defaults", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "name": "bootindex", + "type": "int32" + } + ], + "id": "libvirt-14" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "ide-hd" + }, + "id": "libvirt-15" +} + +{ + "return": [ + { + "default-value": 4294967295, + "name": "unit", + "type": "uint32" + }, + { + "default-value": 0, + "name": "lsecs", + "type": "uint32" + }, + { + "default-value": "auto", + "name": "account-invalid", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "name": "model", + "type": "str" + }, + { + "default-value": 0, + "name": "lheads", + "type": "uint32" + }, + { + "default-value": 0, + "name": "rotation_rate", + "type": "uint16" + }, + { + "name": "drive", + "description": "Node name or ID of a block device to use as a backend", + "type": "str" + }, + { + "name": "serial", + "type": "str" + }, + { + "default-value": 0, + "name": "logical_block_size", + "description": "A power of two between 512 B and 2 MiB", + "type": "size" + }, + { + "name": "ver", + "type": "str" + }, + { + "default-value": false, + "name": "share-rw", + "type": "bool" + }, + { + "default-value": "auto", + "name": "write-cache", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": 0, + "name": "heads", + "type": "uint32" + }, + { + "default-value": 0, + "name": "wwn", + "type": "uint64" + }, + { + "default-value": 4294967295, + "name": "discard_granularity", + "type": "size" + }, + { + "default-value": "auto", + "name": "backend_defaults", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": 0, + "name": "cyls", + "type": "uint32" + }, + { + "default-value": 0, + "name": "lcyls", + "type": "uint32" + }, + { + "default-value": 0, + "name": "opt_io_size", + "type": "size" + }, + { + "default-value": "auto", + "name": "rerror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "default-value": "auto", + "name": "bios-chs-trans", + "description": "Logical CHS translation algorithm, auto/none/lba/large/rechs", + "type": "BiosAtaTranslation" + }, + { + "default-value": 0, + "name": "min_io_size", + "type": "size" + }, + { + "default-value": "auto", + "name": "account-failed", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": 0, + "name": "physical_block_size", + "description": "A power of two between 512 B and 2 MiB", + "type": "size" + }, + { + "default-value": 0, + "name": "secs", + "type": "uint32" + }, + { + "default-value": "auto", + "name": "werror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "name": "bootindex", + "type": "int32" + } + ], + "id": "libvirt-15" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "PIIX4_PM" + }, + "id": "libvirt-16" +} + +{ + "return": [ + { + "name": "failover_pair_id", + "type": "str" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "acpi-pci-hotplug-with-bridge-support", + "type": "bool" + }, + { + "default-value": 0, + "name": "smb_io_base", + "type": "uint32" + }, + { + "default-value": 0, + "name": "disable_s3", + "type": "uint8" + }, + { + "default-value": true, + "name": "acpi-root-pci-hotplug", + "type": "bool" + }, + { + "default-value": false, + "name": "smm-enabled", + "type": "bool" + }, + { + "default-value": 0, + "name": "disable_s4", + "type": "uint8" + }, + { + "default-value": true, + "name": "memory-hotplug-support", + "type": "bool" + }, + { + "default-value": false, + "name": "smm-compat", + "type": "bool" + }, + { + "default-value": false, + "name": "x-not-migrate-acpi-index", + "type": "bool" + }, + { + "default-value": 2, + "name": "s4_val", + "type": "uint8" + }, + { + "name": "smi-irq[0]", + "type": "link<irq>" + }, + { + "name": "unnamed-gpio-out[0]", + "type": "link<irq>" + } + ], + "id": "libvirt-16" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "usb-redir" + }, + "id": "libvirt-17" +} + +{ + "return": [ + { + "name": "pcap", + "type": "str" + }, + { + "name": "port", + "type": "str" + }, + { + "default-value": true, + "name": "msos-desc", + "description": "on/off", + "type": "bool" + }, + { + "name": "serial", + "type": "str" + }, + { + "name": "filter", + "type": "str" + }, + { + "default-value": true, + "name": "streams", + "type": "bool" + }, + { + "name": "chardev", + "description": "ID of a chardev to use as a backend", + "type": "str" + }, + { + "default-value": 2, + "name": "debug", + "type": "uint8" + }, + { + "default-value": true, + "name": "suppress-remote-wake", + "type": "bool" + }, + { + "name": "bootindex", + "type": "int32" + }, + { + "name": "attached", + "type": "bool" + } + ], + "id": "libvirt-17" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "usb-storage" + }, + "id": "libvirt-18" +} + +{ + "return": [ + { + "name": "pcap", + "type": "str" + }, + { + "name": "port", + "type": "str" + }, + { + "default-value": true, + "name": "msos-desc", + "description": "on/off", + "type": "bool" + }, + { + "name": "serial", + "type": "str" + }, + { + "default-value": false, + "name": "commandlog", + "type": "bool" + }, + { + "default-value": "auto", + "name": "rerror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "default-value": 0, + "name": "min_io_size", + "type": "size" + }, + { + "default-value": "auto", + "name": "backend_defaults", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": false, + "name": "removable", + "type": "bool" + }, + { + "default-value": false, + "name": "share-rw", + "type": "bool" + }, + { + "default-value": "auto", + "name": "account-failed", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": 0, + "name": "logical_block_size", + "description": "A power of two between 512 B and 2 MiB", + "type": "size" + }, + { + "default-value": "auto", + "name": "write-cache", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": 0, + "name": "opt_io_size", + "type": "size" + }, + { + "default-value": "auto", + "name": "account-invalid", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "name": "drive", + "description": "Node name or ID of a block device to use as a backend", + "type": "str" + }, + { + "default-value": 4294967295, + "name": "discard_granularity", + "type": "size" + }, + { + "default-value": 0, + "name": "physical_block_size", + "description": "A power of two between 512 B and 2 MiB", + "type": "size" + }, + { + "default-value": "auto", + "name": "werror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "name": "bootindex", + "type": "int32" + }, + { + "name": "attached", + "type": "bool" + } + ], + "id": "libvirt-18" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "kvm-pit" + }, + "id": "libvirt-19" +} + +{ + "id": "libvirt-19", + "error": { + "class": "DeviceNotFound", + "desc": "Device 'kvm-pit' not found" + } +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "VGA" + }, + "id": "libvirt-20" +} + +{ + "return": [ + { + "name": "failover_pair_id", + "type": "str" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "refresh_rate", + "type": "uint32" + }, + { + "default-value": false, + "name": "global-vmstate", + "type": "bool" + }, + { + "name": "big-endian-framebuffer", + "type": "bool" + }, + { + "default-value": 16, + "name": "vgamem_mb", + "type": "uint32" + }, + { + "default-value": true, + "name": "qemu-extended-regs", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "mmio", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "ymax", + "type": "uint32" + }, + { + "default-value": 0, + "name": "yres", + "type": "uint32" + }, + { + "default-value": 0, + "name": "xmax", + "type": "uint32" + }, + { + "default-value": true, + "name": "edid", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "xres", + "type": "uint32" + } + ], + "id": "libvirt-20" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "vmware-svga" + }, + "id": "libvirt-21" +} + +{ + "return": [ + { + "name": "failover_pair_id", + "type": "str" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "global-vmstate", + "type": "bool" + }, + { + "default-value": 16, + "name": "vgamem_mb", + "type": "uint32" + } + ], + "id": "libvirt-21" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-gpu-pci" + }, + "id": "libvirt-22" +} + +{ + "return": [ + { + "name": "failover_pair_id", + "type": "str" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "migrate-extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "ats", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-ignore-backend-features", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-pm-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "aer", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-flr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-lnkctl-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-ats-page-aligned", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "page-per-vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-deverr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "virtio-pci-bus-master-bug-migration", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "modern-pio-notify", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-pcie", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 3, + "name": "vectors", + "type": "uint32" + }, + { + "default-value": false, + "name": "ioeventfd", + "description": "on/off", + "type": "bool" + }, + { + "default-value": "auto", + "name": "disable-legacy", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": false, + "name": "disable-modern", + "type": "bool" + }, + { + "default-value": true, + "name": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 800, + "name": "yres", + "type": "uint32" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "edid", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 268435456, + "name": "max_hostmem", + "type": "size" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "queue_reset", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "default-value": false, + "name": "blob", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "max_outputs", + "type": "uint32" + }, + { + "default-value": 1280, + "name": "xres", + "type": "uint32" + }, + { + "name": "virtio-backend", + "type": "child<virtio-gpu-device>" + } + ], + "id": "libvirt-22" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-gpu-device" + }, + "id": "libvirt-23" +} + +{ + "return": [ + { + "default-value": true, + "name": "queue_reset", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": true, + "name": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1280, + "name": "xres", + "type": "uint32" + }, + { + "default-value": false, + "name": "blob", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "edid", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 800, + "name": "yres", + "type": "uint32" + }, + { + "default-value": 1, + "name": "max_outputs", + "type": "uint32" + }, + { + "default-value": 268435456, + "name": "max_hostmem", + "type": "size" + } + ], + "id": "libvirt-23" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "ICH9-LPC" + }, + "id": "libvirt-24" +} + +{ + "id": "libvirt-24", + "error": { + "class": "DeviceNotFound", + "desc": "Device 'ICH9-LPC' not found" + } +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-balloon-pci" + }, + "id": "libvirt-25" +} + +{ + "return": [ + { + "name": "failover_pair_id", + "type": "str" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "migrate-extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "ats", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-ignore-backend-features", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-pm-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "aer", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-flr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-lnkctl-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-ats-page-aligned", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "page-per-vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-deverr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "virtio-pci-bus-master-bug-migration", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "modern-pio-notify", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-pcie", + "description": "on/off", + "type": "bool" + }, + { + "default-value": "auto", + "name": "disable-legacy", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": false, + "name": "disable-modern", + "type": "bool" + }, + { + "default-value": false, + "name": "free-page-reporting", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "deflate-on-oom", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "page-poison", + "description": "on/off", + "type": "bool" + }, + { + "name": "guest-stats-polling-interval", + "type": "int" + }, + { + "name": "guest-stats", + "type": "guest statistics" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "name": "iothread", + "type": "link<iothread>" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "queue_reset", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "qemu-4-0-config-size", + "type": "bool" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": false, + "name": "free-page-hint", + "description": "on/off", + "type": "bool" + }, + { + "name": "virtio-backend", + "type": "child<virtio-balloon-device>" + } + ], + "id": "libvirt-25" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-balloon-ccw" + }, + "id": "libvirt-26" +} + +{ + "id": "libvirt-26", + "error": { + "class": "DeviceNotFound", + "desc": "Device 'virtio-balloon-ccw' not found" + } +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-balloon-device" + }, + "id": "libvirt-27" +} + +{ + "return": [ + { + "default-value": true, + "name": "queue_reset", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": true, + "name": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "name": "iothread", + "type": "link<iothread>" + }, + { + "default-value": false, + "name": "deflate-on-oom", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "free-page-hint", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "page-poison", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "qemu-4-0-config-size", + "type": "bool" + }, + { + "default-value": false, + "name": "free-page-reporting", + "description": "on/off", + "type": "bool" + }, + { + "name": "guest-stats-polling-interval", + "type": "int" + }, + { + "name": "guest-stats", + "type": "guest statistics" + } + ], + "id": "libvirt-27" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "pcie-root-port" + }, + "id": "libvirt-28" +} + +{ + "return": [ + { + "name": "failover_pair_id", + "type": "str" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "port", + "type": "uint8" + }, + { + "default-value": 8, + "name": "aer_log_max", + "type": "uint16" + }, + { + "default-value": true, + "name": "hotplug", + "type": "bool" + }, + { + "default-value": true, + "name": "x-native-hotplug", + "type": "bool" + }, + { + "default-value": 0, + "name": "slot", + "type": "uint16" + }, + { + "default-value": 0, + "name": "chassis", + "type": "uint8" + }, + { + "default-value": true, + "name": "power_controller_present", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "disable-acs", + "type": "bool" + }, + { + "default-value": 18446744073709551615, + "name": "mem-reserve", + "type": "size" + }, + { + "default-value": 18446744073709551615, + "name": "pref64-reserve", + "type": "size" + }, + { + "default-value": 4294967295, + "name": "bus-reserve", + "type": "uint32" + }, + { + "default-value": "32", + "name": "x-width", + "description": "1/2/4/8/12/16/32", + "type": "PCIELinkWidth" + }, + { + "default-value": true, + "name": "x-migrate-msix", + "type": "bool" + }, + { + "default-value": 18446744073709551615, + "name": "io-reserve", + "type": "size" + }, + { + "default-value": "16", + "name": "x-speed", + "description": "2_5/5/8/16", + "type": "PCIELinkSpeed" + }, + { + "default-value": 18446744073709551615, + "name": "pref32-reserve", + "type": "size" + } + ], + "id": "libvirt-28" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "usb-host" + }, + "id": "libvirt-29" +} + +{ + "return": [ + { + "name": "pcap", + "type": "str" + }, + { + "name": "port", + "type": "str" + }, + { + "default-value": true, + "name": "msos-desc", + "description": "on/off", + "type": "bool" + }, + { + "name": "serial", + "type": "str" + }, + { + "default-value": true, + "name": "pipeline", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "hostbus", + "type": "uint32" + }, + { + "default-value": 4, + "name": "isobufs", + "type": "uint32" + }, + { + "default-value": 0, + "name": "vendorid", + "type": "uint32" + }, + { + "default-value": 0, + "name": "productid", + "type": "uint32" + }, + { + "name": "hostport", + "type": "str" + }, + { + "name": "hostdevice", + "type": "str" + }, + { + "default-value": 0, + "name": "hostaddr", + "type": "uint32" + }, + { + "default-value": true, + "name": "suppress-remote-wake", + "type": "bool" + }, + { + "default-value": 2, + "name": "loglevel", + "type": "uint32" + }, + { + "default-value": 32, + "name": "isobsize", + "type": "uint32" + }, + { + "default-value": false, + "name": "guest-resets-all", + "type": "bool" + }, + { + "default-value": true, + "name": "guest-reset", + "type": "bool" + }, + { + "name": "bootindex", + "type": "int32" + }, + { + "name": "attached", + "type": "bool" + } + ], + "id": "libvirt-29" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "vhost-user-fs-device" + }, + "id": "libvirt-30" +} + +{ + "return": [ + { + "default-value": true, + "name": "queue_reset", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": true, + "name": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "name": "chardev", + "description": "ID of a chardev to use as a backend", + "type": "str" + }, + { + "default-value": 128, + "name": "queue-size", + "type": "uint16" + }, + { + "name": "tag", + "type": "str" + }, + { + "default-value": 1, + "name": "num-request-queues", + "type": "uint16" + }, + { + "name": "bootindex", + "type": "int32" + } + ], + "id": "libvirt-30" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-31" +} + +{ + "return": [ + { + "name": "failover_pair_id", + "type": "str" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "migrate-extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "ats", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-ignore-backend-features", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-pm-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "aer", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-flr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-lnkctl-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-ats-page-aligned", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "page-per-vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-deverr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "virtio-pci-bus-master-bug-migration", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "modern-pio-notify", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-pcie", + "description": "on/off", + "type": "bool" + }, + { + "default-value": "auto", + "name": "disable-legacy", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": false, + "name": "disable-modern", + "type": "bool" + }, + { + "default-value": 0, + "name": "len-reserved-regions", + "type": "uint32" + }, + { + "default-value": 0, + "name": "class", + "type": "uint32" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "default-value": true, + "name": "queue_reset", + "description": "on/off", + "type": "bool" + }, + { + "name": "virtio-backend", + "type": "child<virtio-iommu-device>" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "boot-bypass", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": true, + "name": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "name": "primary-bus", + "type": "link<PCI>" + } + ], + "id": "libvirt-31" +} + +{ + "execute": "qom-list-properties", + "arguments": { + "typename": "memory-backend-file" + }, + "id": "libvirt-32" +} + +{ + "return": [ + { + "name": "type", + "type": "string" + }, + { + "name": "share", + "description": "Mark the memory as private to QEMU or shared", + "type": "bool" + }, + { + "name": "size", + "description": "Size of the memory region (ex: 500M)", + "type": "int" + }, + { + "name": "dump", + "description": "Set to 'off' to exclude from core dump", + "type": "bool" + }, + { + "name": "prealloc-threads", + "description": "Number of CPU threads to use for prealloc", + "type": "int" + }, + { + "name": "x-use-canonical-path-for-ramblock-id", + "type": "bool" + }, + { + "name": "policy", + "description": "Set the NUMA policy", + "type": "HostMemPolicy" + }, + { + "name": "prealloc-context", + "description": "Context to use for creating CPU threads for preallocation", + "type": "link<thread-context>" + }, + { + "name": "prealloc", + "description": "Preallocate memory", + "type": "bool" + }, + { + "name": "reserve", + "description": "Reserve swap space (or huge pages) if applicable", + "type": "bool" + }, + { + "name": "host-nodes", + "description": "Binds memory to the list of NUMA host nodes", + "type": "int" + }, + { + "name": "merge", + "description": "Mark memory as mergeable", + "type": "bool" + }, + { + "name": "readonly", + "type": "bool" + }, + { + "name": "align", + "type": "int" + }, + { + "name": "pmem", + "type": "bool" + }, + { + "name": "mem-path", + "type": "string" + }, + { + "name": "discard-data", + "type": "bool" + } + ], + "id": "libvirt-32" +} + +{ + "execute": "qom-list-properties", + "arguments": { + "typename": "memory-backend-memfd" + }, + "id": "libvirt-33" +} + +{ + "return": [ + { + "name": "type", + "type": "string" + }, + { + "name": "share", + "description": "Mark the memory as private to QEMU or shared", + "type": "bool" + }, + { + "name": "size", + "description": "Size of the memory region (ex: 500M)", + "type": "int" + }, + { + "name": "dump", + "description": "Set to 'off' to exclude from core dump", + "type": "bool" + }, + { + "name": "prealloc-threads", + "description": "Number of CPU threads to use for prealloc", + "type": "int" + }, + { + "name": "x-use-canonical-path-for-ramblock-id", + "type": "bool" + }, + { + "name": "policy", + "description": "Set the NUMA policy", + "type": "HostMemPolicy" + }, + { + "name": "prealloc-context", + "description": "Context to use for creating CPU threads for preallocation", + "type": "link<thread-context>" + }, + { + "name": "prealloc", + "description": "Preallocate memory", + "type": "bool" + }, + { + "name": "reserve", + "description": "Reserve swap space (or huge pages) if applicable", + "type": "bool" + }, + { + "name": "host-nodes", + "description": "Binds memory to the list of NUMA host nodes", + "type": "int" + }, + { + "name": "merge", + "description": "Mark memory as mergeable", + "type": "bool" + }, + { + "name": "hugetlb", + "description": "Use huge pages", + "type": "bool" + }, + { + "name": "seal", + "description": "Seal growing & shrinking", + "type": "bool" + }, + { + "name": "hugetlbsize", + "description": "Huge pages size (ex: 2M, 1G)", + "type": "int" + } + ], + "id": "libvirt-33" +} + +{ + "execute": "query-machines", + "id": "libvirt-34" +} + +{ + "return": [ + { + "hotpluggable-cpus": false, + "name": "virtex-ml507", + "numa-mem-supported": false, + "default-cpu-type": "440-xilinx-powerpc-cpu", + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ram" + }, + { + "hotpluggable-cpus": false, + "name": "mac99", + "numa-mem-supported": false, + "default-cpu-type": "7400_v2.9-powerpc-cpu", + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ppc_core99.ram" + }, + { + "hotpluggable-cpus": false, + "name": "ppce500", + "numa-mem-supported": false, + "default-cpu-type": "e500v2_v30-powerpc-cpu", + "cpu-max": 32, + "deprecated": false, + "default-ram-id": "mpc8544ds.ram" + }, + { + "hotpluggable-cpus": false, + "name": "sam460ex", + "numa-mem-supported": false, + "default-cpu-type": "460exb-powerpc-cpu", + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ppc4xx.sdram" + }, + { + "hotpluggable-cpus": false, + "name": "pegasos2", + "numa-mem-supported": false, + "default-cpu-type": "7400_v2.9-powerpc-cpu", + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "pegasos2.ram" + }, + { + "hotpluggable-cpus": false, + "name": "none", + "numa-mem-supported": false, + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ram" + }, + { + "hotpluggable-cpus": false, + "name": "bamboo", + "numa-mem-supported": false, + "default-cpu-type": "440epb-powerpc-cpu", + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ppc4xx.sdram" + }, + { + "hotpluggable-cpus": false, + "name": "40p", + "numa-mem-supported": false, + "default-cpu-type": "604-powerpc-cpu", + "cpu-max": 1, + "deprecated": false + }, + { + "hotpluggable-cpus": false, + "name": "ref405ep", + "numa-mem-supported": false, + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ppc405.ram" + }, + { + "hotpluggable-cpus": false, + "name": "g3beige", + "numa-mem-supported": false, + "default-cpu-type": "750_v3.1-powerpc-cpu", + "is-default": true, + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ppc_heathrow.ram" + }, + { + "hotpluggable-cpus": false, + "name": "mpc8544ds", + "numa-mem-supported": false, + "default-cpu-type": "e500v2_v30-powerpc-cpu", + "cpu-max": 15, + "deprecated": false, + "default-ram-id": "mpc8544ds.ram" + } + ], + "id": "libvirt-34" +} + +{ + "execute": "qom-list-properties", + "arguments": { + "typename": "none-machine" + }, + "id": "libvirt-35" +} + +{ + "return": [ + { + "name": "type", + "type": "string" + }, + { + "name": "kernel", + "description": "Linux kernel image file", + "type": "string" + }, + { + "name": "dt-compatible", + "description": "Overrides the \"compatible\" property of the dt root node", + "type": "string" + }, + { + "name": "boot", + "description": "Boot configuration", + "type": "BootConfiguration" + }, + { + "name": "memory", + "description": "Memory size configuration", + "type": "MemorySizeConfiguration" + }, + { + "name": "initrd", + "description": "Linux initial ramdisk file", + "type": "string" + }, + { + "name": "confidential-guest-support", + "description": "Set confidential guest scheme to support", + "type": "link<confidential-guest-support>" + }, + { + "name": "graphics", + "description": "Set on/off to enable/disable graphics emulation", + "type": "bool" + }, + { + "name": "usb", + "description": "Set on/off to enable/disable usb", + "type": "bool" + }, + { + "name": "firmware", + "description": "Firmware image", + "type": "string" + }, + { + "name": "memory-encryption", + "description": "Set memory encryption object to use", + "type": "string" + }, + { + "name": "smp", + "description": "CPU topology", + "type": "SMPConfiguration" + }, + { + "name": "dump-guest-core", + "description": "Include guest memory in a core dump", + "type": "bool" + }, + { + "name": "phandle-start", + "description": "The first phandle ID we may generate dynamically", + "type": "int" + }, + { + "name": "dumpdtb", + "description": "Dump current dtb to a file and quit", + "type": "string" + }, + { + "name": "memory-backend", + "description": "Set RAM backendValid value is ID of hostmem based backend", + "type": "link<memory-backend>" + }, + { + "name": "dtb", + "description": "Linux kernel device tree file", + "type": "string" + }, + { + "name": "mem-merge", + "description": "Enable/disable memory merge support", + "type": "bool" + }, + { + "name": "append", + "description": "Linux kernel command line", + "type": "string" + }, + { + "name": "suppress-vmdesc", + "description": "Set on to disable self-describing migration", + "type": "bool" + }, + { + "name": "peripheral-anon", + "type": "child<container>" + }, + { + "name": "peripheral", + "type": "child<container>" + } + ], + "id": "libvirt-35" +} + +{ + "execute": "query-cpu-definitions", + "id": "libvirt-36" +} + +{ + "return": [ + { + "name": "ppc", + "typename": "604-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "ppc32", + "typename": "604-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "apollo7pm", + "typename": "7457a_v1.0-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7457a", + "typename": "7457a_v1.2-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7447a", + "typename": "7447a_v1.2-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "apollo7", + "typename": "7457_v1.2-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7457", + "typename": "7457_v1.2-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7447", + "typename": "7447_v1.1-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "apollo6", + "typename": "7455_v3.2-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7455", + "typename": "7455_v3.2-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7445", + "typename": "7445_v3.2-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7451", + "typename": "7451_v2.3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7441", + "typename": "7441_v2.3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "vger", + "typename": "7450_v2.1-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7450", + "typename": "7450_v2.1-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7448", + "typename": "7448_v2.1-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "nitro", + "typename": "7410_v1.4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7410", + "typename": "7410_v1.4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "g4", + "typename": "7400_v2.9-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7400", + "typename": "7400_v2.9-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "goldfinger", + "typename": "755_v2.8-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "755", + "typename": "755_v2.8-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "745", + "typename": "745_v2.8-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "lonestar", + "typename": "750l_v3.2-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750l", + "typename": "750l_v3.2-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750gx", + "typename": "750gx_v1.2-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750fx", + "typename": "750fx_v2.3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750cxe", + "typename": "750cxe_v3.1b-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750cx", + "typename": "750cx_v2.2-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750cl", + "typename": "750cl_v2.0-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "conan/doyle", + "typename": "750p-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "g3", + "typename": "750_v3.1-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "typhoon", + "typename": "750_v3.1-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750", + "typename": "750_v3.1-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "arthur", + "typename": "740_v3.1-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "740", + "typename": "740_v3.1-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mach5", + "typename": "604r-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "sirocco", + "typename": "604e_v2.4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "604e", + "typename": "604e_v2.4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "goldeneye", + "typename": "603e7t-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "603r", + "typename": "603e7t-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "vaillant", + "typename": "603e7v-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "stretch", + "typename": "603e_v4.1-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "603e", + "typename": "603e_v4.1-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "vanilla", + "typename": "603-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8560", + "typename": "mpc8560_v21-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555e", + "typename": "mpc8555e_v11-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555", + "typename": "mpc8555_v11-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e", + "typename": "mpc8548e_v21-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548", + "typename": "mpc8548_v21-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8547e", + "typename": "mpc8547e_v21-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545e", + "typename": "mpc8545e_v21-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545", + "typename": "mpc8545_v21-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544e", + "typename": "mpc8544e_v11-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544", + "typename": "mpc8544_v11-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e", + "typename": "mpc8543e_v21-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543", + "typename": "mpc8543_v21-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541e", + "typename": "mpc8541e_v11-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541", + "typename": "mpc8541_v11-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8540", + "typename": "mpc8540_v21-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533e", + "typename": "mpc8533e_v11-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533", + "typename": "mpc8533_v11-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e500v2", + "typename": "e500v2_v22-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e500v1", + "typename": "e500_v20-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e500", + "typename": "e500v2_v22-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347ea", + "typename": "mpc8347eat-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347e", + "typename": "mpc8347et-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347a", + "typename": "mpc8347at-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347", + "typename": "mpc8347t-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e300", + "typename": "e300c3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e200", + "typename": "e200z6-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8280", + "typename": "g2legp3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8275", + "typename": "g2legp3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8272", + "typename": "g2legp3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8271", + "typename": "g2legp3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8270", + "typename": "g2legp3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8266_hip4", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8266_hip3", + "typename": "g2hip3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8266", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8265_hip4", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8265_hip3", + "typename": "g2hip3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8265", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8264_hip4", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8264_hip3", + "typename": "g2hip3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8264", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8260_hip4", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8260_hip3", + "typename": "g2hip3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8260", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8255_hip4", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8255_hip3", + "typename": "g2hip3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8255", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8250_hip4", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8250_hip3", + "typename": "g2hip3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8250", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8248", + "typename": "g2legp3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8247", + "typename": "g2legp3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8245", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8241", + "typename": "g2hip4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "powerquicc-ii", + "typename": "g2legp3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc82xx", + "typename": "g2legp3-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200b", + "typename": "mpc5200b_v21-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200", + "typename": "mpc5200_v12-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc52xx", + "typename": "mpc5200_v12-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8240", + "typename": "603-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "460ex", + "typename": "460exb-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "440ep", + "typename": "440epb-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "x2vp50", + "typename": "x2vp20-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "x2vp7", + "typename": "x2vp4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "405gpe", + "typename": "405crc-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "405gp", + "typename": "405gpd-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "405cr", + "typename": "405crc-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "405", + "typename": "405d4-powerpc-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7447a_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405crc", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7v1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cx_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447a_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.7", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8343e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405crb", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750gx_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v22", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447a_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7v", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750gx_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "x2vp4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2legp3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "460exb", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "npe405h", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8349ea", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545e_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2h4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457a_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2lels", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.6", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8378e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8641", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2legp1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.8", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8572", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457a_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2gp", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405cra", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.5", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347ap", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750gx_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604e_v2.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440epb", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e200z6", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347eat", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8567e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8568", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7t", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8540_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2hip4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v3.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440epa", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e200z5", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8567", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200_v12", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8343a", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2legp", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc603", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347t", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500mc", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8540_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fl", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405d4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347et", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cx_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.7", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457a_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8379", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8560_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7448_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "stb04", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v1.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.6", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8378", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7448_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v1.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "x2vp20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8377", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750p", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2hip3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604e_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v3.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604r", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200b_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8349", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "stb03", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347eap", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405d2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v3.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "npe4gs3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.5", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e600", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "stb25", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cl_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.9", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v3.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v3.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405ep", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8610", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.8", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v3.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200b_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "npe405h2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347p", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7448_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpr", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8377e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347ep", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440epx", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7448_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8547e_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v3.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7441_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7441_v2.10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8349e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpd", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8547e_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740p", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v3.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v4.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e300c4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.7", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpc", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v3.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405lp", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e300c3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8540_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8379e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.6", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpb", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v3.1b", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440-xilinx", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8560_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v30", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8568e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cl_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7441_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7451_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8343ea", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405ez", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v3.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxr", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604e_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e300c2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpa", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7451_v2.10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cx_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e300c1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347at", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8349a", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.4b", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8572e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "npe405l", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8560_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603p", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440-xilinx-w-dfpu", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8641d", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750gl", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2ls", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8343", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2le", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545e_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7v2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cx_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.8", + "typename": "", + "static": false, + "deprecated": false + } + ], + "id": "libvirt-36" +} + +{ + "execute": "query-tpm-models", + "id": "libvirt-37" +} + +{ + "return": [ + ], + "id": "libvirt-37" +} + +{ + "execute": "query-tpm-types", + "id": "libvirt-38" +} + +{ + "return": [ + ], + "id": "libvirt-38" +} + +{ + "execute": "query-command-line-options", + "id": "libvirt-39" +} + +{ + "return": [ + { + "parameters": [ + { + "name": "loadparm", + "help": "Up to 8 chars in set of [A-Za-z0-9. ](lower case chars converted to upper case) to pass to machine loader, boot manager, and guest kernel", + "type": "string" + }, + { + "name": "dea-key-wrap", + "help": "enable/disable DEA key wrapping using the CPACF wrapping key", + "type": "boolean" + }, + { + "name": "aes-key-wrap", + "help": "enable/disable AES key wrapping using the CPACF wrapping key", + "type": "boolean" + }, + { + "name": "suppress-vmdesc", + "help": "Set on to disable self-describing migration", + "type": "boolean" + }, + { + "name": "iommu", + "help": "Set on/off to enable/disable Intel IOMMU (VT-d)", + "type": "boolean" + }, + { + "name": "firmware", + "help": "firmware image", + "type": "string" + }, + { + "name": "usb", + "help": "Set on/off to enable/disable usb", + "type": "boolean" + }, + { + "name": "mem-merge", + "help": "enable/disable memory merge support", + "type": "boolean" + }, + { + "name": "dump-guest-core", + "help": "Include guest memory in a core dump", + "type": "boolean" + }, + { + "name": "dt_compatible", + "help": "Overrides the \"compatible\" property of the dt root node", + "type": "string" + }, + { + "name": "phandle_start", + "help": "The first phandle ID we may generate dynamically", + "type": "number" + }, + { + "name": "dumpdtb", + "help": "Dump current dtb to a file and quit", + "type": "string" + }, + { + "name": "dtb", + "help": "Linux kernel device tree file", + "type": "string" + }, + { + "name": "append", + "help": "Linux kernel command line", + "type": "string" + }, + { + "name": "initrd", + "help": "Linux initial ramdisk file", + "type": "string" + }, + { + "name": "kernel", + "help": "Linux kernel image file", + "type": "string" + }, + { + "name": "kvm_shadow_mem", + "help": "KVM shadow MMU size", + "type": "size" + }, + { + "name": "kernel_irqchip", + "help": "use KVM in-kernel irqchip", + "type": "boolean" + }, + { + "name": "accel", + "help": "accelerator list", + "type": "string" + }, + { + "name": "type", + "help": "emulated machine", + "type": "string" + } + ], + "option": "machine" + }, + { + "parameters": [ + { + "name": "rendernode", + "type": "string" + }, + { + "name": "gl", + "type": "boolean" + }, + { + "name": "head", + "type": "number" + }, + { + "name": "display", + "type": "string" + }, + { + "name": "seamless-migration", + "type": "boolean" + }, + { + "name": "playback-compression", + "type": "boolean" + }, + { + "name": "agent-mouse", + "type": "boolean" + }, + { + "name": "streaming-video", + "type": "string" + }, + { + "name": "zlib-glz-wan-compression", + "type": "string" + }, + { + "name": "jpeg-wan-compression", + "type": "string" + }, + { + "name": "image-compression", + "type": "string" + }, + { + "name": "plaintext-channel", + "type": "string" + }, + { + "name": "tls-channel", + "type": "string" + }, + { + "name": "tls-ciphers", + "type": "string" + }, + { + "name": "x509-dh-key-file", + "type": "string" + }, + { + "name": "x509-cacert-file", + "type": "string" + }, + { + "name": "x509-cert-file", + "type": "string" + }, + { + "name": "x509-key-password", + "type": "string" + }, + { + "name": "x509-key-file", + "type": "string" + }, + { + "name": "x509-dir", + "type": "string" + }, + { + "name": "sasl", + "type": "boolean" + }, + { + "name": "disable-agent-file-xfer", + "type": "boolean" + }, + { + "name": "disable-copy-paste", + "type": "boolean" + }, + { + "name": "disable-ticketing", + "type": "boolean" + }, + { + "name": "password-secret", + "type": "string" + }, + { + "name": "password", + "type": "string" + }, + { + "name": "unix", + "type": "boolean" + }, + { + "name": "ipv6", + "type": "boolean" + }, + { + "name": "ipv4", + "type": "boolean" + }, + { + "name": "addr", + "type": "string" + }, + { + "name": "tls-port", + "type": "number" + }, + { + "name": "port", + "type": "number" + } + ], + "option": "spice" + }, + { + "parameters": [ + { + "name": "timeout", + "help": "Request timeout in seconds (default 0 = no timeout)", + "type": "number" + }, + { + "name": "initiator-name", + "help": "Initiator iqn name to use when connecting", + "type": "string" + }, + { + "name": "header-digest", + "help": "HeaderDigest setting. {CRC32C|CRC32C-NONE|NONE-CRC32C|NONE}", + "type": "string" + }, + { + "name": "password-secret", + "help": "ID of the secret providing password for CHAP authentication to target", + "type": "string" + }, + { + "name": "password", + "help": "password for CHAP authentication to target", + "type": "string" + }, + { + "name": "user", + "help": "username for CHAP authentication to target", + "type": "string" + } + ], + "option": "iscsi" + }, + { + "parameters": [ + { + "name": "resourcecontrol", + "type": "string" + }, + { + "name": "spawn", + "type": "string" + }, + { + "name": "elevateprivileges", + "type": "string" + }, + { + "name": "obsolete", + "type": "string" + }, + { + "name": "enable", + "type": "boolean" + } + ], + "option": "sandbox" + }, + { + "parameters": [ + { + "name": "dmode", + "type": "number" + }, + { + "name": "fmode", + "type": "number" + }, + { + "name": "sock_fd", + "type": "number" + }, + { + "name": "socket", + "type": "string" + }, + { + "name": "multidevs", + "type": "string" + }, + { + "name": "readonly", + "type": "boolean" + }, + { + "name": "writeout", + "type": "string" + }, + { + "name": "security_model", + "type": "string" + }, + { + "name": "mount_tag", + "type": "string" + }, + { + "name": "path", + "type": "string" + }, + { + "name": "fsdriver", + "type": "string" + } + ], + "option": "virtfs" + }, + { + "parameters": [ + { + "name": "throttling.iops-size", + "help": "when limiting by iops max size of an I/O in bytes", + "type": "number" + }, + { + "name": "throttling.bps-write-max-length", + "help": "length of the bps-write-max burst period, in seconds", + "type": "number" + }, + { + "name": "throttling.bps-read-max-length", + "help": "length of the bps-read-max burst period, in seconds", + "type": "number" + }, + { + "name": "throttling.bps-total-max-length", + "help": "length of the bps-total-max burst period, in seconds", + "type": "number" + }, + { + "name": "throttling.iops-write-max-length", + "help": "length of the iops-write-max burst period, in seconds", + "type": "number" + }, + { + "name": "throttling.iops-read-max-length", + "help": "length of the iops-read-max burst period, in seconds", + "type": "number" + }, + { + "name": "throttling.iops-total-max-length", + "help": "length of the iops-total-max burst period, in seconds", + "type": "number" + }, + { + "name": "throttling.bps-write-max", + "help": "total bytes write burst", + "type": "number" + }, + { + "name": "throttling.bps-read-max", + "help": "total bytes read burst", + "type": "number" + }, + { + "name": "throttling.bps-total-max", + "help": "total bytes burst", + "type": "number" + }, + { + "name": "throttling.iops-write-max", + "help": "I/O operations write burst", + "type": "number" + }, + { + "name": "throttling.iops-read-max", + "help": "I/O operations read burst", + "type": "number" + }, + { + "name": "throttling.iops-total-max", + "help": "I/O operations burst", + "type": "number" + }, + { + "name": "throttling.bps-write", + "help": "limit write bytes per second", + "type": "number" + }, + { + "name": "throttling.bps-read", + "help": "limit read bytes per second", + "type": "number" + }, + { + "name": "throttling.bps-total", + "help": "limit total bytes per second", + "type": "number" + }, + { + "name": "throttling.iops-write", + "help": "limit write operations per second", + "type": "number" + }, + { + "name": "throttling.iops-read", + "help": "limit read operations per second", + "type": "number" + }, + { + "name": "throttling.iops-total", + "help": "limit total I/O operations per second", + "type": "number" + }, + { + "name": "dmode", + "type": "number" + }, + { + "name": "fmode", + "type": "number" + }, + { + "name": "sock_fd", + "type": "number" + }, + { + "name": "socket", + "type": "string" + }, + { + "name": "multidevs", + "type": "string" + }, + { + "name": "readonly", + "type": "boolean" + }, + { + "name": "writeout", + "type": "string" + }, + { + "name": "security_model", + "type": "string" + }, + { + "name": "path", + "type": "string" + }, + { + "name": "fsdriver", + "type": "string" + } + ], + "option": "fsdev" + }, + { + "parameters": [ + ], + "option": "acpi" + }, + { + "parameters": [ + { + "name": "power-control", + "type": "boolean" + }, + { + "name": "audiodev", + "type": "string" + }, + { + "name": "non-adaptive", + "type": "boolean" + }, + { + "name": "lossy", + "type": "boolean" + }, + { + "name": "sasl-authz", + "type": "string" + }, + { + "name": "tls-authz", + "type": "string" + }, + { + "name": "sasl", + "type": "boolean" + }, + { + "name": "key-delay-ms", + "type": "number" + }, + { + "name": "lock-key-sync", + "type": "boolean" + }, + { + "name": "reverse", + "type": "boolean" + }, + { + "name": "password-secret", + "type": "string" + }, + { + "name": "password", + "type": "boolean" + }, + { + "name": "ipv6", + "type": "boolean" + }, + { + "name": "ipv4", + "type": "boolean" + }, + { + "name": "to", + "type": "number" + }, + { + "name": "connections", + "type": "number" + }, + { + "name": "head", + "type": "number" + }, + { + "name": "display", + "type": "string" + }, + { + "name": "share", + "type": "string" + }, + { + "name": "tls-creds", + "type": "string" + }, + { + "name": "websocket", + "type": "string" + }, + { + "name": "vnc", + "type": "string" + } + ], + "option": "vnc" + }, + { + "parameters": [ + { + "name": "watchdog", + "type": "string" + }, + { + "name": "panic", + "type": "string" + }, + { + "name": "reboot", + "type": "string" + }, + { + "name": "shutdown", + "type": "string" + } + ], + "option": "action" + }, + { + "parameters": [ + { + "name": "gen_id", + "help": "Sets id of the object generating the fw_cfg blob to be inserted", + "type": "string" + }, + { + "name": "string", + "help": "Sets content of the blob to be inserted from a string", + "type": "string" + }, + { + "name": "file", + "help": "Sets the name of the file from which the fw_cfg blob will be loaded", + "type": "string" + }, + { + "name": "name", + "help": "Sets the fw_cfg name of the blob to be inserted", + "type": "string" + } + ], + "option": "fw_cfg" + }, + { + "parameters": [ + ], + "option": "" + }, + { + "parameters": [ + { + "name": "rrsnapshot", + "type": "string" + }, + { + "name": "rrfile", + "type": "string" + }, + { + "name": "rr", + "type": "string" + }, + { + "name": "sleep", + "type": "boolean" + }, + { + "name": "align", + "type": "boolean" + }, + { + "name": "shift", + "type": "string" + } + ], + "option": "icount" + }, + { + "parameters": [ + ], + "option": "numa" + }, + { + "parameters": [ + { + "name": "debug-threads", + "help": "When enabled, name the individual threads; defaults off.\nNOTE: The thread names are for debugging and not a\nstable API.", + "type": "boolean" + }, + { + "name": "process", + "help": "Sets the name of the QEMU process, as shown in top etc", + "type": "string" + }, + { + "name": "guest", + "help": "Sets the name of the guest.\nThis name will be displayed in the SDL window caption.\nThe name will also be used for the VNC server", + "type": "string" + } + ], + "option": "name" + }, + { + "parameters": [ + { + "name": "guest-name", + "help": "Prepends guest name for error messages but only if -name guest is set otherwise option is ignored\n", + "type": "boolean" + }, + { + "name": "timestamp", + "type": "boolean" + } + ], + "option": "msg" + }, + { + "parameters": [ + { + "name": "cpu-pm", + "type": "boolean" + }, + { + "name": "mem-lock", + "type": "boolean" + } + ], + "option": "overcommit" + }, + { + "parameters": [ + ], + "option": "tpmdev" + }, + { + "parameters": [ + ], + "option": "object" + }, + { + "parameters": [ + { + "name": "opaque", + "help": "free-form string used to describe fd", + "type": "string" + }, + { + "name": "set", + "help": "ID of the fd set to add fd to", + "type": "number" + }, + { + "name": "fd", + "help": "file descriptor of which a duplicate is added to fd set", + "type": "number" + } + ], + "option": "add-fd" + }, + { + "parameters": [ + { + "name": "strict", + "type": "boolean" + }, + { + "name": "reboot-timeout", + "type": "number" + }, + { + "name": "splash-time", + "type": "number" + }, + { + "name": "splash", + "type": "string" + }, + { + "name": "menu", + "type": "boolean" + }, + { + "name": "once", + "type": "string" + }, + { + "name": "order", + "type": "string" + } + ], + "option": "boot-opts" + }, + { + "parameters": [ + { + "name": "maxcpus", + "type": "number" + }, + { + "name": "threads", + "type": "number" + }, + { + "name": "cores", + "type": "number" + }, + { + "name": "clusters", + "type": "number" + }, + { + "name": "dies", + "type": "number" + }, + { + "name": "sockets", + "type": "number" + }, + { + "name": "cpus", + "type": "number" + } + ], + "option": "smp-opts" + }, + { + "parameters": [ + { + "name": "maxmem", + "type": "size" + }, + { + "name": "slots", + "type": "number" + }, + { + "name": "size", + "type": "size" + } + ], + "option": "memory" + }, + { + "parameters": [ + ], + "option": "accel" + }, + { + "parameters": [ + { + "name": "romfile", + "type": "string" + }, + { + "name": "bootindex", + "type": "number" + } + ], + "option": "option-rom" + }, + { + "parameters": [ + { + "name": "file", + "type": "string" + }, + { + "name": "events", + "type": "string" + }, + { + "name": "enable", + "type": "string" + } + ], + "option": "trace" + }, + { + "parameters": [ + { + "name": "pretty", + "type": "boolean" + }, + { + "name": "chardev", + "type": "string" + }, + { + "name": "mode", + "type": "string" + } + ], + "option": "mon" + }, + { + "parameters": [ + { + "name": "value", + "type": "string" + }, + { + "name": "property", + "type": "string" + }, + { + "name": "driver", + "type": "string" + } + ], + "option": "global" + }, + { + "parameters": [ + { + "name": "driftfix", + "type": "string" + }, + { + "name": "clock", + "type": "string" + }, + { + "name": "base", + "type": "string" + } + ], + "option": "rtc" + }, + { + "parameters": [ + ], + "option": "net" + }, + { + "parameters": [ + ], + "option": "nic" + }, + { + "parameters": [ + ], + "option": "netdev" + }, + { + "parameters": [ + ], + "option": "device" + }, + { + "parameters": [ + { + "name": "abstract", + "type": "boolean" + }, + { + "name": "tight", + "default": "on", + "type": "boolean" + }, + { + "name": "clipboard", + "type": "boolean" + }, + { + "name": "mouse", + "type": "boolean" + }, + { + "name": "logappend", + "type": "boolean" + }, + { + "name": "logfile", + "type": "string" + }, + { + "name": "append", + "type": "boolean" + }, + { + "name": "chardev", + "type": "string" + }, + { + "name": "size", + "type": "size" + }, + { + "name": "debug", + "type": "number" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "signal", + "type": "boolean" + }, + { + "name": "mux", + "type": "boolean" + }, + { + "name": "rows", + "type": "number" + }, + { + "name": "cols", + "type": "number" + }, + { + "name": "height", + "type": "number" + }, + { + "name": "width", + "type": "number" + }, + { + "name": "websocket", + "type": "boolean" + }, + { + "name": "tls-authz", + "type": "string" + }, + { + "name": "tls-creds", + "type": "string" + }, + { + "name": "tn3270", + "type": "boolean" + }, + { + "name": "telnet", + "type": "boolean" + }, + { + "name": "reconnect", + "type": "number" + }, + { + "name": "nodelay", + "type": "boolean" + }, + { + "name": "delay", + "type": "boolean" + }, + { + "name": "server", + "type": "boolean" + }, + { + "name": "wait", + "type": "boolean" + }, + { + "name": "ipv6", + "type": "boolean" + }, + { + "name": "ipv4", + "type": "boolean" + }, + { + "name": "to", + "type": "number" + }, + { + "name": "localport", + "type": "string" + }, + { + "name": "localaddr", + "type": "string" + }, + { + "name": "fd", + "type": "string" + }, + { + "name": "port", + "type": "string" + }, + { + "name": "host", + "type": "string" + }, + { + "name": "path", + "type": "string" + }, + { + "name": "backend", + "type": "string" + } + ], + "option": "chardev" + }, + { + "parameters": [ + { + "name": "copy-on-read", + "help": "copy read data from backing file into image file", + "type": "boolean" + }, + { + "name": "werror", + "help": "write error action", + "type": "string" + }, + { + "name": "rerror", + "help": "read error action", + "type": "string" + }, + { + "name": "read-only", + "help": "open drive file as read-only", + "type": "boolean" + }, + { + "name": "file", + "help": "file name", + "type": "string" + }, + { + "name": "if", + "help": "interface (ide, scsi, sd, mtd, floppy, pflash, virtio)", + "type": "string" + }, + { + "name": "media", + "help": "media type (disk, cdrom)", + "type": "string" + }, + { + "name": "index", + "help": "index number", + "type": "number" + }, + { + "name": "unit", + "help": "unit number (i.e. lun for scsi)", + "type": "number" + }, + { + "name": "bus", + "help": "bus number", + "type": "number" + }, + { + "name": "stats-account-failed", + "help": "whether to account for failed I/O operations in the statistics", + "type": "boolean" + }, + { + "name": "stats-account-invalid", + "help": "whether to account for invalid I/O operations in the statistics", + "type": "boolean" + }, + { + "name": "detect-zeroes", + "help": "try to optimize zero writes (off, on, unmap)", + "type": "string" + }, + { + "name": "throttling.group", + "help": "name of the block throttling group", + "type": "string" + }, + { + "name": "throttling.iops-size", + "help": "when limiting by iops max size of an I/O in bytes", + "type": "number" + }, + { + "name": "throttling.bps-write-max-length", + "help": "length of the bps-write-max burst period, in seconds", + "type": "number" + }, + { + "name": "throttling.bps-read-max-length", + "help": "length of the bps-read-max burst period, in seconds", + "type": "number" + }, + { + "name": "throttling.bps-total-max-length", + "help": "length of the bps-total-max burst period, in seconds", + "type": "number" + }, + { + "name": "throttling.iops-write-max-length", + "help": "length of the iops-write-max burst period, in seconds", + "type": "number" + }, + { + "name": "throttling.iops-read-max-length", + "help": "length of the iops-read-max burst period, in seconds", + "type": "number" + }, + { + "name": "throttling.iops-total-max-length", + "help": "length of the iops-total-max burst period, in seconds", + "type": "number" + }, + { + "name": "throttling.bps-write-max", + "help": "total bytes write burst", + "type": "number" + }, + { + "name": "throttling.bps-read-max", + "help": "total bytes read burst", + "type": "number" + }, + { + "name": "throttling.bps-total-max", + "help": "total bytes burst", + "type": "number" + }, + { + "name": "throttling.iops-write-max", + "help": "I/O operations write burst", + "type": "number" + }, + { + "name": "throttling.iops-read-max", + "help": "I/O operations read burst", + "type": "number" + }, + { + "name": "throttling.iops-total-max", + "help": "I/O operations burst", + "type": "number" + }, + { + "name": "throttling.bps-write", + "help": "limit write bytes per second", + "type": "number" + }, + { + "name": "throttling.bps-read", + "help": "limit read bytes per second", + "type": "number" + }, + { + "name": "throttling.bps-total", + "help": "limit total bytes per second", + "type": "number" + }, + { + "name": "throttling.iops-write", + "help": "limit write operations per second", + "type": "number" + }, + { + "name": "throttling.iops-read", + "help": "limit read operations per second", + "type": "number" + }, + { + "name": "throttling.iops-total", + "help": "limit total I/O operations per second", + "type": "number" + }, + { + "name": "werror", + "help": "write error action", + "type": "string" + }, + { + "name": "format", + "help": "disk format (raw, qcow2, ...)", + "type": "string" + }, + { + "name": "cache.writeback", + "help": "Enable writeback mode", + "type": "boolean" + }, + { + "name": "aio", + "help": "host AIO implementation (threads, native, io_uring)", + "type": "string" + }, + { + "name": "snapshot", + "help": "enable/disable snapshot mode", + "type": "boolean" + }, + { + "name": "force-share", + "help": "always accept other writers (default: off)", + "type": "boolean" + }, + { + "name": "discard", + "help": "discard operation (ignore/off, unmap/on)", + "type": "string" + }, + { + "name": "auto-read-only", + "help": "Node can become read-only if opening read-write fails", + "type": "boolean" + }, + { + "name": "cache.no-flush", + "help": "Ignore flush requests", + "type": "boolean" + }, + { + "name": "cache.direct", + "help": "Bypass software writeback cache on the host", + "type": "boolean" + }, + { + "name": "driver", + "help": "Block driver to use for the node", + "type": "string" + }, + { + "name": "node-name", + "help": "Node name of the block device node", + "type": "string" + } + ], + "option": "drive" + } + ], + "id": "libvirt-39" +} + +{ + "execute": "query-migrate-capabilities", + "id": "libvirt-40" +} + +{ + "return": [ + { + "state": false, + "capability": "xbzrle" + }, + { + "state": false, + "capability": "rdma-pin-all" + }, + { + "state": false, + "capability": "auto-converge" + }, + { + "state": false, + "capability": "zero-blocks" + }, + { + "state": false, + "capability": "compress" + }, + { + "state": false, + "capability": "events" + }, + { + "state": false, + "capability": "postcopy-ram" + }, + { + "state": false, + "capability": "x-colo" + }, + { + "state": false, + "capability": "release-ram" + }, + { + "state": false, + "capability": "block" + }, + { + "state": false, + "capability": "return-path" + }, + { + "state": false, + "capability": "pause-before-switchover" + }, + { + "state": false, + "capability": "multifd" + }, + { + "state": false, + "capability": "dirty-bitmaps" + }, + { + "state": false, + "capability": "postcopy-blocktime" + }, + { + "state": false, + "capability": "late-block-activate" + }, + { + "state": false, + "capability": "x-ignore-shared" + }, + { + "state": false, + "capability": "validate-uuid" + }, + { + "state": false, + "capability": "background-snapshot" + }, + { + "state": false, + "capability": "zero-copy-send" + }, + { + "state": false, + "capability": "postcopy-preempt" + } + ], + "id": "libvirt-40" +} diff --git a/tests/qemucapabilitiesdata/caps_7.2.0.ppc.xml b/tests/qemucapabilitiesdata/caps_7.2.0.ppc.xml new file mode 100644 index 0000000000..b23ac7f8e4 --- /dev/null +++ b/tests/qemucapabilitiesdata/caps_7.2.0.ppc.xml @@ -0,0 +1,559 @@ +<qemuCaps> + <emulator>/usr/bin/qemu-system-ppc</emulator> + <qemuctime>0</qemuctime> + <selfctime>0</selfctime> + <selfvers>0</selfvers> + <flag name='sdl'/> + <flag name='spice'/> + <flag name='hda-duplex'/> + <flag name='ccid-emulated'/> + <flag name='ccid-passthru'/> + <flag name='piix3-usb-uhci'/> + <flag name='piix4-usb-uhci'/> + <flag name='usb-ehci'/> + <flag name='ich9-usb-ehci1'/> + <flag name='vt82c686b-usb-uhci'/> + <flag name='pci-ohci'/> + <flag name='usb-redir'/> + <flag name='usb-hub'/> + <flag name='ich9-ahci'/> + <flag name='virtio-blk-pci.scsi'/> + <flag name='scsi-disk.channel'/> + <flag name='scsi-block'/> + <flag name='hda-micro'/> + <flag name='nec-usb-xhci'/> + <flag name='lsi'/> + <flag name='virtio-scsi-pci'/> + <flag name='disable-s3'/> + <flag name='disable-s4'/> + <flag name='usb-redir.filter'/> + <flag name='ide-drive.wwn'/> + <flag name='scsi-disk.wwn'/> + <flag name='seccomp-sandbox'/> + <flag name='vnc'/> + <flag name='VGA'/> + <flag name='cirrus-vga'/> + <flag name='vmware-svga'/> + <flag name='usb-serial'/> + <flag name='virtio-rng'/> + <flag name='rng-random'/> + <flag name='rng-egd'/> + <flag name='megasas'/> + <flag name='pci-bridge'/> + <flag name='vfio-pci'/> + <flag name='dmi-to-pci-bridge'/> + <flag name='usb-storage'/> + <flag name='usb-storage.removable'/> + <flag name='ich9-intel-hda'/> + <flag name='usb-kbd'/> + <flag name='usb-audio'/> + <flag name='iothread'/> + <flag name='migrate-rdma'/> + <flag name='VGA.vgamem_mb'/> + <flag name='vmware-svga.vgamem_mb'/> + <flag name='pci-serial'/> + <flag name='ioh3420'/> + <flag name='x3130-upstream'/> + <flag name='xio3130-downstream'/> + <flag name='rtl8139'/> + <flag name='e1000'/> + <flag name='virtio-net'/> + <flag name='virtio-gpu'/> + <flag name='virtio-keyboard'/> + <flag name='virtio-mouse'/> + <flag name='virtio-tablet'/> + <flag name='virtio-input-host'/> + <flag name='virtio-balloon-pci.deflate-on-oom'/> + <flag name='mptsas1068'/> + <flag name='spice-gl'/> + <flag name='query-hotpluggable-cpus'/> + <flag name='ivshmem-plain'/> + <flag name='ivshmem-doorbell'/> + <flag name='vhost-scsi'/> + <flag name='spice-rendernode'/> + <flag name='pcie-root-port'/> + <flag name='query-cpu-definitions'/> + <flag name='qemu-xhci'/> + <flag name='chardev-reconnect'/> + <flag name='isa-serial'/> + <flag name='pcie-pci-bridge'/> + <flag name='nbd-tls'/> + <flag name='pr-manager-helper'/> + <flag name='screendump_device'/> + <flag name='hda-output'/> + <flag name='vhost-vsock'/> + <flag name='egl-headless'/> + <flag name='vfio-pci.display'/> + <flag name='memory-backend-memfd'/> + <flag name='memory-backend-memfd.hugetlb'/> + <flag name='iothread.poll-max-ns'/> + <flag name='egl-headless.rendernode'/> + <flag name='memory-backend-file.pmem'/> + <flag name='virtio-pci-non-transitional'/> + <flag name='nbd-bitmap'/> + <flag name='bochs-display'/> + <flag name='migration-file-drop-cache'/> + <flag name='dbus-vmstate'/> + <flag name='vhost-user-gpu'/> + <flag name='incremental-backup'/> + <flag name='drive-nvme'/> + <flag name='smp-dies'/> + <flag name='i8042'/> + <flag name='rng-builtin'/> + <flag name='vhost-user-fs'/> + <flag name='query-named-block-nodes.flat'/> + <flag name='blockdev-snapshot.allow-write-only-overlay'/> + <flag name='blockdev-reopen'/> + <flag name='fsdev.multidevs'/> + <flag name='pcie-root-port.hotplug'/> + <flag name='aio.io_uring'/> + <flag name='tcg'/> + <flag name='virtio-blk-pci.scsi.default.disabled'/> + <flag name='pvscsi'/> + <flag name='numa.hmat'/> + <flag name='usb-host.hostdevice'/> + <flag name='virtio-balloon.free-page-reporting'/> + <flag name='block-export-add'/> + <flag name='netdev.vhost-vdpa'/> + <flag name='dc390'/> + <flag name='am53c974'/> + <flag name='vhost-user-fs.bootindex'/> + <flag name='vhost-user-blk'/> + <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/> + <flag name='migration-param.block-bitmap-mapping'/> + <flag name='vnc-power-control'/> + <flag name='object.qapified'/> + <flag name='rotation-rate'/> + <flag name='compat-deprecated'/> + <flag name='acpi-index'/> + <flag name='input-linux'/> + <flag name='virtio-gpu-gl-pci'/> + <flag name='confidential-guest-support'/> + <flag name='set-action'/> + <flag name='virtio-blk.queue-size'/> + <flag name='memory-backend-file.reserve'/> + <flag name='piix4.acpi-root-pci-hotplug'/> + <flag name='netdev.json'/> + <flag name='query-dirty-rate'/> + <flag name='rbd-encryption'/> + <flag name='sev-guest-kernel-hashes'/> + <flag name='device.json+hotplug'/> + <flag name='calc-dirty-rate'/> + <flag name='dirtyrate-param.mode'/> + <flag name='blockdev.nbd.tls-hostname'/> + <flag name='memory-backend-file.prealloc-threads'/> + <flag name='virtio-iommu-pci'/> + <flag name='virtio-iommu.boot-bypass'/> + <flag name='virtio-net.rss'/> + <flag name='chardev.qemu-vdagent'/> + <flag name='display-dbus'/> + <flag name='iothread.thread-pool-max'/> + <flag name='usb-host.guest-resets-all'/> + <flag name='migration.blocked-reasons'/> + <flag name='query-stats'/> + <flag name='query-stats-schemas'/> + <flag name='thread-context'/> + <flag name='screenshot-format-png'/> + <flag name='netdev.stream'/> + <flag name='virtio-crypto'/> + <flag name='pvpanic-pci'/> + <version>7002000</version> + <kvmVersion>0</kvmVersion> + <microcodeVersion>0</microcodeVersion> + <package>qemu-7.2.0-6.fc37</package> + <arch>ppc</arch> + <cpu type='tcg' name='ppc' typename='604-powerpc-cpu'/> + <cpu type='tcg' name='ppc32' typename='604-powerpc-cpu'/> + <cpu type='tcg' name='apollo7pm' typename='7457a_v1.0-powerpc-cpu'/> + <cpu type='tcg' name='7457a' typename='7457a_v1.2-powerpc-cpu'/> + <cpu type='tcg' name='7447a' typename='7447a_v1.2-powerpc-cpu'/> + <cpu type='tcg' name='apollo7' typename='7457_v1.2-powerpc-cpu'/> + <cpu type='tcg' name='7457' typename='7457_v1.2-powerpc-cpu'/> + <cpu type='tcg' name='7447' typename='7447_v1.1-powerpc-cpu'/> + <cpu type='tcg' name='apollo6' typename='7455_v3.2-powerpc-cpu'/> + <cpu type='tcg' name='7455' typename='7455_v3.2-powerpc-cpu'/> + <cpu type='tcg' name='7445' typename='7445_v3.2-powerpc-cpu'/> + <cpu type='tcg' name='7451' typename='7451_v2.3-powerpc-cpu'/> + <cpu type='tcg' name='7441' typename='7441_v2.3-powerpc-cpu'/> + <cpu type='tcg' name='vger' typename='7450_v2.1-powerpc-cpu'/> + <cpu type='tcg' name='7450' typename='7450_v2.1-powerpc-cpu'/> + <cpu type='tcg' name='7448' typename='7448_v2.1-powerpc-cpu'/> + <cpu type='tcg' name='nitro' typename='7410_v1.4-powerpc-cpu'/> + <cpu type='tcg' name='7410' typename='7410_v1.4-powerpc-cpu'/> + <cpu type='tcg' name='g4' typename='7400_v2.9-powerpc-cpu'/> + <cpu type='tcg' name='7400' typename='7400_v2.9-powerpc-cpu'/> + <cpu type='tcg' name='goldfinger' typename='755_v2.8-powerpc-cpu'/> + <cpu type='tcg' name='755' typename='755_v2.8-powerpc-cpu'/> + <cpu type='tcg' name='745' typename='745_v2.8-powerpc-cpu'/> + <cpu type='tcg' name='lonestar' typename='750l_v3.2-powerpc-cpu'/> + <cpu type='tcg' name='750l' typename='750l_v3.2-powerpc-cpu'/> + <cpu type='tcg' name='750gx' typename='750gx_v1.2-powerpc-cpu'/> + <cpu type='tcg' name='750fx' typename='750fx_v2.3-powerpc-cpu'/> + <cpu type='tcg' name='750cxe' typename='750cxe_v3.1b-powerpc-cpu'/> + <cpu type='tcg' name='750cx' typename='750cx_v2.2-powerpc-cpu'/> + <cpu type='tcg' name='750cl' typename='750cl_v2.0-powerpc-cpu'/> + <cpu type='tcg' name='conan/doyle' typename='750p-powerpc-cpu'/> + <cpu type='tcg' name='g3' typename='750_v3.1-powerpc-cpu'/> + <cpu type='tcg' name='typhoon' typename='750_v3.1-powerpc-cpu'/> + <cpu type='tcg' name='750' typename='750_v3.1-powerpc-cpu'/> + <cpu type='tcg' name='arthur' typename='740_v3.1-powerpc-cpu'/> + <cpu type='tcg' name='740' typename='740_v3.1-powerpc-cpu'/> + <cpu type='tcg' name='mach5' typename='604r-powerpc-cpu'/> + <cpu type='tcg' name='sirocco' typename='604e_v2.4-powerpc-cpu'/> + <cpu type='tcg' name='604e' typename='604e_v2.4-powerpc-cpu'/> + <cpu type='tcg' name='goldeneye' typename='603e7t-powerpc-cpu'/> + <cpu type='tcg' name='603r' typename='603e7t-powerpc-cpu'/> + <cpu type='tcg' name='vaillant' typename='603e7v-powerpc-cpu'/> + <cpu type='tcg' name='stretch' typename='603e_v4.1-powerpc-cpu'/> + <cpu type='tcg' name='603e' typename='603e_v4.1-powerpc-cpu'/> + <cpu type='tcg' name='vanilla' typename='603-powerpc-cpu'/> + <cpu type='tcg' name='mpc8560' typename='mpc8560_v21-powerpc-cpu'/> + <cpu type='tcg' name='mpc8555e' typename='mpc8555e_v11-powerpc-cpu'/> + <cpu type='tcg' name='mpc8555' typename='mpc8555_v11-powerpc-cpu'/> + <cpu type='tcg' name='mpc8548e' typename='mpc8548e_v21-powerpc-cpu'/> + <cpu type='tcg' name='mpc8548' typename='mpc8548_v21-powerpc-cpu'/> + <cpu type='tcg' name='mpc8547e' typename='mpc8547e_v21-powerpc-cpu'/> + <cpu type='tcg' name='mpc8545e' typename='mpc8545e_v21-powerpc-cpu'/> + <cpu type='tcg' name='mpc8545' typename='mpc8545_v21-powerpc-cpu'/> + <cpu type='tcg' name='mpc8544e' typename='mpc8544e_v11-powerpc-cpu'/> + <cpu type='tcg' name='mpc8544' typename='mpc8544_v11-powerpc-cpu'/> + <cpu type='tcg' name='mpc8543e' typename='mpc8543e_v21-powerpc-cpu'/> + <cpu type='tcg' name='mpc8543' typename='mpc8543_v21-powerpc-cpu'/> + <cpu type='tcg' name='mpc8541e' typename='mpc8541e_v11-powerpc-cpu'/> + <cpu type='tcg' name='mpc8541' typename='mpc8541_v11-powerpc-cpu'/> + <cpu type='tcg' name='mpc8540' typename='mpc8540_v21-powerpc-cpu'/> + <cpu type='tcg' name='mpc8533e' typename='mpc8533e_v11-powerpc-cpu'/> + <cpu type='tcg' name='mpc8533' typename='mpc8533_v11-powerpc-cpu'/> + <cpu type='tcg' name='e500v2' typename='e500v2_v22-powerpc-cpu'/> + <cpu type='tcg' name='e500v1' typename='e500_v20-powerpc-cpu'/> + <cpu type='tcg' name='e500' typename='e500v2_v22-powerpc-cpu'/> + <cpu type='tcg' name='mpc8347ea' typename='mpc8347eat-powerpc-cpu'/> + <cpu type='tcg' name='mpc8347e' typename='mpc8347et-powerpc-cpu'/> + <cpu type='tcg' name='mpc8347a' typename='mpc8347at-powerpc-cpu'/> + <cpu type='tcg' name='mpc8347' typename='mpc8347t-powerpc-cpu'/> + <cpu type='tcg' name='e300' typename='e300c3-powerpc-cpu'/> + <cpu type='tcg' name='e200' typename='e200z6-powerpc-cpu'/> + <cpu type='tcg' name='mpc8280' typename='g2legp3-powerpc-cpu'/> + <cpu type='tcg' name='mpc8275' typename='g2legp3-powerpc-cpu'/> + <cpu type='tcg' name='mpc8272' typename='g2legp3-powerpc-cpu'/> + <cpu type='tcg' name='mpc8271' typename='g2legp3-powerpc-cpu'/> + <cpu type='tcg' name='mpc8270' typename='g2legp3-powerpc-cpu'/> + <cpu type='tcg' name='mpc8266_hip4' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='mpc8266_hip3' typename='g2hip3-powerpc-cpu'/> + <cpu type='tcg' name='mpc8266' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='mpc8265_hip4' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='mpc8265_hip3' typename='g2hip3-powerpc-cpu'/> + <cpu type='tcg' name='mpc8265' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='mpc8264_hip4' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='mpc8264_hip3' typename='g2hip3-powerpc-cpu'/> + <cpu type='tcg' name='mpc8264' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='mpc8260_hip4' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='mpc8260_hip3' typename='g2hip3-powerpc-cpu'/> + <cpu type='tcg' name='mpc8260' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='mpc8255_hip4' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='mpc8255_hip3' typename='g2hip3-powerpc-cpu'/> + <cpu type='tcg' name='mpc8255' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='mpc8250_hip4' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='mpc8250_hip3' typename='g2hip3-powerpc-cpu'/> + <cpu type='tcg' name='mpc8250' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='mpc8248' typename='g2legp3-powerpc-cpu'/> + <cpu type='tcg' name='mpc8247' typename='g2legp3-powerpc-cpu'/> + <cpu type='tcg' name='mpc8245' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='mpc8241' typename='g2hip4-powerpc-cpu'/> + <cpu type='tcg' name='powerquicc-ii' typename='g2legp3-powerpc-cpu'/> + <cpu type='tcg' name='mpc82xx' typename='g2legp3-powerpc-cpu'/> + <cpu type='tcg' name='mpc5200b' typename='mpc5200b_v21-powerpc-cpu'/> + <cpu type='tcg' name='mpc5200' typename='mpc5200_v12-powerpc-cpu'/> + <cpu type='tcg' name='mpc52xx' typename='mpc5200_v12-powerpc-cpu'/> + <cpu type='tcg' name='mpc8240' typename='603-powerpc-cpu'/> + <cpu type='tcg' name='460ex' typename='460exb-powerpc-cpu'/> + <cpu type='tcg' name='440ep' typename='440epb-powerpc-cpu'/> + <cpu type='tcg' name='x2vp50' typename='x2vp20-powerpc-cpu'/> + <cpu type='tcg' name='x2vp7' typename='x2vp4-powerpc-cpu'/> + <cpu type='tcg' name='405gpe' typename='405crc-powerpc-cpu'/> + <cpu type='tcg' name='405gp' typename='405gpd-powerpc-cpu'/> + <cpu type='tcg' name='405cr' typename='405crc-powerpc-cpu'/> + <cpu type='tcg' name='405' typename='405d4-powerpc-cpu'/> + <cpu type='tcg' name='7447a_v1.2'/> + <cpu type='tcg' name='405crc'/> + <cpu type='tcg' name='603e7v1'/> + <cpu type='tcg' name='750cx_v2.0'/> + <cpu type='tcg' name='mpc8533_v11'/> + <cpu type='tcg' name='7447a_v1.1'/> + <cpu type='tcg' name='7400_v2.2'/> + <cpu type='tcg' name='745_v2.7'/> + <cpu type='tcg' name='mpc8343e'/> + <cpu type='tcg' name='405crb'/> + <cpu type='tcg' name='750gx_v1.2'/> + <cpu type='tcg' name='mpc8533_v10'/> + <cpu type='tcg' name='7457_v1.1'/> + <cpu type='tcg' name='e500v2_v22'/> + <cpu type='tcg' name='mpc8548_v11'/> + <cpu type='tcg' name='7447a_v1.0'/> + <cpu type='tcg' name='7400_v2.1'/> + <cpu type='tcg' name='603e7v'/> + <cpu type='tcg' name='750gx_v1.1'/> + <cpu type='tcg' name='x2vp4'/> + <cpu type='tcg' name='7457_v1.0'/> + <cpu type='tcg' name='e500v2_v21'/> + <cpu type='tcg' name='e500_v20'/> + <cpu type='tcg' name='mpc8548_v10'/> + <cpu type='tcg' name='603e_v2.2'/> + <cpu type='tcg' name='g2legp3'/> + <cpu type='tcg' name='460exb'/> + <cpu type='tcg' name='755_v1.0'/> + <cpu type='tcg' name='750_v1.0'/> + <cpu type='tcg' name='npe405h'/> + <cpu type='tcg' name='e500v2_v20'/> + <cpu type='tcg' name='mpc8349ea'/> + <cpu type='tcg' name='mpc8545e_v20'/> + <cpu type='tcg' name='g2h4'/> + <cpu type='tcg' name='7457a_v1.2'/> + <cpu type='tcg' name='g2lels'/> + <cpu type='tcg' name='7455_v2.1'/> + <cpu type='tcg' name='745_v2.6'/> + <cpu type='tcg' name='mpc8378e'/> + <cpu type='tcg' name='mpc8641'/> + <cpu type='tcg' name='7450_v2.1'/> + <cpu type='tcg' name='g2legp1'/> + <cpu type='tcg' name='755_v2.8'/> + <cpu type='tcg' name='mpc8572'/> + <cpu type='tcg' name='7457a_v1.1'/> + <cpu type='tcg' name='g2gp'/> + <cpu type='tcg' name='405cra'/> + <cpu type='tcg' name='745_v2.5'/> + <cpu type='tcg' name='7400_v2.0'/> + <cpu type='tcg' name='mpc8347ap'/> + <cpu type='tcg' name='750gx_v1.0'/> + <cpu type='tcg' name='604e_v2.4'/> + <cpu type='tcg' name='440epb'/> + <cpu type='tcg' name='750e'/> + <cpu type='tcg' name='e200z6'/> + <cpu type='tcg' name='mpc8347eat'/> + <cpu type='tcg' name='mpc8567e'/> + <cpu type='tcg' name='mpc8568'/> + <cpu type='tcg' name='603e7t'/> + <cpu type='tcg' name='mpc8540_v21'/> + <cpu type='tcg' name='g2hip4'/> + <cpu type='tcg' name='740_v3.1'/> + <cpu type='tcg' name='440epa'/> + <cpu type='tcg' name='e200z5'/> + <cpu type='tcg' name='mpc8567'/> + <cpu type='tcg' name='mpc5200_v12'/> + <cpu type='tcg' name='mpc8343a'/> + <cpu type='tcg' name='g2legp'/> + <cpu type='tcg' name='mpc603'/> + <cpu type='tcg' name='mpc8347t'/> + <cpu type='tcg' name='e500mc'/> + <cpu type='tcg' name='7445_v1.0'/> + <cpu type='tcg' name='mpc8541e_v11'/> + <cpu type='tcg' name='mpc8540_v20'/> + <cpu type='tcg' name='750fl'/> + <cpu type='tcg' name='740_v3.0'/> + <cpu type='tcg' name='7450_v2.0'/> + <cpu type='tcg' name='405d4'/> + <cpu type='tcg' name='mpc5200_v11'/> + <cpu type='tcg' name='604'/> + <cpu type='tcg' name='mpc8347et'/> + <cpu type='tcg' name='750cx_v1.0'/> + <cpu type='tcg' name='mpc8541e_v10'/> + <cpu type='tcg' name='755_v2.7'/> + <cpu type='tcg' name='7457a_v1.0'/> + <cpu type='tcg' name='mpc8379'/> + <cpu type='tcg' name='mpc8560_v10'/> + <cpu type='tcg' name='7448_v2.1'/> + <cpu type='tcg' name='stb04'/> + <cpu type='tcg' name='603e_v1.4'/> + <cpu type='tcg' name='745_v2.4'/> + <cpu type='tcg' name='755_v2.6'/> + <cpu type='tcg' name='7410_v1.4'/> + <cpu type='tcg' name='mpc8378'/> + <cpu type='tcg' name='mpc8548e_v21'/> + <cpu type='tcg' name='7448_v2.0'/> + <cpu type='tcg' name='603e_v1.3'/> + <cpu type='tcg' name='745_v2.3'/> + <cpu type='tcg' name='7400_v1.1'/> + <cpu type='tcg' name='x2vp20'/> + <cpu type='tcg' name='mpc8377'/> + <cpu type='tcg' name='750p'/> + <cpu type='tcg' name='g2hip3'/> + <cpu type='tcg' name='604e_v2.2'/> + <cpu type='tcg' name='603e_v1.2'/> + <cpu type='tcg' name='745_v2.2'/> + <cpu type='tcg' name='603e7'/> + <cpu type='tcg' name='7445_v3.4'/> + <cpu type='tcg' name='mpc8543_v21'/> + <cpu type='tcg' name='604r'/> + <cpu type='tcg' name='7450_v1.2'/> + <cpu type='tcg' name='mpc5200b_v21'/> + <cpu type='tcg' name='mpc8543_v20'/> + <cpu type='tcg' name='mpc5200_v10'/> + <cpu type='tcg' name='603'/> + <cpu type='tcg' name='e500_v10'/> + <cpu type='tcg' name='7450_v1.1'/> + <cpu type='tcg' name='mpc8349'/> + <cpu type='tcg' name='stb03'/> + <cpu type='tcg' name='mpc8347eap'/> + <cpu type='tcg' name='405d2'/> + <cpu type='tcg' name='750fx_v2.3'/> + <cpu type='tcg' name='mpc8543e_v21'/> + <cpu type='tcg' name='mpc8545_v21'/> + <cpu type='tcg' name='750_v3.1'/> + <cpu type='tcg' name='npe4gs3'/> + <cpu type='tcg' name='7410_v1.3'/> + <cpu type='tcg' name='755_v2.5'/> + <cpu type='tcg' name='mpc8548e_v20'/> + <cpu type='tcg' name='e600'/> + <cpu type='tcg' name='7400_v1.0'/> + <cpu type='tcg' name='mpc8543e_v20'/> + <cpu type='tcg' name='stb25'/> + <cpu type='tcg' name='7410_v1.2'/> + <cpu type='tcg' name='740_v2.2'/> + <cpu type='tcg' name='740e'/> + <cpu type='tcg' name='755_v2.4'/> + <cpu type='tcg' name='603e_v1.1'/> + <cpu type='tcg' name='745_v2.1'/> + <cpu type='tcg' name='750cl_v2.0'/> + <cpu type='tcg' name='7400_v2.9'/> + <cpu type='tcg' name='755_v2.3'/> + <cpu type='tcg' name='740_v2.1'/> + <cpu type='tcg' name='750l_v3.2'/> + <cpu type='tcg' name='7445_v3.3'/> + <cpu type='tcg' name='405ep'/> + <cpu type='tcg' name='mpc8610'/> + <cpu type='tcg' name='745_v2.0'/> + <cpu type='tcg' name='7400_v2.8'/> + <cpu type='tcg' name='7445_v3.2'/> + <cpu type='tcg' name='mpc5200b_v20'/> + <cpu type='tcg' name='740_v2.0'/> + <cpu type='tcg' name='750_v3.0'/> + <cpu type='tcg' name='7455_v1.0'/> + <cpu type='tcg' name='7450_v1.0'/> + <cpu type='tcg' name='e500v2_v10'/> + <cpu type='tcg' name='603e_v4'/> + <cpu type='tcg' name='750fx_v2.2'/> + <cpu type='tcg' name='mpc8545_v20'/> + <cpu type='tcg' name='npe405h2'/> + <cpu type='tcg' name='mpc8347p'/> + <cpu type='tcg' name='7448_v1.1'/> + <cpu type='tcg' name='603e_v3'/> + <cpu type='tcg' name='405gpr'/> + <cpu type='tcg' name='mpc8377e'/> + <cpu type='tcg' name='mpc8347ep'/> + <cpu type='tcg' name='mpc8548_v21'/> + <cpu type='tcg' name='mpc8555e_v11'/> + <cpu type='tcg' name='440epx'/> + <cpu type='tcg' name='750fx_v2.1'/> + <cpu type='tcg' name='mpc8544e_v11'/> + <cpu type='tcg' name='7448_v1.0'/> + <cpu type='tcg' name='mpc8547e_v21'/> + <cpu type='tcg' name='mpc8533e_v11'/> + <cpu type='tcg' name='7410_v1.1'/> + <cpu type='tcg' name='750cxe_v3.1'/> + <cpu type='tcg' name='750cxe_v2.4'/> + <cpu type='tcg' name='7441_v2.3'/> + <cpu type='tcg' name='750fx_v2.0'/> + <cpu type='tcg' name='7441_v2.10'/> + <cpu type='tcg' name='mpc8544e_v10'/> + <cpu type='tcg' name='mpc8349e'/> + <cpu type='tcg' name='405gpd'/> + <cpu type='tcg' name='mpc8547e_v20'/> + <cpu type='tcg' name='mpc8533e_v10'/> + <cpu type='tcg' name='7410_v1.0'/> + <cpu type='tcg' name='740p'/> + <cpu type='tcg' name='750cxe_v3.0'/> + <cpu type='tcg' name='7455_v3.4'/> + <cpu type='tcg' name='mpc8541_v11'/> + <cpu type='tcg' name='603e_v4.1'/> + <cpu type='tcg' name='750_v2.2'/> + <cpu type='tcg' name='e300c4'/> + <cpu type='tcg' name='7400_v2.7'/> + <cpu type='tcg' name='755_v2.2'/> + <cpu type='tcg' name='405gpc'/> + <cpu type='tcg' name='755_v2.1'/> + <cpu type='tcg' name='7455_v3.3'/> + <cpu type='tcg' name='mpc8541_v10'/> + <cpu type='tcg' name='750l_v3.0'/> + <cpu type='tcg' name='405lp'/> + <cpu type='tcg' name='750_v2.1'/> + <cpu type='tcg' name='e300c3'/> + <cpu type='tcg' name='mpc8540_v10'/> + <cpu type='tcg' name='mpc8379e'/> + <cpu type='tcg' name='7400_v2.6'/> + <cpu type='tcg' name='mpc8555_v11'/> + <cpu type='tcg' name='405gpb'/> + <cpu type='tcg' name='mpc8543_v11'/> + <cpu type='tcg' name='750cxe_v3.1b'/> + <cpu type='tcg' name='750cxe_v2.3'/> + <cpu type='tcg' name='mpc8548_v20'/> + <cpu type='tcg' name='mpc8555e_v10'/> + <cpu type='tcg' name='440-xilinx'/> + <cpu type='tcg' name='mpc8555_v10'/> + <cpu type='tcg' name='mpc8560_v21'/> + <cpu type='tcg' name='g2'/> + <cpu type='tcg' name='750cxe_v2.2'/> + <cpu type='tcg' name='e500v2_v30'/> + <cpu type='tcg' name='mpc8568e'/> + <cpu type='tcg' name='7447_v1.1'/> + <cpu type='tcg' name='mpc8548e_v11'/> + <cpu type='tcg' name='750cl_v1.0'/> + <cpu type='tcg' name='745_v1.1'/> + <cpu type='tcg' name='7441_v2.1'/> + <cpu type='tcg' name='mpc8543e_v11'/> + <cpu type='tcg' name='7451_v2.3'/> + <cpu type='tcg' name='mpc8343ea'/> + <cpu type='tcg' name='750l_v2.2'/> + <cpu type='tcg' name='405ez'/> + <cpu type='tcg' name='mpc8544_v11'/> + <cpu type='tcg' name='755_v2.0'/> + <cpu type='tcg' name='745_v1.0'/> + <cpu type='tcg' name='7455_v3.2'/> + <cpu type='tcg' name='750cxr'/> + <cpu type='tcg' name='mpc8548e_v10'/> + <cpu type='tcg' name='750_v2.0'/> + <cpu type='tcg' name='740_v1.0'/> + <cpu type='tcg' name='604e_v1.0'/> + <cpu type='tcg' name='e300c2'/> + <cpu type='tcg' name='405gpa'/> + <cpu type='tcg' name='7451_v2.10'/> + <cpu type='tcg' name='750cx_v2.2'/> + <cpu type='tcg' name='e300c1'/> + <cpu type='tcg' name='mpc8347at'/> + <cpu type='tcg' name='mpc8349a'/> + <cpu type='tcg' name='750cxe_v2.4b'/> + <cpu type='tcg' name='mpc8572e'/> + <cpu type='tcg' name='mpc8543_v10'/> + <cpu type='tcg' name='npe405l'/> + <cpu type='tcg' name='mpc8560_v20'/> + <cpu type='tcg' name='603p'/> + <cpu type='tcg' name='750cxe_v2.1'/> + <cpu type='tcg' name='440-xilinx-w-dfpu'/> + <cpu type='tcg' name='7447_v1.0'/> + <cpu type='tcg' name='750fx_v1.0'/> + <cpu type='tcg' name='mpc8641d'/> + <cpu type='tcg' name='7457_v1.2'/> + <cpu type='tcg' name='750gl'/> + <cpu type='tcg' name='mpc8543e_v10'/> + <cpu type='tcg' name='g2ls'/> + <cpu type='tcg' name='mpc8343'/> + <cpu type='tcg' name='750l_v2.1'/> + <cpu type='tcg' name='mpc8544_v10'/> + <cpu type='tcg' name='7445_v2.1'/> + <cpu type='tcg' name='755_v1.1'/> + <cpu type='tcg' name='750l_v2.0'/> + <cpu type='tcg' name='g2le'/> + <cpu type='tcg' name='mpc8545e_v21'/> + <cpu type='tcg' name='603e7v2'/> + <cpu type='tcg' name='750cx_v2.1'/> + <cpu type='tcg' name='745_v2.8'/> + <machine type='tcg' name='g3beige' maxCpus='1' default='yes' defaultCPU='750_v3.1-powerpc-cpu' defaultRAMid='ppc_heathrow.ram'/> + <machine type='tcg' name='virtex-ml507' maxCpus='1' defaultCPU='440-xilinx-powerpc-cpu' defaultRAMid='ram'/> + <machine type='tcg' name='mac99' maxCpus='1' defaultCPU='7400_v2.9-powerpc-cpu' defaultRAMid='ppc_core99.ram'/> + <machine type='tcg' name='ppce500' maxCpus='32' defaultCPU='e500v2_v30-powerpc-cpu' defaultRAMid='mpc8544ds.ram'/> + <machine type='tcg' name='sam460ex' maxCpus='1' defaultCPU='460exb-powerpc-cpu' defaultRAMid='ppc4xx.sdram'/> + <machine type='tcg' name='pegasos2' maxCpus='1' defaultCPU='7400_v2.9-powerpc-cpu' defaultRAMid='pegasos2.ram'/> + <machine type='tcg' name='bamboo' maxCpus='1' defaultCPU='440epb-powerpc-cpu' defaultRAMid='ppc4xx.sdram'/> + <machine type='tcg' name='40p' maxCpus='1' defaultCPU='604-powerpc-cpu'/> + <machine type='tcg' name='ref405ep' maxCpus='1' defaultRAMid='ppc405.ram'/> + <machine type='tcg' name='mpc8544ds' maxCpus='15' defaultCPU='e500v2_v30-powerpc-cpu' defaultRAMid='mpc8544ds.ram'/> +</qemuCaps> diff --git a/tests/qemucaps2xmloutdata/caps.ppc.xml b/tests/qemucaps2xmloutdata/caps.ppc.xml new file mode 100644 index 0000000000..e7ba391795 --- /dev/null +++ b/tests/qemucaps2xmloutdata/caps.ppc.xml @@ -0,0 +1,25 @@ +<capabilities> + + <host> + <cpu> + <arch>ppc</arch> + </cpu> + <power_management/> + <iommu support='no'/> + </host> + + <guest> + <os_type>hvm</os_type> + <arch name='ppc'> + <wordsize>32</wordsize> + <emulator>/usr/bin/qemu-system-ppc</emulator> + <domain type='qemu'/> + </arch> + <features> + <cpuselection/> + <deviceboot/> + <disksnapshot default='on' toggle='no'/> + </features> + </guest> + +</capabilities> diff --git a/tests/testutilshostcpus.h b/tests/testutilshostcpus.h index 74c6e0d22a..797f0bbfc6 100644 --- a/tests/testutilshostcpus.h +++ b/tests/testutilshostcpus.h @@ -147,6 +147,14 @@ static virCPUDef cpuSparcData = { .threads = 1, }; +static virCPUDef cpuPPCData = { + .type = VIR_CPU_TYPE_HOST, + .arch = VIR_ARCH_PPC, + .sockets = 1, + .cores = 1, + .threads = 1, +}; + static virCPUDef cpuRiscv64Data = { .type = VIR_CPU_TYPE_HOST, .arch = VIR_ARCH_RISCV64, @@ -192,6 +200,8 @@ testUtilsHostCpusGetDefForArch(virArch arch) return virCPUDefCopy(&cpuSparcData); else if (arch == VIR_ARCH_RISCV64) return virCPUDefCopy(&cpuRiscv64Data); + else if (arch == VIR_ARCH_PPC) + return virCPUDefCopy(&cpuPPCData); return NULL; } diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index 1f1f5ef97c..b54bb43731 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -736,6 +736,7 @@ testQemuGetLatestCaps(void) "s390x", "x86_64", "sparc", + "ppc", }; g_autoptr(GHashTable) capslatest = virHashNew(g_free); size_t i; -- 2.39.2

Convert the 'ppc-dtb' and 'ppce500-serial' to use real capabilities albeit captured from a non-native machine. Thus the XML needs to be converted to use virt type 'qemu'. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- .../{ppc-dtb.args => ppc-dtb.ppc-latest.args} | 12 +++++++----- tests/qemuxml2argvdata/ppc-dtb.xml | 2 +- ...00-serial.args => ppce500-serial.ppc-latest.args} | 12 +++++++----- tests/qemuxml2argvdata/ppce500-serial.xml | 2 +- tests/qemuxml2argvtest.c | 6 ++---- 5 files changed, 18 insertions(+), 16 deletions(-) rename tests/qemuxml2argvdata/{ppc-dtb.args => ppc-dtb.ppc-latest.args} (62%) rename tests/qemuxml2argvdata/{ppce500-serial.args => ppce500-serial.ppc-latest.args} (62%) diff --git a/tests/qemuxml2argvdata/ppc-dtb.args b/tests/qemuxml2argvdata/ppc-dtb.ppc-latest.args similarity index 62% rename from tests/qemuxml2argvdata/ppc-dtb.args rename to tests/qemuxml2argvdata/ppc-dtb.ppc-latest.args index 951edcda6b..1cf06ffbac 100644 --- a/tests/qemuxml2argvdata/ppc-dtb.args +++ b/tests/qemuxml2argvdata/ppc-dtb.ppc-latest.args @@ -9,10 +9,11 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \ /usr/bin/qemu-system-ppc \ -name guest=QEMUGuest1,debug-threads=on \ -S \ --object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \ --machine ppce500,usb=off,dump-guest-core=off \ --accel kvm \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \ +-machine ppce500,usb=off,dump-guest-core=off,memory-backend=mpc8544ds.ram \ +-accel tcg \ -m 256 \ +-object '{"qom-type":"memory-backend-ram","id":"mpc8544ds.ram","size":268435456}' \ -overcommit mem-lock=off \ -smp 1,sockets=1,cores=1,threads=1 \ -uuid 49545eb3-75e1-2d0a-acdd-f0294406c99e \ @@ -28,9 +29,10 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \ -initrd /media/ram/ramdisk \ -append 'root=/dev/ram rw console=ttyS0,115200' \ -dtb /media/ram/test.dtb \ --usb \ +-device '{"driver":"piix3-usb-uhci","id":"usb","bus":"pci.0","addr":"0x1"}' \ -chardev pty,id=charserial0 \ -serial chardev:charserial0 \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x2 \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x2"}' \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/ppc-dtb.xml b/tests/qemuxml2argvdata/ppc-dtb.xml index 04f0eb6624..37b9b280e7 100644 --- a/tests/qemuxml2argvdata/ppc-dtb.xml +++ b/tests/qemuxml2argvdata/ppc-dtb.xml @@ -1,4 +1,4 @@ -<domain type='kvm'> +<domain type='qemu'> <name>QEMUGuest1</name> <uuid>49545eb3-75e1-2d0a-acdd-f0294406c99e</uuid> <memory unit='KiB'>262144</memory> diff --git a/tests/qemuxml2argvdata/ppce500-serial.args b/tests/qemuxml2argvdata/ppce500-serial.ppc-latest.args similarity index 62% rename from tests/qemuxml2argvdata/ppce500-serial.args rename to tests/qemuxml2argvdata/ppce500-serial.ppc-latest.args index 1698f50498..1c1a387f62 100644 --- a/tests/qemuxml2argvdata/ppce500-serial.args +++ b/tests/qemuxml2argvdata/ppce500-serial.ppc-latest.args @@ -9,10 +9,11 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \ /usr/bin/qemu-system-ppc \ -name guest=QEMUGuest1,debug-threads=on \ -S \ --object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \ --machine ppce500,usb=off,dump-guest-core=off \ --accel kvm \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \ +-machine ppce500,usb=off,dump-guest-core=off,memory-backend=mpc8544ds.ram \ +-accel tcg \ -m 256 \ +-object '{"qom-type":"memory-backend-ram","id":"mpc8544ds.ram","size":268435456}' \ -overcommit mem-lock=off \ -smp 1,sockets=1,cores=1,threads=1 \ -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ @@ -27,9 +28,10 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \ -kernel /media/ram/uImage \ -initrd /media/ram/ramdisk \ -append 'root=/dev/ram rw console=ttyS0,115200' \ --usb \ +-device '{"driver":"piix3-usb-uhci","id":"usb","bus":"pci.0","addr":"0x1"}' \ -chardev pty,id=charserial0 \ -serial chardev:charserial0 \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x2 \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x2"}' \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/ppce500-serial.xml b/tests/qemuxml2argvdata/ppce500-serial.xml index 4e656d5ffe..20a3b1e7a8 100644 --- a/tests/qemuxml2argvdata/ppce500-serial.xml +++ b/tests/qemuxml2argvdata/ppce500-serial.xml @@ -1,4 +1,4 @@ -<domain type='kvm'> +<domain type='qemu'> <name>QEMUGuest1</name> <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> <memory unit='KiB'>262144</memory> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index db846c1ea4..e515c2c0df 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2222,10 +2222,8 @@ mymain(void) DO_TEST("s390-serial-console", QEMU_CAPS_DEVICE_SCLPCONSOLE); - DO_TEST("ppc-dtb", - QEMU_CAPS_KVM); - DO_TEST("ppce500-serial", - QEMU_CAPS_KVM); + DO_TEST_CAPS_ARCH_LATEST("ppc-dtb", "ppc"); + DO_TEST_CAPS_ARCH_LATEST("ppce500-serial", "ppc"); DO_TEST_CAPS_LATEST("tpm-passthrough"); DO_TEST_CAPS_LATEST("tpm-passthrough-crb"); -- 2.39.2

All tests were converted to use real capabilities so there's no need to support the infrastructure for fake tests. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/testutilsqemu.c | 7 ------- 1 file changed, 7 deletions(-) diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index b54bb43731..c5057fb051 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -31,7 +31,6 @@ static const char *qemu_emulators[VIR_ARCH_LAST] = { [VIR_ARCH_AARCH64] = "/usr/bin/qemu-system-aarch64", [VIR_ARCH_ARMV7L] = "/usr/bin/qemu-system-arm", [VIR_ARCH_PPC64] = "/usr/bin/qemu-system-ppc64", - [VIR_ARCH_PPC] = "/usr/bin/qemu-system-ppc", [VIR_ARCH_S390X] = "/usr/bin/qemu-system-s390x", }; @@ -56,9 +55,6 @@ static const char *const arm_machines[] = { static const char *const ppc64_machines[] = { "pseries", NULL }; -static const char *const ppc_machines[] = { - "ppce500", NULL -}; static const char *const s390x_machines[] = { "s390-ccw-virtio", NULL }; @@ -69,7 +65,6 @@ static const char *const *qemu_machines[VIR_ARCH_LAST] = { [VIR_ARCH_AARCH64] = aarch64_machines, [VIR_ARCH_ARMV7L] = arm_machines, [VIR_ARCH_PPC64] = ppc64_machines, - [VIR_ARCH_PPC] = ppc_machines, [VIR_ARCH_S390X] = s390x_machines, }; @@ -79,7 +74,6 @@ static const char *const *hvf_machines[VIR_ARCH_LAST] = { [VIR_ARCH_AARCH64] = aarch64_machines, [VIR_ARCH_ARMV7L] = NULL, [VIR_ARCH_PPC64] = NULL, - [VIR_ARCH_PPC] = NULL, [VIR_ARCH_RISCV64] = NULL, [VIR_ARCH_S390X] = NULL, }; @@ -90,7 +84,6 @@ static const char *qemu_default_ram_id[VIR_ARCH_LAST] = { [VIR_ARCH_AARCH64] = "mach-virt.ram", [VIR_ARCH_ARMV7L] = "vexpress.highmem", [VIR_ARCH_PPC64] = "ppc_spapr.ram", - [VIR_ARCH_PPC] = "ppc_spapr.ram", [VIR_ARCH_S390X] = "s390.ram", }; -- 2.39.2

We always assert the flag for aarch64 qemus and in qemu the 'aarch64' cpu property doesn't seem to be optional. Remove checks and remove impossible test case. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_validate.c | 9 --------- tests/qemuxml2argvdata/aarch64-kvm-32-on-64.err | 1 - tests/qemuxml2argvtest.c | 5 +---- 3 files changed, 1 insertion(+), 14 deletions(-) delete mode 100644 tests/qemuxml2argvdata/aarch64-kvm-32-on-64.err diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index c877aa73d4..4746c14441 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -430,15 +430,6 @@ qemuValidateDomainDefCpu(virQEMUDriver *driver, if (cpu->model || cpu->mode != VIR_CPU_MODE_CUSTOM) { switch ((virCPUMode) cpu->mode) { case VIR_CPU_MODE_HOST_PASSTHROUGH: - if (def->os.arch == VIR_ARCH_ARMV7L && - driver->hostarch == VIR_ARCH_AARCH64) { - if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_CPU_AARCH64_OFF)) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", - _("QEMU binary does not support CPU host-passthrough for armv7l on aarch64 host")); - return -1; - } - } - if (cpu->migratable && cpu->migratable != VIR_TRISTATE_SWITCH_OFF && !virQEMUCapsGet(qemuCaps, QEMU_CAPS_CPU_MIGRATABLE)) { diff --git a/tests/qemuxml2argvdata/aarch64-kvm-32-on-64.err b/tests/qemuxml2argvdata/aarch64-kvm-32-on-64.err deleted file mode 100644 index 3858f112b4..0000000000 --- a/tests/qemuxml2argvdata/aarch64-kvm-32-on-64.err +++ /dev/null @@ -1 +0,0 @@ -unsupported configuration: QEMU binary does not support CPU host-passthrough for armv7l on aarch64 host diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index e515c2c0df..33dcb247de 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2579,10 +2579,7 @@ mymain(void) DO_TEST("aarch64-kvm-32-on-64", QEMU_CAPS_DEVICE_VIRTIO_MMIO, QEMU_CAPS_DEVICE_PL011, - QEMU_CAPS_KVM, QEMU_CAPS_CPU_AARCH64_OFF); - DO_TEST_PARSE_ERROR("aarch64-kvm-32-on-64", - QEMU_CAPS_DEVICE_VIRTIO_MMIO, - QEMU_CAPS_KVM); + QEMU_CAPS_KVM); DO_TEST("aarch64-pci-serial", QEMU_CAPS_DEVICE_PCI_SERIAL, QEMU_CAPS_OBJECT_GPEX, -- 2.39.2

Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_capabilities.c | 5 +---- src/qemu/qemu_capabilities.h | 2 +- tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml | 1 - tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml | 1 - tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml | 1 - tests/qemucapabilitiesdata/caps_6.0.0.aarch64.xml | 1 - tests/qemucapabilitiesdata/caps_6.2.0.aarch64.xml | 1 - tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml | 1 - 8 files changed, 2 insertions(+), 11 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index e7f7a6af4c..01c19c81fd 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -327,7 +327,7 @@ VIR_ENUM_IMPL(virQEMUCaps, /* 185 */ "dea-key-wrap", /* QEMU_CAPS_DEA_KEY_WRAP */ "pci-serial", /* QEMU_CAPS_DEVICE_PCI_SERIAL */ - "aarch64-off", /* QEMU_CAPS_CPU_AARCH64_OFF */ + "aarch64-off", /* X_QEMU_CAPS_CPU_AARCH64_OFF */ "vhost-user-multiqueue", /* X_QEMU_CAPS_VHOSTUSER_MULTIQUEUE */ "migration-event", /* X_QEMU_CAPS_MIGRATION_EVENT */ @@ -5467,9 +5467,6 @@ virQEMUCapsInitQMPBasicArch(virQEMUCaps *qemuCaps) /* ACPI only works on x86 and aarch64 */ virQEMUCapsSet(qemuCaps, QEMU_CAPS_NO_ACPI); - /* -cpu ...,aarch64=off is not detectable via qmp at this point */ - virQEMUCapsSet(qemuCaps, QEMU_CAPS_CPU_AARCH64_OFF); - /* gic is arm specific */ virQEMUCapsSet(qemuCaps, QEMU_CAPS_MACH_VIRT_GIC_VERSION); break; diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index d049f79dd9..aacf6084ae 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -305,7 +305,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */ /* 185 */ QEMU_CAPS_DEA_KEY_WRAP, /* -machine dea_key_wrap */ QEMU_CAPS_DEVICE_PCI_SERIAL, /* -device pci-serial */ - QEMU_CAPS_CPU_AARCH64_OFF, /* -cpu ...,aarch64=off */ + X_QEMU_CAPS_CPU_AARCH64_OFF, /* -cpu ...,aarch64=off */ X_QEMU_CAPS_VHOSTUSER_MULTIQUEUE, /* vhost-user with -netdev queues= */ X_QEMU_CAPS_MIGRATION_EVENT, /* MIGRATION event */ diff --git a/tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml b/tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml index e1a6301897..1d100483dc 100644 --- a/tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml @@ -50,7 +50,6 @@ <flag name='vmware-svga.vgamem_mb'/> <flag name='pc-dimm'/> <flag name='pci-serial'/> - <flag name='aarch64-off'/> <flag name='gpex-pcihost'/> <flag name='ioh3420'/> <flag name='x3130-upstream'/> diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml b/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml index f83ee7050b..24548a83a4 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml @@ -52,7 +52,6 @@ <flag name='vmware-svga.vgamem_mb'/> <flag name='pc-dimm'/> <flag name='pci-serial'/> - <flag name='aarch64-off'/> <flag name='gpex-pcihost'/> <flag name='ioh3420'/> <flag name='x3130-upstream'/> diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml b/tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml index 4788398af7..5c19c9394d 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml @@ -51,7 +51,6 @@ <flag name='vmware-svga.vgamem_mb'/> <flag name='pc-dimm'/> <flag name='pci-serial'/> - <flag name='aarch64-off'/> <flag name='gpex-pcihost'/> <flag name='ioh3420'/> <flag name='x3130-upstream'/> diff --git a/tests/qemucapabilitiesdata/caps_6.0.0.aarch64.xml b/tests/qemucapabilitiesdata/caps_6.0.0.aarch64.xml index 8238fb5d16..5c27847e23 100644 --- a/tests/qemucapabilitiesdata/caps_6.0.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_6.0.0.aarch64.xml @@ -50,7 +50,6 @@ <flag name='vmware-svga.vgamem_mb'/> <flag name='pc-dimm'/> <flag name='pci-serial'/> - <flag name='aarch64-off'/> <flag name='gpex-pcihost'/> <flag name='ioh3420'/> <flag name='x3130-upstream'/> diff --git a/tests/qemucapabilitiesdata/caps_6.2.0.aarch64.xml b/tests/qemucapabilitiesdata/caps_6.2.0.aarch64.xml index 33c9982bd1..f3e995437d 100644 --- a/tests/qemucapabilitiesdata/caps_6.2.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_6.2.0.aarch64.xml @@ -55,7 +55,6 @@ <flag name='vmware-svga.vgamem_mb'/> <flag name='pc-dimm'/> <flag name='pci-serial'/> - <flag name='aarch64-off'/> <flag name='gpex-pcihost'/> <flag name='ioh3420'/> <flag name='x3130-upstream'/> diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml b/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml index 6517cd71f6..e1272566cc 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml @@ -55,7 +55,6 @@ <flag name='vmware-svga.vgamem_mb'/> <flag name='pc-dimm'/> <flag name='pci-serial'/> - <flag name='aarch64-off'/> <flag name='gpex-pcihost'/> <flag name='ioh3420'/> <flag name='x3130-upstream'/> -- 2.39.2

'qemu-system-aarch64' is superset of the soon to be deprecated 'qemu-system-arm' binary. We can move over all of our fake-caps tests to real caps on aarch64. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- ... aarch64-kvm-32-on-64.aarch64-latest.args} | 15 ++++-- .../qemuxml2argvdata/aarch64-kvm-32-on-64.xml | 2 +- ... arm-vexpressa9-basic.aarch64-latest.args} | 9 ++-- .../qemuxml2argvdata/arm-vexpressa9-basic.xml | 2 +- ...arm-vexpressa9-nodevs.aarch64-latest.args} | 9 ++-- .../arm-vexpressa9-nodevs.xml | 2 +- ...arm-vexpressa9-virtio.aarch64-latest.args} | 23 ++++---- .../arm-vexpressa9-virtio.xml | 2 +- .../arm-virt-virtio.aarch64-latest.args | 54 +++++++++++++++++++ tests/qemuxml2argvdata/arm-virt-virtio.args | 45 ---------------- tests/qemuxml2argvdata/arm-virt-virtio.xml | 2 +- tests/qemuxml2argvtest.c | 18 ++----- 12 files changed, 99 insertions(+), 84 deletions(-) rename tests/qemuxml2argvdata/{aarch64-kvm-32-on-64.args => aarch64-kvm-32-on-64.aarch64-latest.args} (53%) rename tests/qemuxml2argvdata/{arm-vexpressa9-basic.args => arm-vexpressa9-basic.aarch64-latest.args} (71%) rename tests/qemuxml2argvdata/{arm-vexpressa9-nodevs.args => arm-vexpressa9-nodevs.aarch64-latest.args} (65%) rename tests/qemuxml2argvdata/{arm-vexpressa9-virtio.args => arm-vexpressa9-virtio.aarch64-latest.args} (54%) create mode 100644 tests/qemuxml2argvdata/arm-virt-virtio.aarch64-latest.args delete mode 100644 tests/qemuxml2argvdata/arm-virt-virtio.args diff --git a/tests/qemuxml2argvdata/aarch64-kvm-32-on-64.args b/tests/qemuxml2argvdata/aarch64-kvm-32-on-64.aarch64-latest.args similarity index 53% rename from tests/qemuxml2argvdata/aarch64-kvm-32-on-64.args rename to tests/qemuxml2argvdata/aarch64-kvm-32-on-64.aarch64-latest.args index 0b22efecd2..7bdb6aaf44 100644 --- a/tests/qemuxml2argvdata/aarch64-kvm-32-on-64.args +++ b/tests/qemuxml2argvdata/aarch64-kvm-32-on-64.aarch64-latest.args @@ -6,14 +6,15 @@ LOGNAME=test \ XDG_DATA_HOME=/tmp/lib/domain--1-armtest/.local/share \ XDG_CACHE_HOME=/tmp/lib/domain--1-armtest/.cache \ XDG_CONFIG_HOME=/tmp/lib/domain--1-armtest/.config \ -/usr/bin/qemu-system-arm \ +/usr/bin/qemu-system-aarch64 \ -name guest=armtest,debug-threads=on \ -S \ --object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-armtest/master-key.aes \ --machine virt,usb=off,dump-guest-core=off \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-armtest/master-key.aes"}' \ +-machine virt,usb=off,gic-version=3,dump-guest-core=off,memory-backend=mach-virt.ram \ -accel kvm \ -cpu host,aarch64=off \ -m 1024 \ +-object '{"qom-type":"memory-backend-ram","id":"mach-virt.ram","size":1073741824}' \ -overcommit mem-lock=off \ -smp 1,sockets=1,cores=1,threads=1 \ -uuid 496d7ea8-9739-544b-4ebd-ef08be936e6a \ @@ -28,12 +29,16 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-armtest/.config \ -kernel /arm.kernel \ -initrd /arm.initrd \ -append 'console=ttyAMA0,115200n8 rw root=/dev/vda rootwait physmap.enabled=0' \ +-device '{"driver":"pcie-root-port","port":8,"chassis":1,"id":"pci.1","bus":"pcie.0","multifunction":true,"addr":"0x1"}' \ +-device '{"driver":"pcie-root-port","port":9,"chassis":2,"id":"pci.2","bus":"pcie.0","addr":"0x1.0x1"}' \ +-device '{"driver":"pcie-root-port","port":10,"chassis":3,"id":"pci.3","bus":"pcie.0","addr":"0x1.0x2"}' \ -blockdev '{"driver":"file","filename":"/arm.raw","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 virtio-blk-device,drive=libvirt-1-format,id=virtio-disk0,bootindex=1 \ +-device '{"driver":"virtio-blk-pci","bus":"pci.2","addr":"0x0","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -netdev user,id=hostnet0 \ --device virtio-net-device,netdev=hostnet0,id=net0,mac=52:54:00:09:a4:37 \ +-device '{"driver":"virtio-net-pci","netdev":"hostnet0","id":"net0","mac":"52:54:00:09:a4:37","bus":"pci.1","addr":"0x0"}' \ -chardev pty,id=charserial0 \ -serial chardev:charserial0 \ -audiodev '{"id":"audio1","driver":"none"}' \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/aarch64-kvm-32-on-64.xml b/tests/qemuxml2argvdata/aarch64-kvm-32-on-64.xml index 0df5e4c926..c145b5f246 100644 --- a/tests/qemuxml2argvdata/aarch64-kvm-32-on-64.xml +++ b/tests/qemuxml2argvdata/aarch64-kvm-32-on-64.xml @@ -21,7 +21,7 @@ <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> - <emulator>/usr/bin/qemu-system-arm</emulator> + <emulator>/usr/bin/qemu-system-aarch64</emulator> <disk type='file' device='disk'> <source file='/arm.raw'/> <target dev='vda' bus='virtio'/> diff --git a/tests/qemuxml2argvdata/arm-vexpressa9-basic.args b/tests/qemuxml2argvdata/arm-vexpressa9-basic.aarch64-latest.args similarity index 71% rename from tests/qemuxml2argvdata/arm-vexpressa9-basic.args rename to tests/qemuxml2argvdata/arm-vexpressa9-basic.aarch64-latest.args index b175c67dcd..37ad2f0910 100644 --- a/tests/qemuxml2argvdata/arm-vexpressa9-basic.args +++ b/tests/qemuxml2argvdata/arm-vexpressa9-basic.aarch64-latest.args @@ -6,13 +6,15 @@ LOGNAME=test \ XDG_DATA_HOME=/tmp/lib/domain--1-armtest/.local/share \ XDG_CACHE_HOME=/tmp/lib/domain--1-armtest/.cache \ XDG_CONFIG_HOME=/tmp/lib/domain--1-armtest/.config \ -/usr/bin/qemu-system-arm \ +/usr/bin/qemu-system-aarch64 \ -name guest=armtest,debug-threads=on \ -S \ --object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-armtest/master-key.aes \ --machine vexpress-a9,usb=off,dump-guest-core=off \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-armtest/master-key.aes"}' \ +-machine vexpress-a9,usb=off,dump-guest-core=off,memory-backend=vexpress.highmem \ -accel tcg \ +-cpu cortex-a9 \ -m 1024 \ +-object '{"qom-type":"memory-backend-ram","id":"vexpress.highmem","size":1073741824}' \ -overcommit mem-lock=off \ -smp 1,sockets=1,cores=1,threads=1 \ -uuid 496d7ea8-9739-544b-4ebd-ef08be936e6a \ @@ -35,4 +37,5 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-armtest/.config \ -chardev pty,id=charserial0 \ -serial chardev:charserial0 \ -audiodev '{"id":"audio1","driver":"none"}' \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/arm-vexpressa9-basic.xml b/tests/qemuxml2argvdata/arm-vexpressa9-basic.xml index ec9374f88b..80efab2c49 100644 --- a/tests/qemuxml2argvdata/arm-vexpressa9-basic.xml +++ b/tests/qemuxml2argvdata/arm-vexpressa9-basic.xml @@ -21,7 +21,7 @@ <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> - <emulator>/usr/bin/qemu-system-arm</emulator> + <emulator>/usr/bin/qemu-system-aarch64</emulator> <disk type='file' device='disk'> <source file='/arm.raw'/> <target dev='sda' bus='sd'/> diff --git a/tests/qemuxml2argvdata/arm-vexpressa9-nodevs.args b/tests/qemuxml2argvdata/arm-vexpressa9-nodevs.aarch64-latest.args similarity index 65% rename from tests/qemuxml2argvdata/arm-vexpressa9-nodevs.args rename to tests/qemuxml2argvdata/arm-vexpressa9-nodevs.aarch64-latest.args index f9638c5c80..a8dbc2b033 100644 --- a/tests/qemuxml2argvdata/arm-vexpressa9-nodevs.args +++ b/tests/qemuxml2argvdata/arm-vexpressa9-nodevs.aarch64-latest.args @@ -6,13 +6,15 @@ LOGNAME=test \ XDG_DATA_HOME=/tmp/lib/domain--1-armtest/.local/share \ XDG_CACHE_HOME=/tmp/lib/domain--1-armtest/.cache \ XDG_CONFIG_HOME=/tmp/lib/domain--1-armtest/.config \ -/usr/bin/qemu-system-arm \ +/usr/bin/qemu-system-aarch64 \ -name guest=armtest,debug-threads=on \ -S \ --object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-armtest/master-key.aes \ --machine vexpress-a9,usb=off,dump-guest-core=off \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-armtest/master-key.aes"}' \ +-machine vexpress-a9,usb=off,dump-guest-core=off,memory-backend=vexpress.highmem \ -accel tcg \ +-cpu cortex-a9 \ -m 1024 \ +-object '{"qom-type":"memory-backend-ram","id":"vexpress.highmem","size":1073741824}' \ -overcommit mem-lock=off \ -smp 1,sockets=1,cores=1,threads=1 \ -uuid 496d7ea8-9739-544b-4ebd-ef08be936e6a \ @@ -30,4 +32,5 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-armtest/.config \ -dtb /arm.dtb \ -usb \ -audiodev '{"id":"audio1","driver":"none"}' \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/arm-vexpressa9-nodevs.xml b/tests/qemuxml2argvdata/arm-vexpressa9-nodevs.xml index 3f318c8bb2..44ee27a659 100644 --- a/tests/qemuxml2argvdata/arm-vexpressa9-nodevs.xml +++ b/tests/qemuxml2argvdata/arm-vexpressa9-nodevs.xml @@ -21,6 +21,6 @@ <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> - <emulator>/usr/bin/qemu-system-arm</emulator> + <emulator>/usr/bin/qemu-system-aarch64</emulator> </devices> </domain> diff --git a/tests/qemuxml2argvdata/arm-vexpressa9-virtio.args b/tests/qemuxml2argvdata/arm-vexpressa9-virtio.aarch64-latest.args similarity index 54% rename from tests/qemuxml2argvdata/arm-vexpressa9-virtio.args rename to tests/qemuxml2argvdata/arm-vexpressa9-virtio.aarch64-latest.args index bb2097bd48..6f53f01300 100644 --- a/tests/qemuxml2argvdata/arm-vexpressa9-virtio.args +++ b/tests/qemuxml2argvdata/arm-vexpressa9-virtio.aarch64-latest.args @@ -6,13 +6,15 @@ LOGNAME=test \ XDG_DATA_HOME=/tmp/lib/domain--1-armtest/.local/share \ XDG_CACHE_HOME=/tmp/lib/domain--1-armtest/.cache \ XDG_CONFIG_HOME=/tmp/lib/domain--1-armtest/.config \ -/usr/bin/qemu-system-arm \ +/usr/bin/qemu-system-aarch64 \ -name guest=armtest,debug-threads=on \ -S \ --object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-armtest/master-key.aes \ --machine vexpress-a9,usb=off,dump-guest-core=off \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-armtest/master-key.aes"}' \ +-machine vexpress-a9,usb=off,dump-guest-core=off,memory-backend=vexpress.highmem \ -accel tcg \ +-cpu cortex-a9 \ -m 1024 \ +-object '{"qom-type":"memory-backend-ram","id":"vexpress.highmem","size":1073741824}' \ -overcommit mem-lock=off \ -smp 1,sockets=1,cores=1,threads=1 \ -uuid 496d7ea8-9739-544b-4ebd-ef08be936e6a \ @@ -28,19 +30,20 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-armtest/.config \ -initrd /arm.initrd \ -append 'console=ttyAMA0,115200n8 rw root=/dev/vda3 rootwait physmap.enabled=0' \ -dtb /arm.dtb \ --device virtio-serial-device,id=virtio-serial0 \ +-device '{"driver":"virtio-serial-device","id":"virtio-serial0"}' \ -usb \ -blockdev '{"driver":"file","filename":"/arm.raw","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 virtio-blk-device,drive=libvirt-1-format,id=virtio-disk0,bootindex=1 \ +-device '{"driver":"virtio-blk-device","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -netdev user,id=hostnet0 \ --device virtio-net-device,netdev=hostnet0,id=net0,mac=52:54:00:09:a4:37 \ +-device '{"driver":"virtio-net-device","netdev":"hostnet0","id":"net0","mac":"52:54:00:09:a4:37"}' \ -chardev pty,id=charserial0 \ -serial chardev:charserial0 \ -chardev pty,id=charconsole1 \ --device virtconsole,chardev=charconsole1,id=console1 \ +-device '{"driver":"virtconsole","chardev":"charconsole1","id":"console1"}' \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-device,id=balloon0 \ --object rng-random,id=objrng0,filename=/dev/random \ --device virtio-rng-device,rng=objrng0,id=rng0 \ +-device '{"driver":"virtio-balloon-device","id":"balloon0"}' \ +-object '{"qom-type":"rng-random","id":"objrng0","filename":"/dev/random"}' \ +-device '{"driver":"virtio-rng-device","rng":"objrng0","id":"rng0"}' \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/arm-vexpressa9-virtio.xml b/tests/qemuxml2argvdata/arm-vexpressa9-virtio.xml index 2acf3c9680..b498d1761b 100644 --- a/tests/qemuxml2argvdata/arm-vexpressa9-virtio.xml +++ b/tests/qemuxml2argvdata/arm-vexpressa9-virtio.xml @@ -21,7 +21,7 @@ <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> - <emulator>/usr/bin/qemu-system-arm</emulator> + <emulator>/usr/bin/qemu-system-aarch64</emulator> <disk type='file' device='disk'> <source file='/arm.raw'/> <target dev='vda' bus='virtio'/> diff --git a/tests/qemuxml2argvdata/arm-virt-virtio.aarch64-latest.args b/tests/qemuxml2argvdata/arm-virt-virtio.aarch64-latest.args new file mode 100644 index 0000000000..970644e10c --- /dev/null +++ b/tests/qemuxml2argvdata/arm-virt-virtio.aarch64-latest.args @@ -0,0 +1,54 @@ +LC_ALL=C \ +PATH=/bin \ +HOME=/tmp/lib/domain--1-armtest \ +USER=test \ +LOGNAME=test \ +XDG_DATA_HOME=/tmp/lib/domain--1-armtest/.local/share \ +XDG_CACHE_HOME=/tmp/lib/domain--1-armtest/.cache \ +XDG_CONFIG_HOME=/tmp/lib/domain--1-armtest/.config \ +/usr/bin/qemu-system-aarch64 \ +-name guest=armtest,debug-threads=on \ +-S \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-armtest/master-key.aes"}' \ +-machine virt,usb=off,gic-version=2,dump-guest-core=off,memory-backend=mach-virt.ram \ +-accel tcg \ +-cpu cortex-a15 \ +-m 1024 \ +-object '{"qom-type":"memory-backend-ram","id":"mach-virt.ram","size":1073741824}' \ +-overcommit mem-lock=off \ +-smp 1,sockets=1,cores=1,threads=1 \ +-uuid 496d7ea8-9739-544b-4ebd-ef08be936e6a \ +-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 \ +-kernel /arm.kernel \ +-initrd /arm.initrd \ +-append 'console=ttyAMA0,115200n8 rw root=/dev/vda rootwait physmap.enabled=0' \ +-dtb /arm.dtb \ +-device '{"driver":"pcie-root-port","port":8,"chassis":1,"id":"pci.1","bus":"pcie.0","multifunction":true,"addr":"0x1"}' \ +-device '{"driver":"pcie-root-port","port":9,"chassis":2,"id":"pci.2","bus":"pcie.0","addr":"0x1.0x1"}' \ +-device '{"driver":"pcie-root-port","port":10,"chassis":3,"id":"pci.3","bus":"pcie.0","addr":"0x1.0x2"}' \ +-device '{"driver":"pcie-root-port","port":11,"chassis":4,"id":"pci.4","bus":"pcie.0","addr":"0x1.0x3"}' \ +-device '{"driver":"pcie-root-port","port":12,"chassis":5,"id":"pci.5","bus":"pcie.0","addr":"0x1.0x4"}' \ +-device '{"driver":"pcie-root-port","port":13,"chassis":6,"id":"pci.6","bus":"pcie.0","addr":"0x1.0x5"}' \ +-device '{"driver":"virtio-serial-pci","id":"virtio-serial0","bus":"pci.2","addr":"0x0"}' \ +-blockdev '{"driver":"file","filename":"/arm.raw","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 '{"driver":"virtio-blk-pci","bus":"pci.3","addr":"0x0","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ +-netdev user,id=hostnet0 \ +-device '{"driver":"virtio-net-pci","netdev":"hostnet0","id":"net0","mac":"52:54:00:09:a4:37","bus":"pci.1","addr":"0x0"}' \ +-chardev pty,id=charserial0 \ +-serial chardev:charserial0 \ +-chardev pty,id=charconsole1 \ +-device '{"driver":"virtconsole","chardev":"charconsole1","id":"console1"}' \ +-audiodev '{"id":"audio1","driver":"none"}' \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.4","addr":"0x0"}' \ +-object '{"qom-type":"rng-random","id":"objrng0","filename":"/dev/random"}' \ +-device '{"driver":"virtio-rng-pci","rng":"objrng0","id":"rng0","bus":"pci.5","addr":"0x0"}' \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ +-msg timestamp=on diff --git a/tests/qemuxml2argvdata/arm-virt-virtio.args b/tests/qemuxml2argvdata/arm-virt-virtio.args deleted file mode 100644 index be24dc0e71..0000000000 --- a/tests/qemuxml2argvdata/arm-virt-virtio.args +++ /dev/null @@ -1,45 +0,0 @@ -LC_ALL=C \ -PATH=/bin \ -HOME=/tmp/lib/domain--1-armtest \ -USER=test \ -LOGNAME=test \ -XDG_DATA_HOME=/tmp/lib/domain--1-armtest/.local/share \ -XDG_CACHE_HOME=/tmp/lib/domain--1-armtest/.cache \ -XDG_CONFIG_HOME=/tmp/lib/domain--1-armtest/.config \ -/usr/bin/qemu-system-arm \ --name guest=armtest,debug-threads=on \ --S \ --object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-armtest/master-key.aes \ --machine virt,usb=off,dump-guest-core=off \ --accel tcg \ --m 1024 \ --overcommit mem-lock=off \ --smp 1,sockets=1,cores=1,threads=1 \ --uuid 496d7ea8-9739-544b-4ebd-ef08be936e6a \ --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 \ --kernel /arm.kernel \ --initrd /arm.initrd \ --append 'console=ttyAMA0,115200n8 rw root=/dev/vda rootwait physmap.enabled=0' \ --dtb /arm.dtb \ --device virtio-serial-device,id=virtio-serial0 \ --blockdev '{"driver":"file","filename":"/arm.raw","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 virtio-blk-device,drive=libvirt-1-format,id=virtio-disk0,bootindex=1 \ --netdev user,id=hostnet0 \ --device virtio-net-device,netdev=hostnet0,id=net0,mac=52:54:00:09:a4:37 \ --chardev pty,id=charserial0 \ --serial chardev:charserial0 \ --chardev pty,id=charconsole1 \ --device virtconsole,chardev=charconsole1,id=console1 \ --audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-device,id=balloon0 \ --object rng-random,id=objrng0,filename=/dev/random \ --device virtio-rng-device,rng=objrng0,id=rng0 \ --msg timestamp=on diff --git a/tests/qemuxml2argvdata/arm-virt-virtio.xml b/tests/qemuxml2argvdata/arm-virt-virtio.xml index 913c96eef0..39620070bd 100644 --- a/tests/qemuxml2argvdata/arm-virt-virtio.xml +++ b/tests/qemuxml2argvdata/arm-virt-virtio.xml @@ -21,7 +21,7 @@ <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> - <emulator>/usr/bin/qemu-system-arm</emulator> + <emulator>/usr/bin/qemu-system-aarch64</emulator> <disk type='file' device='disk'> <source file='/arm.raw'/> <target dev='vda' bus='virtio'/> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 33dcb247de..1f9a2b4d96 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2450,15 +2450,10 @@ mymain(void) QEMU_CAPS_ICH9_AHCI, QEMU_CAPS_DEVICE_QXL); - DO_TEST_NOCAPS("arm-vexpressa9-nodevs"); - DO_TEST_NOCAPS("arm-vexpressa9-basic"); - DO_TEST("arm-vexpressa9-virtio", - QEMU_CAPS_DEVICE_VIRTIO_MMIO, - QEMU_CAPS_DEVICE_VIRTIO_RNG, QEMU_CAPS_OBJECT_RNG_RANDOM); - DO_TEST("arm-virt-virtio", - QEMU_CAPS_DEVICE_VIRTIO_MMIO, - QEMU_CAPS_DEVICE_PL011, - QEMU_CAPS_DEVICE_VIRTIO_RNG, QEMU_CAPS_OBJECT_RNG_RANDOM); + DO_TEST_CAPS_ARCH_LATEST("arm-vexpressa9-nodevs", "aarch64"); + DO_TEST_CAPS_ARCH_LATEST("arm-vexpressa9-basic", "aarch64"); + DO_TEST_CAPS_ARCH_LATEST("arm-vexpressa9-virtio", "aarch64"); + DO_TEST_CAPS_ARCH_LATEST("arm-virt-virtio", "aarch64"); DO_TEST("aarch64-virt-virtio", QEMU_CAPS_DEVICE_VIRTIO_MMIO, @@ -2576,10 +2571,7 @@ mymain(void) DO_TEST_PARSE_ERROR("aarch64-gic-not-arm", QEMU_CAPS_KVM, QEMU_CAPS_MACH_VIRT_GIC_VERSION); - DO_TEST("aarch64-kvm-32-on-64", - QEMU_CAPS_DEVICE_VIRTIO_MMIO, - QEMU_CAPS_DEVICE_PL011, - QEMU_CAPS_KVM); + DO_TEST_CAPS_ARCH_LATEST("aarch64-kvm-32-on-64", "aarch64"); DO_TEST("aarch64-pci-serial", QEMU_CAPS_DEVICE_PCI_SERIAL, QEMU_CAPS_OBJECT_GPEX, -- 2.39.2

All tests were converted to use real capabilities so there's no need to support the infrastructure for fake tests. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- tests/testutilsqemu.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index c5057fb051..80069535a9 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -29,14 +29,12 @@ static const char *qemu_emulators[VIR_ARCH_LAST] = { [VIR_ARCH_I686] = "/usr/bin/qemu-system-i386", [VIR_ARCH_X86_64] = "/usr/bin/qemu-system-x86_64", [VIR_ARCH_AARCH64] = "/usr/bin/qemu-system-aarch64", - [VIR_ARCH_ARMV7L] = "/usr/bin/qemu-system-arm", [VIR_ARCH_PPC64] = "/usr/bin/qemu-system-ppc64", [VIR_ARCH_S390X] = "/usr/bin/qemu-system-s390x", }; static const virArch arch_alias[VIR_ARCH_LAST] = { [VIR_ARCH_PPC64LE] = VIR_ARCH_PPC64, - [VIR_ARCH_ARMV6L] = VIR_ARCH_ARMV7L, }; static const char *const i386_machines[] = { @@ -49,9 +47,6 @@ static const char *const x86_64_machines[] = { static const char *const aarch64_machines[] = { "virt", "virt-2.6", "versatilepb", NULL }; -static const char *const arm_machines[] = { - "vexpress-a9", "virt", NULL -}; static const char *const ppc64_machines[] = { "pseries", NULL }; @@ -63,7 +58,6 @@ static const char *const *qemu_machines[VIR_ARCH_LAST] = { [VIR_ARCH_I686] = i386_machines, [VIR_ARCH_X86_64] = x86_64_machines, [VIR_ARCH_AARCH64] = aarch64_machines, - [VIR_ARCH_ARMV7L] = arm_machines, [VIR_ARCH_PPC64] = ppc64_machines, [VIR_ARCH_S390X] = s390x_machines, }; @@ -72,7 +66,6 @@ static const char *const *hvf_machines[VIR_ARCH_LAST] = { [VIR_ARCH_I686] = NULL, [VIR_ARCH_X86_64] = x86_64_machines, [VIR_ARCH_AARCH64] = aarch64_machines, - [VIR_ARCH_ARMV7L] = NULL, [VIR_ARCH_PPC64] = NULL, [VIR_ARCH_RISCV64] = NULL, [VIR_ARCH_S390X] = NULL, @@ -82,7 +75,6 @@ static const char *qemu_default_ram_id[VIR_ARCH_LAST] = { [VIR_ARCH_I686] = "pc.ram", [VIR_ARCH_X86_64] = "pc.ram", [VIR_ARCH_AARCH64] = "mach-virt.ram", - [VIR_ARCH_ARMV7L] = "vexpress.highmem", [VIR_ARCH_PPC64] = "ppc_spapr.ram", [VIR_ARCH_S390X] = "s390.ram", }; -- 2.39.2

On a Friday in 2023, Peter Krempa wrote:
The idea of this series is to start cleaning out fake caps testing as much as possible in favor of real capabilities (as much as possible).
The end goal is to replace all fake caps test cases with real caps.
This series was inspired by the effort to remove/deprecate qemu-system-i386 and qemu-system-arm.
This series cleans up less-tested arches and finishes off with cleaning out 'qemu-system-arm'
Further work is with other arches which have far more fake tests.
Peter Krempa (31): tests: domainschemadata: Drop redundant tests tests: qemu: Move testing of default cache and disk source with space to 'sata-device' util: virfilecache: Introduce virFileCacheClear for usage in tests qemuxml2argvtest: Fix serial-unix-missing-source case qemuTestCapsCacheInsert*: Drop the file cache rather than poisoning it qemuTestCapsCacheInsert*: Directly insert real capabilities qemuxml2argvtest: Convert 'sparc-minimal' case to DO_TEST_CAPS_ARCH_LATEST testutilsqemu: Drop support for fake-caps testing of 'sparc' architecture testutilsqemu: Unify array for filling fake machine types testutilsqemu: Drop support for fake-caps testing of 'riscv32' architecture qemu: capabilities: Don't make callers check return of virQEMUCapsNew(Binary) qemu: capabilities: Remove return value from virQEMUCaps(SEV|SGX)InfoCopy qemu: domain: Restructure control flow in qemuDomainFixupCPUs cpu: Remove return value from virCPUDefCopyModel(Filter) conf: cpu: Remove NULL check from virCPUDefCopyWithoutModel conf: cpu: Remove NULL check from virCPUDefCopy qemu: capabilities: Remove return value from virQEMUCapsHostCPUDataCopy qemu: capabilities: Remove return value from virQEMUCapsAccelCopy qemu: Remove return value checks from calls to virQEMUCapsNewCopy qemuTestCapsCacheInsertImpl: Require that callers always pass capabilities testutilsqemu: Rework setting of fake capabilities testutilsqemu: Introduce ARG_QEMU_CAPS_DEL, to mask out flags from real caps qemuxml2(argv|xml)test: Convert last fake-caps riscv64 tests to real caps testutilsqemu: Drop support for fake-caps testing of 'riscv64' architecture tests: qemu: Add 'ppc' machine caps based on 'qemu-system-ppc' on fedora qemuxml2argvdata: Convert test cases for 'ppc' architecture to latest caps testutilsqemu: Drop support for fake-caps testing of 'ppc' architecture qemu: Always assume QEMU_CAPS_CPU_AARCH64_OFF qemu: capabilities: Retire QEMU_CAPS_CPU_AARCH64_OFF tests: qemuxml2argvdata: Port 'qemu-system-arm' cases with fake tests to 'qemu-system-aarch64' testutilsqemu: Drop support for fake-caps testing of 'arm' architecture
src/conf/cpu_conf.c | 19 +- src/conf/cpu_conf.h | 10 +- src/cpu/cpu_arm.c | 8 +- src/cpu/cpu_ppc64.c | 8 +- src/cpu/cpu_s390.c | 8 +- src/cpu/cpu_x86.c | 29 +- src/libvirt_private.syms | 1 + src/qemu/qemu_capabilities.c | 104 +- src/qemu/qemu_capabilities.h | 2 +- src/qemu/qemu_domain.c | 27 +- src/qemu/qemu_driver.c | 12 +- src/qemu/qemu_migration_cookie.c | 3 +- src/qemu/qemu_process.c | 12 +- src/qemu/qemu_validate.c | 9 - src/util/virfilecache.c | 16 + src/util/virfilecache.h | 4 + tests/cputest.c | 3 +- tests/domaincapsdata/qemu_7.2.0.ppc.xml | 158 + tests/domainschemadata/backing-chains.xml | 94 - tests/domainschemadata/default-cache-mode.xml | 26 - .../domain-disk-source-space.xml | 36 - tests/domainschemadata/maxMemory.xml | 19 - .../qemu-simple-description-title.xml | 27 - tests/domainschemadata/timers.xml | 28 - .../caps_4.2.0.aarch64.xml | 1 - .../caps_5.0.0.aarch64.xml | 1 - .../caps_5.2.0.aarch64.xml | 1 - .../caps_6.0.0.aarch64.xml | 1 - .../caps_6.2.0.aarch64.xml | 1 - .../caps_7.0.0.aarch64.xml | 1 - .../caps_7.2.0.ppc.replies | 32233 ++++++++++++++++ tests/qemucapabilitiesdata/caps_7.2.0.ppc.xml | 559 + tests/qemucapabilitiestest.c | 9 +- tests/qemucaps2xmloutdata/caps.ppc.xml | 25 + tests/qemucaps2xmltest.c | 3 +- tests/qemuhotplugtest.c | 3 +- tests/qemumemlocktest.c | 5 +- tests/qemusecuritytest.c | 2 + tests/qemustatusxml2xmltest.c | 2 + ... aarch64-kvm-32-on-64.aarch64-latest.args} | 15 +- .../qemuxml2argvdata/aarch64-kvm-32-on-64.err | 1 - .../qemuxml2argvdata/aarch64-kvm-32-on-64.xml | 2 +- ... arm-vexpressa9-basic.aarch64-latest.args} | 9 +- .../qemuxml2argvdata/arm-vexpressa9-basic.xml | 2 +- ...arm-vexpressa9-nodevs.aarch64-latest.args} | 9 +- .../arm-vexpressa9-nodevs.xml | 2 +- ...arm-vexpressa9-virtio.aarch64-latest.args} | 23 +- .../arm-vexpressa9-virtio.xml | 2 +- .../arm-virt-virtio.aarch64-latest.args | 54 + tests/qemuxml2argvdata/arm-virt-virtio.args | 45 - tests/qemuxml2argvdata/arm-virt-virtio.xml | 2 +- .../disk-sata-device.x86_64-latest.args | 2 +- tests/qemuxml2argvdata/disk-sata-device.xml | 3 +- .../{ppc-dtb.args => ppc-dtb.ppc-latest.args} | 12 +- tests/qemuxml2argvdata/ppc-dtb.xml | 2 +- ...al.args => ppce500-serial.ppc-latest.args} | 12 +- tests/qemuxml2argvdata/ppce500-serial.xml | 2 +- ...s => riscv64-virt-pci.riscv64-latest.args} | 8 +- ....args => riscv64-virt.riscv64-latest.args} | 10 +- .../serial-unix-missing-source.err | 1 - ...rial-unix-missing-source.x86_64-latest.err | 2 +- .../serial-unix-missing-source.xml | 4 +- ...l.args => sparc-minimal.sparc-latest.args} | 1 + tests/qemuxml2argvtest.c | 43 +- .../disk-sata-device.x86_64-latest.xml | 40 + ...ml => riscv64-virt-pci.riscv64-latest.xml} | 0 ...rt.xml => riscv64-virt.riscv64-latest.xml} | 20 +- tests/qemuxml2xmltest.c | 9 +- tests/securityselinuxlabeltest.c | 3 +- tests/testutilshostcpus.h | 10 + tests/testutilsqemu.c | 227 +- tests/testutilsqemu.h | 5 +- 72 files changed, 33400 insertions(+), 692 deletions(-) create mode 100644 tests/domaincapsdata/qemu_7.2.0.ppc.xml delete mode 100644 tests/domainschemadata/backing-chains.xml delete mode 100644 tests/domainschemadata/default-cache-mode.xml delete mode 100644 tests/domainschemadata/domain-disk-source-space.xml delete mode 100644 tests/domainschemadata/maxMemory.xml delete mode 100644 tests/domainschemadata/qemu-simple-description-title.xml delete mode 100644 tests/domainschemadata/timers.xml create mode 100644 tests/qemucapabilitiesdata/caps_7.2.0.ppc.replies create mode 100644 tests/qemucapabilitiesdata/caps_7.2.0.ppc.xml create mode 100644 tests/qemucaps2xmloutdata/caps.ppc.xml rename tests/qemuxml2argvdata/{aarch64-kvm-32-on-64.args => aarch64-kvm-32-on-64.aarch64-latest.args} (53%) delete mode 100644 tests/qemuxml2argvdata/aarch64-kvm-32-on-64.err rename tests/qemuxml2argvdata/{arm-vexpressa9-basic.args => arm-vexpressa9-basic.aarch64-latest.args} (71%) rename tests/qemuxml2argvdata/{arm-vexpressa9-nodevs.args => arm-vexpressa9-nodevs.aarch64-latest.args} (65%) rename tests/qemuxml2argvdata/{arm-vexpressa9-virtio.args => arm-vexpressa9-virtio.aarch64-latest.args} (54%) create mode 100644 tests/qemuxml2argvdata/arm-virt-virtio.aarch64-latest.args delete mode 100644 tests/qemuxml2argvdata/arm-virt-virtio.args rename tests/qemuxml2argvdata/{ppc-dtb.args => ppc-dtb.ppc-latest.args} (62%) rename tests/qemuxml2argvdata/{ppce500-serial.args => ppce500-serial.ppc-latest.args} (62%) rename tests/qemuxml2argvdata/{riscv64-virt-pci.args => riscv64-virt-pci.riscv64-latest.args} (67%) rename tests/qemuxml2argvdata/{riscv64-virt.args => riscv64-virt.riscv64-latest.args} (67%) delete mode 100644 tests/qemuxml2argvdata/serial-unix-missing-source.err rename tests/qemuxml2argvdata/{sparc-minimal.args => sparc-minimal.sparc-latest.args} (95%) create mode 100644 tests/qemuxml2xmloutdata/disk-sata-device.x86_64-latest.xml rename tests/qemuxml2xmloutdata/{riscv64-virt-pci.xml => riscv64-virt-pci.riscv64-latest.xml} (100%) rename tests/qemuxml2xmloutdata/{riscv64-virt.xml => riscv64-virt.riscv64-latest.xml} (53%)
Series: Reviewed-by: Ján Tomko <jtomko@redhat.com> Jano
participants (2)
-
Ján Tomko
-
Peter Krempa