[PATCH 00/33] ppc64 PowerNV machines support

Hi, The ppc64 PowerNV (Power Non-Virtualized) machine types is the bare-metal emulation of the IBM Power server. They follow a different specification than the virtualized guest emulation, a.k.a the pSeries guest that Libvirt supports for awhile. There is an interest in running these PowerNV machines using Libvirt, in particular due to the growing popularity of the OpenCI project. This is the motivation of this work. Although these machines are present in QEMU for a few years now, they only became "Libvirt compliant" recently in upstream QEMU. The reason is that running with '-nodefaults' wouldn't allow users to add PHBs manually in the command line. Since the correspondent capabilities are already present since QEMU 5.0 I didn't find a good way to block the creation of powerNV domains for older QEMU versions (suggestions welcome). Support for these machines consists of adding a specific root-port and pcie-root implemementation for each one of them. powernv8 uses pnv-phb3-root-port/pnv-phb3 and powernv9 uses pnv-phb4-root-port/pnv-phb4. PowerNV PHBs have a similar handling as the already existing spapr-pci-host-bridge bus. These domains needs BMC devices to turn off from the OS. These devices aren't implemented in Libvirt yet (to my surprise, given that it's an Intel interface), so the domains needs to be turned off using 'virsh destroy'. I have patches that implements the required BMC devices, but decided to post them as a follow up to not make this patch set too large. The series is organized as follows: - patch 1: same patch sent a few days ago in [1], reposted here because the capabilities was added on top of it; - patches 2-9: cleanups and simplifications to allow a simple powernv8 domain to boot; - patches 10-26: add root-port and phb of the powernv8 machine; - patches 27-33: add root-port and phb of the powernv9 machine. No change in existing pcie-root and pcie-root-port models were made. This work can also be fetched from here: https://gitlab.com/danielhb/libvirt/-/tree/pnv_v1 Frederic, fell free to give this a ride and let us know how it goes. [1] https://listman.redhat.com/archives/libvir-list/2022-January/msg00766.html Daniel Henrique Barboza (33): tests: update QEMU and domain ppc64 capabilities for qemu 7.0 qemu_domain.c: add PowerNV machine helpers qemu_capabilities.c: use 'MachineIsPowerPC' in DeviceDiskCaps qemu_validate.c: use qemuDomainIsPowerPC() in qemuValidateDomainChrDef() qemu_domain.c: define ISA as default PowerNV serial qemu_validate.c: enhance 'machine type not supported' message qemu_domain.c: disable default devices for PowerNV machines tests: add basic PowerNV8 test qemu_migration.c: forbid powernv domains migration qemu: introduce QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT conf: add 'pnv-phb3-root-port' domain definition qemu: add 'modelName' value for pnv-phb3-root-port device qemu: introduce QEMU_CAPS_DEVICE_PNV_PHB3 conf: add 'pnv-phb3' controller model qemu: add 'modelName' value for pnv-phb3 device domain_conf.c: fix identation in virDomainControllerDefParseXML() conf: parse and format <target chip-id='...'/> introduce virDomainControllerIsPowerNVPHB conf, qemu: add default 'chip-id' value for pnv-phb3 controllers conf, qemu: add default 'targetIndex' value for pnv-phb3 devs qemu_command.c: add command line for the pnv-phb3 device qemu_domain_address.c: change pnv-phb3 minimal downstream slot domain_conf: format pnv-phb3-root-port empty addr tests: add pnv-phb3-root-port test domain_validate.c: allow targetIndex 0 out of idx 0 for PowerNV PHBs domain_conf.c: reject duplicated pnv-phb3 devices qemu: introduce QEMU_CAPS_DEVICE_PNV_PHB4_ROOT_PORT conf: add 'pnv-phb4-root-port' domain definition qemu: add 'modelName' value for pnv-phb4-root-port device qemu: introduce QEMU_CAPS_DEVICE_PNV_PHB4 conf: add 'pnv-phb4' controller model qemu: add 'modelName' value for pnv-phb4 device tests: add PowerNV9 tests docs/formatdomain.rst | 4 + docs/schemas/domaincommon.rng | 10 + src/conf/domain_conf.c | 157 +- src/conf/domain_conf.h | 8 + src/conf/domain_validate.c | 5 +- src/libvirt_private.syms | 1 + src/qemu/qemu_capabilities.c | 12 +- src/qemu/qemu_capabilities.h | 4 + src/qemu/qemu_command.c | 21 +- src/qemu/qemu_domain.c | 56 +- src/qemu/qemu_domain.h | 4 +- src/qemu/qemu_domain_address.c | 64 +- src/qemu/qemu_migration.c | 6 + src/qemu/qemu_validate.c | 63 +- tests/domaincapsdata/qemu_7.0.0.ppc64.xml | 148 + .../qemucapabilitiesdata/caps_5.0.0.ppc64.xml | 4 + .../qemucapabilitiesdata/caps_5.2.0.ppc64.xml | 4 + .../qemucapabilitiesdata/caps_6.2.0.ppc64.xml | 4 + .../caps_7.0.0.ppc64.replies | 33825 ++++++++++++++++ .../qemucapabilitiesdata/caps_7.0.0.ppc64.xml | 1143 + ...default-video-type-ppc64.ppc64-latest.args | 8 +- tests/qemuxml2argvdata/powernv8-basic.args | 32 + tests/qemuxml2argvdata/powernv8-basic.xml | 16 + tests/qemuxml2argvdata/powernv8-dupPHBs.err | 1 + tests/qemuxml2argvdata/powernv8-dupPHBs.xml | 27 + .../qemuxml2argvdata/powernv8-root-port.args | 33 + tests/qemuxml2argvdata/powernv8-root-port.xml | 17 + .../qemuxml2argvdata/powernv8-two-sockets.xml | 26 + tests/qemuxml2argvdata/powernv9-dupPHBs.err | 1 + tests/qemuxml2argvdata/powernv9-dupPHBs.xml | 27 + .../qemuxml2argvdata/powernv9-root-port.args | 33 + tests/qemuxml2argvdata/powernv9-root-port.xml | 17 + ...ault-cpu-kvm-pseries-2.7.ppc64-latest.args | 8 +- ...ault-cpu-kvm-pseries-3.1.ppc64-latest.args | 8 +- ...ault-cpu-kvm-pseries-4.2.ppc64-latest.args | 8 +- ...ault-cpu-tcg-pseries-2.7.ppc64-latest.args | 8 +- ...ault-cpu-tcg-pseries-3.1.ppc64-latest.args | 8 +- ...ault-cpu-tcg-pseries-4.2.ppc64-latest.args | 8 +- .../ppc64-pseries-graphics.ppc64-latest.args | 22 +- .../ppc64-pseries-headless.ppc64-latest.args | 16 +- .../ppc64-tpmproxy-single.ppc64-latest.args | 6 +- .../ppc64-tpmproxy-with-tpm.ppc64-latest.args | 8 +- .../tpm-emulator-spapr.ppc64-latest.args | 14 +- tests/qemuxml2argvtest.c | 18 + tests/qemuxml2xmloutdata/powernv8-basic.xml | 31 + .../qemuxml2xmloutdata/powernv8-root-port.xml | 36 + .../powernv8-two-sockets.xml | 38 + .../qemuxml2xmloutdata/powernv9-root-port.xml | 36 + tests/qemuxml2xmltest.c | 15 + tests/testutilsqemu.c | 2 +- 50 files changed, 35963 insertions(+), 108 deletions(-) create mode 100644 tests/domaincapsdata/qemu_7.0.0.ppc64.xml create mode 100644 tests/qemucapabilitiesdata/caps_7.0.0.ppc64.replies create mode 100644 tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml create mode 100644 tests/qemuxml2argvdata/powernv8-basic.args create mode 100644 tests/qemuxml2argvdata/powernv8-basic.xml create mode 100644 tests/qemuxml2argvdata/powernv8-dupPHBs.err create mode 100644 tests/qemuxml2argvdata/powernv8-dupPHBs.xml create mode 100644 tests/qemuxml2argvdata/powernv8-root-port.args create mode 100644 tests/qemuxml2argvdata/powernv8-root-port.xml create mode 100644 tests/qemuxml2argvdata/powernv8-two-sockets.xml create mode 100644 tests/qemuxml2argvdata/powernv9-dupPHBs.err create mode 100644 tests/qemuxml2argvdata/powernv9-dupPHBs.xml create mode 100644 tests/qemuxml2argvdata/powernv9-root-port.args create mode 100644 tests/qemuxml2argvdata/powernv9-root-port.xml create mode 100644 tests/qemuxml2xmloutdata/powernv8-basic.xml create mode 100644 tests/qemuxml2xmloutdata/powernv8-root-port.xml create mode 100644 tests/qemuxml2xmloutdata/powernv8-two-sockets.xml create mode 100644 tests/qemuxml2xmloutdata/powernv9-root-port.xml -- 2.34.1

Changes in all 'ppc64-latest.ags' files were needed due to the JSONification of command line devices. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- tests/domaincapsdata/qemu_7.0.0.ppc64.xml | 148 + .../caps_7.0.0.ppc64.replies | 33825 ++++++++++++++++ .../qemucapabilitiesdata/caps_7.0.0.ppc64.xml | 1139 + ...default-video-type-ppc64.ppc64-latest.args | 8 +- ...ault-cpu-kvm-pseries-2.7.ppc64-latest.args | 8 +- ...ault-cpu-kvm-pseries-3.1.ppc64-latest.args | 8 +- ...ault-cpu-kvm-pseries-4.2.ppc64-latest.args | 8 +- ...ault-cpu-tcg-pseries-2.7.ppc64-latest.args | 8 +- ...ault-cpu-tcg-pseries-3.1.ppc64-latest.args | 8 +- ...ault-cpu-tcg-pseries-4.2.ppc64-latest.args | 8 +- .../ppc64-pseries-graphics.ppc64-latest.args | 22 +- .../ppc64-pseries-headless.ppc64-latest.args | 16 +- .../ppc64-tpmproxy-single.ppc64-latest.args | 6 +- .../ppc64-tpmproxy-with-tpm.ppc64-latest.args | 8 +- .../tpm-emulator-spapr.ppc64-latest.args | 14 +- 15 files changed, 35173 insertions(+), 61 deletions(-) create mode 100644 tests/domaincapsdata/qemu_7.0.0.ppc64.xml create mode 100644 tests/qemucapabilitiesdata/caps_7.0.0.ppc64.replies create mode 100644 tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml diff --git a/tests/domaincapsdata/qemu_7.0.0.ppc64.xml b/tests/domaincapsdata/qemu_7.0.0.ppc64.xml new file mode 100644 index 0000000000..0f98870bf7 --- /dev/null +++ b/tests/domaincapsdata/qemu_7.0.0.ppc64.xml @@ -0,0 +1,148 @@ +<domainCapabilities> + <path>/usr/bin/qemu-system-ppc64</path> + <domain>kvm</domain> + <machine>pseries-7.0</machine> + <arch>ppc64</arch> + <vcpu max='2147483647'/> + <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='yes'> + <enum name='maximumMigratable'> + <value>on</value> + <value>off</value> + </enum> + </mode> + <mode name='host-model' supported='yes'> + <model fallback='allow'>POWER8</model> + </mode> + <mode name='custom' supported='yes'> + <model usable='unknown'>POWER9</model> + <model usable='unknown'>POWER8</model> + <model usable='unknown'>POWER7</model> + </mode> + </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>lun</value> + </enum> + <enum name='bus'> + <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>vnc</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='yes'> + <enum name='model'> + <value>tpm-spapr</value> + <value>spapr-tpm-proxy</value> + </enum> + <enum name='backendModel'> + <value>passthrough</value> + <value>emulator</value> + </enum> + </tpm> + </devices> + <features> + <gic supported='no'/> + <vmcoreinfo supported='no'/> + <genid supported='no'/> + <backingStoreInput supported='yes'/> + <backup supported='yes'/> + <sev supported='no'/> + </features> +</domainCapabilities> diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.replies b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.replies new file mode 100644 index 0000000000..d935e74dff --- /dev/null +++ b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.replies @@ -0,0 +1,33825 @@ +{ + "execute": "qmp_capabilities", + "id": "libvirt-1" +} + +{ + "return": { + }, + "id": "libvirt-1" +} + +{ + "execute": "query-version", + "id": "libvirt-2" +} + +{ + "return": { + "qemu": { + "micro": 50, + "minor": 2, + "major": 6 + }, + "package": "v6.2.0-886-g6621441db5" + }, + "id": "libvirt-2" +} + +{ + "execute": "query-target", + "id": "libvirt-3" +} + +{ + "return": { + "arch": "ppc64" + }, + "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": "RDMA_GID_STATUS_CHANGED", + "meta-type": "event", + "arg-type": "107" + }, + { + "name": "query-rocker", + "ret-type": "109", + "meta-type": "command", + "arg-type": "108" + }, + { + "name": "query-rocker-ports", + "ret-type": "[111]", + "meta-type": "command", + "arg-type": "110" + }, + { + "name": "query-rocker-of-dpa-flows", + "ret-type": "[113]", + "meta-type": "command", + "arg-type": "112" + }, + { + "name": "query-rocker-of-dpa-groups", + "ret-type": "[115]", + "meta-type": "command", + "arg-type": "114" + }, + { + "name": "query-tpm-models", + "ret-type": "[116]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-tpm-types", + "ret-type": "[117]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-tpm", + "ret-type": "[118]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "set_password", + "ret-type": "0", + "meta-type": "command", + "arg-type": "119" + }, + { + "name": "expire_password", + "ret-type": "0", + "meta-type": "command", + "arg-type": "120" + }, + { + "name": "screendump", + "ret-type": "0", + "meta-type": "command", + "arg-type": "121" + }, + { + "name": "query-vnc", + "ret-type": "126", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-vnc-servers", + "ret-type": "[127]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "change-vnc-password", + "ret-type": "0", + "meta-type": "command", + "arg-type": "128" + }, + { + "name": "VNC_CONNECTED", + "meta-type": "event", + "arg-type": "129" + }, + { + "name": "VNC_INITIALIZED", + "meta-type": "event", + "arg-type": "130" + }, + { + "name": "VNC_DISCONNECTED", + "meta-type": "event", + "arg-type": "131" + }, + { + "name": "query-mice", + "ret-type": "[132]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "send-key", + "ret-type": "0", + "meta-type": "command", + "arg-type": "133" + }, + { + "name": "input-send-event", + "ret-type": "0", + "meta-type": "command", + "arg-type": "134" + }, + { + "name": "query-display-options", + "ret-type": "135", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "display-reload", + "ret-type": "0", + "meta-type": "command", + "arg-type": "136" + }, + { + "name": "query-migrate", + "ret-type": "137", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "migrate-set-capabilities", + "ret-type": "0", + "meta-type": "command", + "arg-type": "138" + }, + { + "name": "query-migrate-capabilities", + "ret-type": "[139]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "migrate-set-parameters", + "ret-type": "0", + "meta-type": "command", + "arg-type": "140" + }, + { + "name": "query-migrate-parameters", + "ret-type": "141", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "client_migrate_info", + "ret-type": "0", + "meta-type": "command", + "arg-type": "142" + }, + { + "name": "migrate-start-postcopy", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "MIGRATION", + "meta-type": "event", + "arg-type": "143" + }, + { + "name": "MIGRATION_PASS", + "meta-type": "event", + "arg-type": "144" + }, + { + "name": "COLO_EXIT", + "meta-type": "event", + "arg-type": "145" + }, + { + "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": "146" + }, + { + "name": "migrate", + "ret-type": "0", + "meta-type": "command", + "arg-type": "147" + }, + { + "name": "migrate-incoming", + "ret-type": "0", + "meta-type": "command", + "arg-type": "148" + }, + { + "name": "xen-save-devices-state", + "ret-type": "0", + "meta-type": "command", + "arg-type": "149" + }, + { + "name": "xen-set-global-dirty-log", + "ret-type": "0", + "meta-type": "command", + "arg-type": "150" + }, + { + "name": "xen-load-devices-state", + "ret-type": "0", + "meta-type": "command", + "arg-type": "151" + }, + { + "name": "xen-set-replication", + "ret-type": "0", + "meta-type": "command", + "arg-type": "152" + }, + { + "name": "query-xen-replication-status", + "ret-type": "153", + "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": "154", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "migrate-recover", + "ret-type": "0", + "allow-oob": true, + "meta-type": "command", + "arg-type": "155" + }, + { + "name": "migrate-pause", + "ret-type": "0", + "allow-oob": true, + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "UNPLUG_PRIMARY", + "meta-type": "event", + "arg-type": "156" + }, + { + "name": "calc-dirty-rate", + "ret-type": "0", + "meta-type": "command", + "arg-type": "157" + }, + { + "name": "query-dirty-rate", + "ret-type": "158", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "snapshot-save", + "ret-type": "0", + "meta-type": "command", + "arg-type": "159" + }, + { + "name": "snapshot-load", + "ret-type": "0", + "meta-type": "command", + "arg-type": "160" + }, + { + "name": "snapshot-delete", + "ret-type": "0", + "meta-type": "command", + "arg-type": "161" + }, + { + "name": "transaction", + "ret-type": "0", + "meta-type": "command", + "arg-type": "162" + }, + { + "name": "trace-event-get-state", + "ret-type": "[164]", + "meta-type": "command", + "arg-type": "163" + }, + { + "name": "trace-event-set-state", + "ret-type": "0", + "meta-type": "command", + "arg-type": "165" + }, + { + "name": "qmp_capabilities", + "ret-type": "0", + "meta-type": "command", + "arg-type": "166" + }, + { + "name": "query-version", + "ret-type": "167", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-commands", + "ret-type": "[168]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "quit", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-qmp-schema", + "ret-type": "[169]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "qom-list", + "ret-type": "[171]", + "meta-type": "command", + "arg-type": "170" + }, + { + "name": "qom-get", + "ret-type": "any", + "meta-type": "command", + "arg-type": "172" + }, + { + "name": "qom-set", + "ret-type": "0", + "meta-type": "command", + "arg-type": "173" + }, + { + "name": "qom-list-types", + "ret-type": "[175]", + "meta-type": "command", + "arg-type": "174" + }, + { + "name": "qom-list-properties", + "ret-type": "[171]", + "meta-type": "command", + "arg-type": "176" + }, + { + "name": "object-add", + "ret-type": "0", + "meta-type": "command", + "arg-type": "177" + }, + { + "name": "object-del", + "ret-type": "0", + "meta-type": "command", + "arg-type": "178" + }, + { + "name": "device-list-properties", + "ret-type": "[171]", + "meta-type": "command", + "arg-type": "179" + }, + { + "name": "device_add", + "ret-type": "0", + "meta-type": "command", + "arg-type": "180", + "features": [ + "json-cli", + "json-cli-hotplug" + ] + }, + { + "name": "device_del", + "ret-type": "0", + "meta-type": "command", + "arg-type": "181" + }, + { + "name": "DEVICE_DELETED", + "meta-type": "event", + "arg-type": "182" + }, + { + "name": "DEVICE_UNPLUG_GUEST_ERROR", + "meta-type": "event", + "arg-type": "183" + }, + { + "name": "query-cpus-fast", + "ret-type": "[184]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-machines", + "ret-type": "[185]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-current-machine", + "ret-type": "186", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-target", + "ret-type": "187", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-uuid", + "ret-type": "188", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-vm-generation-id", + "ret-type": "189", + "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": "190", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "memsave", + "ret-type": "0", + "meta-type": "command", + "arg-type": "191" + }, + { + "name": "pmemsave", + "ret-type": "0", + "meta-type": "command", + "arg-type": "192" + }, + { + "name": "query-memdev", + "ret-type": "[193]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-hotpluggable-cpus", + "ret-type": "[194]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "set-numa-node", + "ret-type": "0", + "meta-type": "command", + "arg-type": "195" + }, + { + "name": "balloon", + "ret-type": "0", + "meta-type": "command", + "arg-type": "196" + }, + { + "name": "query-balloon", + "ret-type": "197", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "BALLOON_CHANGE", + "meta-type": "event", + "arg-type": "198" + }, + { + "name": "query-memory-size-summary", + "ret-type": "199", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-memory-devices", + "ret-type": "[200]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "MEMORY_DEVICE_SIZE_CHANGE", + "meta-type": "event", + "arg-type": "201" + }, + { + "name": "MEM_UNPLUG_ERROR", + "meta-type": "event", + "arg-type": "202", + "features": [ + "deprecated" + ] + }, + { + "name": "x-query-irq", + "ret-type": "203", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-jit", + "ret-type": "203", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-numa", + "ret-type": "203", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-opcount", + "ret-type": "203", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-profile", + "ret-type": "203", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-ramblock", + "ret-type": "203", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-rdma", + "ret-type": "203", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-roms", + "ret-type": "203", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "x-query-usb", + "ret-type": "203", + "meta-type": "command", + "arg-type": "0", + "features": [ + "unstable" + ] + }, + { + "name": "query-cpu-definitions", + "ret-type": "[210]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-replay", + "ret-type": "211", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "replay-break", + "ret-type": "0", + "meta-type": "command", + "arg-type": "212" + }, + { + "name": "replay-delete-break", + "ret-type": "0", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "replay-seek", + "ret-type": "0", + "meta-type": "command", + "arg-type": "213" + }, + { + "name": "yank", + "ret-type": "0", + "allow-oob": true, + "meta-type": "command", + "arg-type": "214" + }, + { + "name": "query-yank", + "ret-type": "[215]", + "allow-oob": true, + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "add_client", + "ret-type": "0", + "meta-type": "command", + "arg-type": "216" + }, + { + "name": "query-name", + "ret-type": "217", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-iothreads", + "ret-type": "[218]", + "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": "219", + "features": [ + "savevm-monitor-nodes" + ] + }, + { + "name": "getfd", + "ret-type": "0", + "meta-type": "command", + "arg-type": "220" + }, + { + "name": "closefd", + "ret-type": "0", + "meta-type": "command", + "arg-type": "221" + }, + { + "name": "add-fd", + "ret-type": "223", + "meta-type": "command", + "arg-type": "222" + }, + { + "name": "remove-fd", + "ret-type": "0", + "meta-type": "command", + "arg-type": "224" + }, + { + "name": "query-fdsets", + "ret-type": "[225]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "query-command-line-options", + "ret-type": "[227]", + "meta-type": "command", + "arg-type": "226" + }, + { + "name": "RTC_CHANGE", + "meta-type": "event", + "arg-type": "228" + }, + { + "name": "query-acpi-ospm-status", + "ret-type": "[238]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "ACPI_DEVICE_OST", + "meta-type": "event", + "arg-type": "239" + }, + { + "name": "query-pci", + "ret-type": "[240]", + "meta-type": "command", + "arg-type": "0" + }, + { + "name": "0", + "members": [ + ], + "meta-type": "object" + }, + { + "name": "1", + "members": [ + { + "name": "running", + "type": "bool" + }, + { + "name": "singlestep", + "type": "bool" + }, + { + "name": "status", + "type": "241" + } + ], + "meta-type": "object" + }, + { + "name": "2", + "members": [ + { + "name": "guest", + "type": "bool" + }, + { + "name": "reason", + "type": "242" + } + ], + "meta-type": "object" + }, + { + "name": "3", + "members": [ + { + "name": "guest", + "type": "bool" + }, + { + "name": "reason", + "type": "242" + } + ], + "meta-type": "object" + }, + { + "name": "4", + "members": [ + { + "name": "action", + "type": "243" + } + ], + "meta-type": "object" + }, + { + "name": "5", + "members": [ + { + "name": "action", + "type": "243" + } + ], + "meta-type": "object" + }, + { + "name": "6", + "members": [ + { + "name": "reboot", + "default": null, + "type": "244" + }, + { + "name": "shutdown", + "default": null, + "type": "245" + }, + { + "name": "panic", + "default": null, + "type": "246" + }, + { + "name": "watchdog", + "default": null, + "type": "243" + } + ], + "meta-type": "object" + }, + { + "name": "7", + "members": [ + { + "name": "action", + "type": "247" + }, + { + "name": "info", + "default": null, + "type": "248" + } + ], + "meta-type": "object" + }, + { + "name": "8", + "members": [ + { + "name": "action", + "type": "247" + }, + { + "name": "info", + "default": null, + "type": "248" + } + ], + "meta-type": "object" + }, + { + "name": "9", + "members": [ + { + "name": "recipient", + "type": "249" + }, + { + "name": "action", + "type": "250" + }, + { + "name": "flags", + "type": "251" + } + ], + "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": "read-only-mode", + "default": null, + "type": "252" + } + ], + "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": "253" + } + ], + "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": "254" + }, + { + "name": "driver-specific", + "default": null, + "type": "255" + }, + { + "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": "253" + }, + { + "name": "ready", + "type": "bool" + }, + { + "name": "status", + "type": "256" + }, + { + "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": "257" + } + ], + "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": "258" + }, + { + "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": "259" + }, + { + "name": "speed", + "default": null, + "type": "int" + }, + { + "name": "bitmap", + "default": null, + "type": "str" + }, + { + "name": "bitmap-mode", + "default": null, + "type": "260" + }, + { + "name": "compress", + "default": null, + "type": "bool" + }, + { + "name": "on-source-error", + "default": null, + "type": "258" + }, + { + "name": "on-target-error", + "default": null, + "type": "258" + }, + { + "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": "261", + "features": [ + "unstable" + ] + }, + { + "name": "target", + "type": "str" + }, + { + "name": "format", + "default": null, + "type": "str" + }, + { + "name": "mode", + "default": null, + "type": "257" + } + ], + "meta-type": "object" + }, + { + "name": "31", + "members": [ + { + "name": "job-id", + "default": null, + "type": "str" + }, + { + "name": "device", + "type": "str" + }, + { + "name": "sync", + "type": "259" + }, + { + "name": "speed", + "default": null, + "type": "int" + }, + { + "name": "bitmap", + "default": null, + "type": "str" + }, + { + "name": "bitmap-mode", + "default": null, + "type": "260" + }, + { + "name": "compress", + "default": null, + "type": "bool" + }, + { + "name": "on-source-error", + "default": null, + "type": "258" + }, + { + "name": "on-target-error", + "default": null, + "type": "258" + }, + { + "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": "261", + "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": "262" + }, + { + "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": "263" + }, + { + "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": "264" + }, + { + "name": "write_threshold", + "type": "int" + }, + { + "name": "dirty-bitmaps", + "default": null, + "type": "[265]" + } + ], + "meta-type": "object" + }, + { + "name": "34", + "members": [ + { + "name": "nodes", + "type": "[266]" + }, + { + "name": "edges", + "type": "[267]" + } + ], + "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": "259" + }, + { + "name": "mode", + "default": null, + "type": "257" + }, + { + "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": "258" + }, + { + "name": "on-target-error", + "default": null, + "type": "258" + }, + { + "name": "unmap", + "default": null, + "type": "bool" + }, + { + "name": "copy-mode", + "default": null, + "type": "268" + }, + { + "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": "[269]" + } + ], + "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": "259" + }, + { + "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": "258" + }, + { + "name": "on-target-error", + "default": null, + "type": "258" + }, + { + "name": "filter-node-name", + "default": null, + "type": "str" + }, + { + "name": "copy-mode", + "default": null, + "type": "268" + }, + { + "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": "258" + }, + { + "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": "273" + }, + { + "case": "blklogwrites", + "type": "274" + }, + { + "case": "blkverify", + "type": "275" + }, + { + "case": "blkreplay", + "type": "276" + }, + { + "case": "bochs", + "type": "277" + }, + { + "case": "cloop", + "type": "277" + }, + { + "case": "compress", + "type": "277" + }, + { + "case": "copy-before-write", + "type": "278" + }, + { + "case": "copy-on-read", + "type": "279" + }, + { + "case": "dmg", + "type": "277" + }, + { + "case": "file", + "type": "280" + }, + { + "case": "ftp", + "type": "281" + }, + { + "case": "ftps", + "type": "282" + }, + { + "case": "gluster", + "type": "283" + }, + { + "case": "host_cdrom", + "type": "280" + }, + { + "case": "host_device", + "type": "280" + }, + { + "case": "http", + "type": "284" + }, + { + "case": "https", + "type": "285" + }, + { + "case": "iscsi", + "type": "286" + }, + { + "case": "luks", + "type": "287" + }, + { + "case": "nbd", + "type": "288" + }, + { + "case": "nfs", + "type": "289" + }, + { + "case": "null-aio", + "type": "290" + }, + { + "case": "null-co", + "type": "290" + }, + { + "case": "nvme", + "type": "291" + }, + { + "case": "parallels", + "type": "277" + }, + { + "case": "preallocate", + "type": "292" + }, + { + "case": "qcow2", + "type": "293" + }, + { + "case": "qcow", + "type": "294" + }, + { + "case": "qed", + "type": "295" + }, + { + "case": "quorum", + "type": "296" + }, + { + "case": "raw", + "type": "297" + }, + { + "case": "rbd", + "type": "298" + }, + { + "case": "replication", + "type": "299" + }, + { + "case": "ssh", + "type": "300" + }, + { + "case": "throttle", + "type": "301" + }, + { + "case": "vdi", + "type": "277" + }, + { + "case": "vhdx", + "type": "277" + }, + { + "case": "vmdk", + "type": "295" + }, + { + "case": "vpc", + "type": "277" + }, + { + "case": "vvfat", + "type": "302" + } + ], + "members": [ + { + "name": "driver", + "type": "270" + }, + { + "name": "node-name", + "default": null, + "type": "str" + }, + { + "name": "discard", + "default": null, + "type": "271" + }, + { + "name": "cache", + "default": null, + "type": "272" + }, + { + "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": "262" + } + ], + "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": "303" + } + ], + "meta-type": "object" + }, + { + "name": "53", + "members": [ + { + "name": "job-id", + "type": "str" + }, + { + "name": "node-name", + "type": "str" + }, + { + "name": "options", + "type": "304" + }, + { + "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": "305" + }, + { + "name": "action", + "type": "306" + }, + { + "name": "nospace", + "default": null, + "type": "bool" + }, + { + "name": "reason", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "56", + "members": [ + { + "name": "type", + "type": "307" + }, + { + "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": "307" + }, + { + "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": "305" + }, + { + "name": "action", + "type": "306" + } + ], + "meta-type": "object" + }, + { + "name": "59", + "members": [ + { + "name": "type", + "type": "307" + }, + { + "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": "307" + }, + { + "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": "308" + }, + { + "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": "309" + }, + { + "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": "256" + } + ], + "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": "307" + }, + { + "name": "status", + "type": "256" + }, + { + "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": "310" + }, + { + "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": "311" + } + ], + "meta-type": "object" + }, + { + "name": "81", + "tag": "type", + "variants": [ + { + "case": "nbd", + "type": "313" + }, + { + "case": "vhost-user-blk", + "type": "314" + } + ], + "members": [ + { + "name": "type", + "type": "312" + }, + { + "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": "311" + } + ], + "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": "312" + }, + { + "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": "316" + } + ], + "meta-type": "object" + }, + { + "name": "88", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "format", + "default": null, + "type": "316" + } + ], + "meta-type": "object" + }, + { + "name": "str", + "json-type": "string", + "meta-type": "builtin" + }, + { + "name": "89", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "backend", + "type": "317" + } + ], + "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": "317" + } + ], + "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": "318" + } + ], + "meta-type": "object" + }, + { + "name": "96", + "members": [ + { + "name": "status", + "type": "319" + }, + { + "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": "[318]" + } + ], + "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": "321" + }, + { + "case": "user", + "type": "322" + }, + { + "case": "tap", + "type": "323" + }, + { + "case": "l2tpv3", + "type": "324" + }, + { + "case": "socket", + "type": "325" + }, + { + "case": "vde", + "type": "326" + }, + { + "case": "bridge", + "type": "327" + }, + { + "case": "hubport", + "type": "328" + }, + { + "case": "netmap", + "type": "329" + }, + { + "case": "vhost-user", + "type": "330" + }, + { + "case": "vhost-vdpa", + "type": "331" + }, + { + "case": "none", + "type": "0" + } + ], + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "type", + "type": "320" + } + ], + "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": "332" + }, + { + "name": "unicast", + "type": "332" + }, + { + "name": "vlan", + "type": "332" + }, + { + "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", + "type": "str" + }, + { + "name": "gid-status", + "type": "bool" + }, + { + "name": "subnet-prefix", + "type": "int" + }, + { + "name": "interface-id", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "108", + "members": [ + { + "name": "name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "109", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "id", + "type": "int" + }, + { + "name": "ports", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "110", + "members": [ + { + "name": "name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[111]", + "element-type": "111", + "meta-type": "array" + }, + { + "name": "111", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "enabled", + "type": "bool" + }, + { + "name": "link-up", + "type": "bool" + }, + { + "name": "speed", + "type": "int" + }, + { + "name": "duplex", + "type": "333" + }, + { + "name": "autoneg", + "type": "334" + } + ], + "meta-type": "object" + }, + { + "name": "112", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "tbl-id", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[113]", + "element-type": "113", + "meta-type": "array" + }, + { + "name": "113", + "members": [ + { + "name": "cookie", + "type": "int" + }, + { + "name": "hits", + "type": "int" + }, + { + "name": "key", + "type": "335" + }, + { + "name": "mask", + "type": "336" + }, + { + "name": "action", + "type": "337" + } + ], + "meta-type": "object" + }, + { + "name": "114", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "type", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[115]", + "element-type": "115", + "meta-type": "array" + }, + { + "name": "115", + "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": "[116]", + "element-type": "116", + "meta-type": "array" + }, + { + "name": "116", + "members": [ + { + "name": "tpm-tis" + }, + { + "name": "tpm-crb" + }, + { + "name": "tpm-spapr" + } + ], + "meta-type": "enum", + "values": [ + "tpm-tis", + "tpm-crb", + "tpm-spapr" + ] + }, + { + "name": "[117]", + "element-type": "117", + "meta-type": "array" + }, + { + "name": "117", + "members": [ + { + "name": "passthrough" + }, + { + "name": "emulator" + } + ], + "meta-type": "enum", + "values": [ + "passthrough", + "emulator" + ] + }, + { + "name": "[118]", + "element-type": "118", + "meta-type": "array" + }, + { + "name": "118", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "model", + "type": "116" + }, + { + "name": "options", + "type": "338" + } + ], + "meta-type": "object" + }, + { + "name": "119", + "members": [ + { + "name": "protocol", + "type": "str" + }, + { + "name": "password", + "type": "str" + }, + { + "name": "connected", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "120", + "members": [ + { + "name": "protocol", + "type": "str" + }, + { + "name": "time", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "121", + "members": [ + { + "name": "filename", + "type": "str" + }, + { + "name": "device", + "default": null, + "type": "str" + }, + { + "name": "head", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "126", + "members": [ + { + "name": "enabled", + "type": "bool" + }, + { + "name": "host", + "default": null, + "type": "str" + }, + { + "name": "family", + "default": null, + "type": "343" + }, + { + "name": "service", + "default": null, + "type": "str" + }, + { + "name": "auth", + "default": null, + "type": "str" + }, + { + "name": "clients", + "default": null, + "type": "[344]" + } + ], + "meta-type": "object" + }, + { + "name": "[127]", + "element-type": "127", + "meta-type": "array" + }, + { + "name": "127", + "members": [ + { + "name": "id", + "type": "str" + }, + { + "name": "server", + "type": "[345]" + }, + { + "name": "clients", + "type": "[344]" + }, + { + "name": "auth", + "type": "346" + }, + { + "name": "vencrypt", + "default": null, + "type": "347" + }, + { + "name": "display", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "128", + "members": [ + { + "name": "password", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "129", + "members": [ + { + "name": "server", + "type": "348" + }, + { + "name": "client", + "type": "349" + } + ], + "meta-type": "object" + }, + { + "name": "130", + "members": [ + { + "name": "server", + "type": "348" + }, + { + "name": "client", + "type": "344" + } + ], + "meta-type": "object" + }, + { + "name": "131", + "members": [ + { + "name": "server", + "type": "348" + }, + { + "name": "client", + "type": "344" + } + ], + "meta-type": "object" + }, + { + "name": "[132]", + "element-type": "132", + "meta-type": "array" + }, + { + "name": "132", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "index", + "type": "int" + }, + { + "name": "current", + "type": "bool" + }, + { + "name": "absolute", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "133", + "members": [ + { + "name": "keys", + "type": "[350]" + }, + { + "name": "hold-time", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "134", + "members": [ + { + "name": "device", + "default": null, + "type": "str" + }, + { + "name": "head", + "default": null, + "type": "int" + }, + { + "name": "events", + "type": "[351]" + } + ], + "meta-type": "object" + }, + { + "name": "135", + "tag": "type", + "variants": [ + { + "case": "curses", + "type": "355" + }, + { + "case": "default", + "type": "0" + }, + { + "case": "none", + "type": "0" + } + ], + "members": [ + { + "name": "type", + "type": "352" + }, + { + "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": "353" + } + ], + "meta-type": "object" + }, + { + "name": "136", + "tag": "type", + "variants": [ + { + "case": "vnc", + "type": "359" + } + ], + "members": [ + { + "name": "type", + "type": "358" + } + ], + "meta-type": "object" + }, + { + "name": "137", + "members": [ + { + "name": "status", + "default": null, + "type": "360" + }, + { + "name": "ram", + "default": null, + "type": "361" + }, + { + "name": "disk", + "default": null, + "type": "361" + }, + { + "name": "vfio", + "default": null, + "type": "362" + }, + { + "name": "xbzrle-cache", + "default": null, + "type": "363" + }, + { + "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": "364" + }, + { + "name": "socket-address", + "default": null, + "type": "[365]" + } + ], + "meta-type": "object" + }, + { + "name": "138", + "members": [ + { + "name": "capabilities", + "type": "[139]" + } + ], + "meta-type": "object" + }, + { + "name": "[139]", + "element-type": "139", + "meta-type": "array" + }, + { + "name": "139", + "members": [ + { + "name": "capability", + "type": "366" + }, + { + "name": "state", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "140", + "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": "308" + }, + { + "name": "tls-hostname", + "default": null, + "type": "308" + }, + { + "name": "tls-authz", + "default": null, + "type": "308" + }, + { + "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": "367" + }, + { + "name": "multifd-zlib-level", + "default": null, + "type": "int" + }, + { + "name": "multifd-zstd-level", + "default": null, + "type": "int" + }, + { + "name": "block-bitmap-mapping", + "default": null, + "type": "[368]" + } + ], + "meta-type": "object" + }, + { + "name": "141", + "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": "367" + }, + { + "name": "multifd-zlib-level", + "default": null, + "type": "int" + }, + { + "name": "multifd-zstd-level", + "default": null, + "type": "int" + }, + { + "name": "block-bitmap-mapping", + "default": null, + "type": "[368]" + } + ], + "meta-type": "object" + }, + { + "name": "142", + "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": "143", + "members": [ + { + "name": "status", + "type": "360" + } + ], + "meta-type": "object" + }, + { + "name": "144", + "members": [ + { + "name": "pass", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "145", + "members": [ + { + "name": "mode", + "type": "369" + }, + { + "name": "reason", + "type": "370" + } + ], + "meta-type": "object" + }, + { + "name": "146", + "members": [ + { + "name": "state", + "type": "360" + } + ], + "meta-type": "object" + }, + { + "name": "147", + "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": "148", + "members": [ + { + "name": "uri", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "149", + "members": [ + { + "name": "filename", + "type": "str" + }, + { + "name": "live", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "150", + "members": [ + { + "name": "enable", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "151", + "members": [ + { + "name": "filename", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "152", + "members": [ + { + "name": "enable", + "type": "bool" + }, + { + "name": "primary", + "type": "bool" + }, + { + "name": "failover", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "153", + "members": [ + { + "name": "error", + "type": "bool" + }, + { + "name": "desc", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "154", + "members": [ + { + "name": "mode", + "type": "369" + }, + { + "name": "last-mode", + "type": "369" + }, + { + "name": "reason", + "type": "370" + } + ], + "meta-type": "object" + }, + { + "name": "155", + "members": [ + { + "name": "uri", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "156", + "members": [ + { + "name": "device-id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "157", + "members": [ + { + "name": "calc-time", + "type": "int" + }, + { + "name": "sample-pages", + "default": null, + "type": "int" + }, + { + "name": "mode", + "default": null, + "type": "371" + } + ], + "meta-type": "object" + }, + { + "name": "158", + "members": [ + { + "name": "dirty-rate", + "default": null, + "type": "int" + }, + { + "name": "status", + "type": "372" + }, + { + "name": "start-time", + "type": "int" + }, + { + "name": "calc-time", + "type": "int" + }, + { + "name": "sample-pages", + "type": "int" + }, + { + "name": "mode", + "type": "371" + }, + { + "name": "vcpu-dirty-rate", + "default": null, + "type": "[373]" + } + ], + "meta-type": "object" + }, + { + "name": "159", + "members": [ + { + "name": "job-id", + "type": "str" + }, + { + "name": "tag", + "type": "str" + }, + { + "name": "vmstate", + "type": "str" + }, + { + "name": "devices", + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "160", + "members": [ + { + "name": "job-id", + "type": "str" + }, + { + "name": "tag", + "type": "str" + }, + { + "name": "vmstate", + "type": "str" + }, + { + "name": "devices", + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "161", + "members": [ + { + "name": "job-id", + "type": "str" + }, + { + "name": "tag", + "type": "str" + }, + { + "name": "devices", + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "162", + "members": [ + { + "name": "actions", + "type": "[374]" + }, + { + "name": "properties", + "default": null, + "type": "375" + } + ], + "meta-type": "object" + }, + { + "name": "163", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "vcpu", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[164]", + "element-type": "164", + "meta-type": "array" + }, + { + "name": "164", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "state", + "type": "376" + }, + { + "name": "vcpu", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "165", + "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": "166", + "members": [ + { + "name": "enable", + "default": null, + "type": "[377]" + } + ], + "meta-type": "object" + }, + { + "name": "167", + "members": [ + { + "name": "qemu", + "type": "378" + }, + { + "name": "package", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[168]", + "element-type": "168", + "meta-type": "array" + }, + { + "name": "168", + "members": [ + { + "name": "name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[169]", + "element-type": "169", + "meta-type": "array" + }, + { + "name": "169", + "tag": "meta-type", + "variants": [ + { + "case": "builtin", + "type": "380" + }, + { + "case": "enum", + "type": "381" + }, + { + "case": "array", + "type": "382" + }, + { + "case": "object", + "type": "383" + }, + { + "case": "alternate", + "type": "384" + }, + { + "case": "command", + "type": "385" + }, + { + "case": "event", + "type": "386" + } + ], + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "meta-type", + "type": "379" + }, + { + "name": "features", + "default": null, + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "170", + "members": [ + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[171]", + "element-type": "171", + "meta-type": "array" + }, + { + "name": "171", + "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": "172", + "members": [ + { + "name": "path", + "type": "str" + }, + { + "name": "property", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "any", + "json-type": "value", + "meta-type": "builtin" + }, + { + "name": "173", + "members": [ + { + "name": "path", + "type": "str" + }, + { + "name": "property", + "type": "str" + }, + { + "name": "value", + "type": "any" + } + ], + "meta-type": "object" + }, + { + "name": "174", + "members": [ + { + "name": "implements", + "default": null, + "type": "str" + }, + { + "name": "abstract", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "[175]", + "element-type": "175", + "meta-type": "array" + }, + { + "name": "175", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "abstract", + "default": null, + "type": "bool" + }, + { + "name": "parent", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "176", + "members": [ + { + "name": "typename", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "177", + "tag": "qom-type", + "variants": [ + { + "case": "authz-list", + "type": "388" + }, + { + "case": "authz-listfile", + "type": "389" + }, + { + "case": "authz-pam", + "type": "390" + }, + { + "case": "authz-simple", + "type": "391" + }, + { + "case": "can-host-socketcan", + "type": "392" + }, + { + "case": "colo-compare", + "type": "393" + }, + { + "case": "cryptodev-backend", + "type": "394" + }, + { + "case": "cryptodev-backend-builtin", + "type": "394" + }, + { + "case": "cryptodev-vhost-user", + "type": "395" + }, + { + "case": "dbus-vmstate", + "type": "396" + }, + { + "case": "filter-buffer", + "type": "397" + }, + { + "case": "filter-dump", + "type": "398" + }, + { + "case": "filter-mirror", + "type": "399" + }, + { + "case": "filter-redirector", + "type": "400" + }, + { + "case": "filter-replay", + "type": "401" + }, + { + "case": "filter-rewriter", + "type": "402" + }, + { + "case": "input-barrier", + "type": "403" + }, + { + "case": "input-linux", + "type": "404" + }, + { + "case": "iothread", + "type": "405" + }, + { + "case": "memory-backend-epc", + "type": "406" + }, + { + "case": "memory-backend-file", + "type": "407" + }, + { + "case": "memory-backend-memfd", + "type": "408" + }, + { + "case": "memory-backend-ram", + "type": "409" + }, + { + "case": "pr-manager-helper", + "type": "410" + }, + { + "case": "qtest", + "type": "411" + }, + { + "case": "rng-builtin", + "type": "412" + }, + { + "case": "rng-egd", + "type": "413" + }, + { + "case": "rng-random", + "type": "414" + }, + { + "case": "secret", + "type": "415" + }, + { + "case": "secret_keyring", + "type": "416" + }, + { + "case": "sev-guest", + "type": "417" + }, + { + "case": "throttle-group", + "type": "418" + }, + { + "case": "tls-creds-anon", + "type": "419" + }, + { + "case": "tls-creds-psk", + "type": "420" + }, + { + "case": "tls-creds-x509", + "type": "421" + }, + { + "case": "tls-cipher-suites", + "type": "422" + }, + { + "case": "x-remote-object", + "type": "423" + }, + { + "case": "can-bus", + "type": "0" + }, + { + "case": "pef-guest", + "type": "0" + }, + { + "case": "s390-pv-guest", + "type": "0" + } + ], + "members": [ + { + "name": "qom-type", + "type": "387" + }, + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "178", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "179", + "members": [ + { + "name": "typename", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "180", + "members": [ + { + "name": "driver", + "type": "str" + }, + { + "name": "bus", + "default": null, + "type": "str" + }, + { + "name": "id", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "181", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "182", + "members": [ + { + "name": "device", + "default": null, + "type": "str" + }, + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "183", + "members": [ + { + "name": "device", + "default": null, + "type": "str" + }, + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[184]", + "element-type": "184", + "meta-type": "array" + }, + { + "name": "184", + "tag": "target", + "variants": [ + { + "case": "s390x", + "type": "426" + }, + { + "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": "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": "424" + }, + { + "name": "target", + "type": "425" + } + ], + "meta-type": "object" + }, + { + "name": "[185]", + "element-type": "185", + "meta-type": "array" + }, + { + "name": "185", + "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": "186", + "members": [ + { + "name": "wakeup-suspend-support", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "187", + "members": [ + { + "name": "arch", + "type": "425" + } + ], + "meta-type": "object" + }, + { + "name": "188", + "members": [ + { + "name": "UUID", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "189", + "members": [ + { + "name": "guid", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "190", + "members": [ + { + "name": "enabled", + "type": "bool" + }, + { + "name": "present", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "191", + "members": [ + { + "name": "val", + "type": "int" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "filename", + "type": "str" + }, + { + "name": "cpu-index", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "192", + "members": [ + { + "name": "val", + "type": "int" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "filename", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[193]", + "element-type": "193", + "meta-type": "array" + }, + { + "name": "193", + "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": "427" + } + ], + "meta-type": "object" + }, + { + "name": "[194]", + "element-type": "194", + "meta-type": "array" + }, + { + "name": "194", + "members": [ + { + "name": "type", + "type": "str" + }, + { + "name": "vcpus-count", + "type": "int" + }, + { + "name": "props", + "type": "424" + }, + { + "name": "qom-path", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "195", + "tag": "type", + "variants": [ + { + "case": "node", + "type": "429" + }, + { + "case": "dist", + "type": "430" + }, + { + "case": "cpu", + "type": "431" + }, + { + "case": "hmat-lb", + "type": "432" + }, + { + "case": "hmat-cache", + "type": "433" + } + ], + "members": [ + { + "name": "type", + "type": "428" + } + ], + "meta-type": "object" + }, + { + "name": "196", + "members": [ + { + "name": "value", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "197", + "members": [ + { + "name": "actual", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "198", + "members": [ + { + "name": "actual", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "199", + "members": [ + { + "name": "base-memory", + "type": "int" + }, + { + "name": "plugged-memory", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[200]", + "element-type": "200", + "meta-type": "array" + }, + { + "name": "200", + "tag": "type", + "variants": [ + { + "case": "dimm", + "type": "435" + }, + { + "case": "nvdimm", + "type": "435" + }, + { + "case": "virtio-pmem", + "type": "436" + }, + { + "case": "virtio-mem", + "type": "437" + }, + { + "case": "sgx-epc", + "type": "438" + } + ], + "members": [ + { + "name": "type", + "type": "434" + } + ], + "meta-type": "object" + }, + { + "name": "201", + "members": [ + { + "name": "id", + "default": null, + "type": "str" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "qom-path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "202", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "msg", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "203", + "members": [ + { + "name": "human-readable-text", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[210]", + "element-type": "210", + "meta-type": "array" + }, + { + "name": "210", + "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": "211", + "members": [ + { + "name": "mode", + "type": "442" + }, + { + "name": "filename", + "default": null, + "type": "str" + }, + { + "name": "icount", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "212", + "members": [ + { + "name": "icount", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "213", + "members": [ + { + "name": "icount", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "214", + "members": [ + { + "name": "instances", + "type": "[215]" + } + ], + "meta-type": "object" + }, + { + "name": "[215]", + "element-type": "215", + "meta-type": "array" + }, + { + "name": "215", + "tag": "type", + "variants": [ + { + "case": "block-node", + "type": "444" + }, + { + "case": "chardev", + "type": "445" + }, + { + "case": "migration", + "type": "0" + } + ], + "members": [ + { + "name": "type", + "type": "443" + } + ], + "meta-type": "object" + }, + { + "name": "216", + "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": "217", + "members": [ + { + "name": "name", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[218]", + "element-type": "218", + "meta-type": "array" + }, + { + "name": "218", + "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": "219", + "members": [ + { + "name": "command-line", + "type": "str" + }, + { + "name": "cpu-index", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "220", + "members": [ + { + "name": "fdname", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "221", + "members": [ + { + "name": "fdname", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "222", + "members": [ + { + "name": "fdset-id", + "default": null, + "type": "int" + }, + { + "name": "opaque", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "223", + "members": [ + { + "name": "fdset-id", + "type": "int" + }, + { + "name": "fd", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "224", + "members": [ + { + "name": "fdset-id", + "type": "int" + }, + { + "name": "fd", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[225]", + "element-type": "225", + "meta-type": "array" + }, + { + "name": "225", + "members": [ + { + "name": "fdset-id", + "type": "int" + }, + { + "name": "fds", + "type": "[446]" + } + ], + "meta-type": "object" + }, + { + "name": "226", + "members": [ + { + "name": "option", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[227]", + "element-type": "227", + "meta-type": "array" + }, + { + "name": "227", + "members": [ + { + "name": "option", + "type": "str" + }, + { + "name": "parameters", + "type": "[447]" + } + ], + "meta-type": "object" + }, + { + "name": "228", + "members": [ + { + "name": "offset", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[238]", + "element-type": "238", + "meta-type": "array" + }, + { + "name": "238", + "members": [ + { + "name": "device", + "default": null, + "type": "str" + }, + { + "name": "slot", + "type": "str" + }, + { + "name": "slot-type", + "type": "450" + }, + { + "name": "source", + "type": "int" + }, + { + "name": "status", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "239", + "members": [ + { + "name": "info", + "type": "238" + } + ], + "meta-type": "object" + }, + { + "name": "[240]", + "element-type": "240", + "meta-type": "array" + }, + { + "name": "240", + "members": [ + { + "name": "bus", + "type": "int" + }, + { + "name": "devices", + "type": "[451]" + } + ], + "meta-type": "object" + }, + { + "name": "bool", + "json-type": "boolean", + "meta-type": "builtin" + }, + { + "name": "241", + "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": "242", + "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" + } + ], + "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" + ] + }, + { + "name": "243", + "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": "244", + "members": [ + { + "name": "reset" + }, + { + "name": "shutdown" + } + ], + "meta-type": "enum", + "values": [ + "reset", + "shutdown" + ] + }, + { + "name": "245", + "members": [ + { + "name": "poweroff" + }, + { + "name": "pause" + } + ], + "meta-type": "enum", + "values": [ + "poweroff", + "pause" + ] + }, + { + "name": "246", + "members": [ + { + "name": "pause" + }, + { + "name": "shutdown" + }, + { + "name": "none" + } + ], + "meta-type": "enum", + "values": [ + "pause", + "shutdown", + "none" + ] + }, + { + "name": "247", + "members": [ + { + "name": "pause" + }, + { + "name": "poweroff" + }, + { + "name": "run" + } + ], + "meta-type": "enum", + "values": [ + "pause", + "poweroff", + "run" + ] + }, + { + "name": "248", + "tag": "type", + "variants": [ + { + "case": "hyper-v", + "type": "453" + }, + { + "case": "s390", + "type": "454" + } + ], + "members": [ + { + "name": "type", + "type": "452" + } + ], + "meta-type": "object" + }, + { + "name": "249", + "members": [ + { + "name": "hypervisor" + }, + { + "name": "guest" + } + ], + "meta-type": "enum", + "values": [ + "hypervisor", + "guest" + ] + }, + { + "name": "250", + "members": [ + { + "name": "ignore" + }, + { + "name": "inject" + }, + { + "name": "fatal" + }, + { + "name": "reset" + } + ], + "meta-type": "enum", + "values": [ + "ignore", + "inject", + "fatal", + "reset" + ] + }, + { + "name": "251", + "members": [ + { + "name": "action-required", + "type": "bool" + }, + { + "name": "recursive", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "252", + "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": "253", + "members": [ + { + "name": "ok" + }, + { + "name": "failed" + }, + { + "name": "nospace" + } + ], + "meta-type": "enum", + "values": [ + "ok", + "failed", + "nospace" + ] + }, + { + "name": "254", + "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": "[455]" + }, + { + "name": "rd_latency_histogram", + "default": null, + "type": "456" + }, + { + "name": "wr_latency_histogram", + "default": null, + "type": "456" + }, + { + "name": "flush_latency_histogram", + "default": null, + "type": "456" + } + ], + "meta-type": "object" + }, + { + "name": "255", + "tag": "driver", + "variants": [ + { + "case": "file", + "type": "457" + }, + { + "case": "host_device", + "type": "457" + }, + { + "case": "nvme", + "type": "458" + }, + { + "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": "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": "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": "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": "vmdk", + "type": "0" + }, + { + "case": "vpc", + "type": "0" + }, + { + "case": "vvfat", + "type": "0" + } + ], + "members": [ + { + "name": "driver", + "type": "270" + } + ], + "meta-type": "object" + }, + { + "name": "256", + "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": "257", + "members": [ + { + "name": "existing" + }, + { + "name": "absolute-paths" + } + ], + "meta-type": "enum", + "values": [ + "existing", + "absolute-paths" + ] + }, + { + "name": "258", + "members": [ + { + "name": "report" + }, + { + "name": "ignore" + }, + { + "name": "enospc" + }, + { + "name": "stop" + }, + { + "name": "auto" + } + ], + "meta-type": "enum", + "values": [ + "report", + "ignore", + "enospc", + "stop", + "auto" + ] + }, + { + "name": "259", + "members": [ + { + "name": "top" + }, + { + "name": "full" + }, + { + "name": "none" + }, + { + "name": "incremental" + }, + { + "name": "bitmap" + } + ], + "meta-type": "enum", + "values": [ + "top", + "full", + "none", + "incremental", + "bitmap" + ] + }, + { + "name": "260", + "members": [ + { + "name": "on-success" + }, + { + "name": "never" + }, + { + "name": "always" + } + ], + "meta-type": "enum", + "values": [ + "on-success", + "never", + "always" + ] + }, + { + "name": "261", + "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": "262", + "members": [ + { + "name": "off" + }, + { + "name": "on" + }, + { + "name": "unmap" + } + ], + "meta-type": "enum", + "values": [ + "off", + "on", + "unmap" + ] + }, + { + "name": "263", + "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": "263" + }, + { + "name": "format-specific", + "default": null, + "type": "459" + } + ], + "meta-type": "object" + }, + { + "name": "264", + "members": [ + { + "name": "writeback", + "type": "bool" + }, + { + "name": "direct", + "type": "bool" + }, + { + "name": "no-flush", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "[265]", + "element-type": "265", + "meta-type": "array" + }, + { + "name": "265", + "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": "[266]", + "element-type": "266", + "meta-type": "array" + }, + { + "name": "266", + "members": [ + { + "name": "id", + "type": "int" + }, + { + "name": "type", + "type": "460" + }, + { + "name": "name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[267]", + "element-type": "267", + "meta-type": "array" + }, + { + "name": "267", + "members": [ + { + "name": "parent", + "type": "int" + }, + { + "name": "child", + "type": "int" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "perm", + "type": "[461]" + }, + { + "name": "shared-perm", + "type": "[461]" + } + ], + "meta-type": "object" + }, + { + "name": "268", + "members": [ + { + "name": "background" + }, + { + "name": "write-blocking" + } + ], + "meta-type": "enum", + "values": [ + "background", + "write-blocking" + ] + }, + { + "name": "[269]", + "element-type": "269", + "meta-type": "array" + }, + { + "name": "269", + "members": [ + { + "type": "str" + }, + { + "type": "37" + } + ], + "meta-type": "alternate" + }, + { + "name": "270", + "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": "ftp" + }, + { + "name": "ftps" + }, + { + "name": "gluster" + }, + { + "name": "host_cdrom" + }, + { + "name": "host_device" + }, + { + "name": "http" + }, + { + "name": "https" + }, + { + "name": "iscsi" + }, + { + "name": "luks" + }, + { + "name": "nbd" + }, + { + "name": "nfs" + }, + { + "name": "null-aio" + }, + { + "name": "null-co" + }, + { + "name": "nvme" + }, + { + "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": "vmdk" + }, + { + "name": "vpc" + }, + { + "name": "vvfat" + } + ], + "meta-type": "enum", + "values": [ + "blkdebug", + "blklogwrites", + "blkreplay", + "blkverify", + "bochs", + "cloop", + "compress", + "copy-before-write", + "copy-on-read", + "dmg", + "file", + "ftp", + "ftps", + "gluster", + "host_cdrom", + "host_device", + "http", + "https", + "iscsi", + "luks", + "nbd", + "nfs", + "null-aio", + "null-co", + "nvme", + "parallels", + "preallocate", + "qcow", + "qcow2", + "qed", + "quorum", + "raw", + "rbd", + "replication", + "ssh", + "throttle", + "vdi", + "vhdx", + "vmdk", + "vpc", + "vvfat" + ] + }, + { + "name": "271", + "members": [ + { + "name": "ignore" + }, + { + "name": "unmap" + } + ], + "meta-type": "enum", + "values": [ + "ignore", + "unmap" + ] + }, + { + "name": "272", + "members": [ + { + "name": "direct", + "default": null, + "type": "bool" + }, + { + "name": "no-flush", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "273", + "members": [ + { + "name": "image", + "type": "462" + }, + { + "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": "[463]" + }, + { + "name": "set-state", + "default": null, + "type": "[464]" + }, + { + "name": "take-child-perms", + "default": null, + "type": "[461]" + }, + { + "name": "unshare-child-perms", + "default": null, + "type": "[461]" + } + ], + "meta-type": "object" + }, + { + "name": "274", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "log", + "type": "462" + }, + { + "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": "275", + "members": [ + { + "name": "test", + "type": "462" + }, + { + "name": "raw", + "type": "462" + } + ], + "meta-type": "object" + }, + { + "name": "276", + "members": [ + { + "name": "image", + "type": "462" + } + ], + "meta-type": "object" + }, + { + "name": "277", + "members": [ + { + "name": "file", + "type": "462" + } + ], + "meta-type": "object" + }, + { + "name": "278", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "target", + "type": "462" + } + ], + "meta-type": "object" + }, + { + "name": "279", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "bottom", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "280", + "members": [ + { + "name": "filename", + "type": "str" + }, + { + "name": "pr-manager", + "default": null, + "type": "str" + }, + { + "name": "locking", + "default": null, + "type": "465" + }, + { + "name": "aio", + "default": null, + "type": "466" + }, + { + "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": "281", + "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": "282", + "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": "283", + "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": "284", + "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": "285", + "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": "286", + "members": [ + { + "name": "transport", + "type": "467" + }, + { + "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": "468" + }, + { + "name": "timeout", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "287", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "key-secret", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "288", + "members": [ + { + "name": "server", + "type": "365" + }, + { + "name": "export", + "default": null, + "type": "str" + }, + { + "name": "tls-creds", + "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": "289", + "members": [ + { + "name": "server", + "type": "469" + }, + { + "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": "290", + "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": "291", + "members": [ + { + "name": "device", + "type": "str" + }, + { + "name": "namespace", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "292", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "prealloc-align", + "default": null, + "type": "int" + }, + { + "name": "prealloc-size", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "293", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "backing", + "default": null, + "type": "470" + }, + { + "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": "471" + }, + { + "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": "472" + }, + { + "name": "data-file", + "default": null, + "type": "462" + } + ], + "meta-type": "object" + }, + { + "name": "294", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "backing", + "default": null, + "type": "470" + }, + { + "name": "encrypt", + "default": null, + "type": "473" + } + ], + "meta-type": "object" + }, + { + "name": "295", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "backing", + "default": null, + "type": "470" + } + ], + "meta-type": "object" + }, + { + "name": "296", + "members": [ + { + "name": "blkverify", + "default": null, + "type": "bool" + }, + { + "name": "children", + "type": "[462]" + }, + { + "name": "vote-threshold", + "type": "int" + }, + { + "name": "rewrite-corrupted", + "default": null, + "type": "bool" + }, + { + "name": "read-pattern", + "default": null, + "type": "474" + } + ], + "meta-type": "object" + }, + { + "name": "297", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "offset", + "default": null, + "type": "int" + }, + { + "name": "size", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "298", + "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": "475" + }, + { + "name": "user", + "default": null, + "type": "str" + }, + { + "name": "auth-client-required", + "default": null, + "type": "[476]" + }, + { + "name": "key-secret", + "default": null, + "type": "str" + }, + { + "name": "server", + "default": null, + "type": "[477]" + } + ], + "meta-type": "object" + }, + { + "name": "299", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "mode", + "type": "478" + }, + { + "name": "top-id", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "300", + "members": [ + { + "name": "server", + "type": "479" + }, + { + "name": "path", + "type": "str" + }, + { + "name": "user", + "default": null, + "type": "str" + }, + { + "name": "host-key-check", + "default": null, + "type": "480" + } + ], + "meta-type": "object" + }, + { + "name": "301", + "members": [ + { + "name": "throttle-group", + "type": "str" + }, + { + "name": "file", + "type": "462" + } + ], + "meta-type": "object" + }, + { + "name": "302", + "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": "303", + "tag": "driver", + "variants": [ + { + "case": "file", + "type": "481" + }, + { + "case": "gluster", + "type": "482" + }, + { + "case": "luks", + "type": "483" + }, + { + "case": "nfs", + "type": "484" + }, + { + "case": "parallels", + "type": "485" + }, + { + "case": "qcow", + "type": "486" + }, + { + "case": "qcow2", + "type": "487" + }, + { + "case": "qed", + "type": "488" + }, + { + "case": "rbd", + "type": "489" + }, + { + "case": "ssh", + "type": "490" + }, + { + "case": "vdi", + "type": "491" + }, + { + "case": "vhdx", + "type": "492" + }, + { + "case": "vmdk", + "type": "493" + }, + { + "case": "vpc", + "type": "494" + }, + { + "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": "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": "iscsi", + "type": "0" + }, + { + "case": "nbd", + "type": "0" + }, + { + "case": "null-aio", + "type": "0" + }, + { + "case": "null-co", + "type": "0" + }, + { + "case": "nvme", + "type": "0" + }, + { + "case": "preallocate", + "type": "0" + }, + { + "case": "quorum", + "type": "0" + }, + { + "case": "raw", + "type": "0" + }, + { + "case": "replication", + "type": "0" + }, + { + "case": "throttle", + "type": "0" + }, + { + "case": "vvfat", + "type": "0" + } + ], + "members": [ + { + "name": "driver", + "type": "270" + } + ], + "meta-type": "object" + }, + { + "name": "304", + "tag": "driver", + "variants": [ + { + "case": "luks", + "type": "495" + }, + { + "case": "qcow2", + "type": "496" + }, + { + "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": "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": "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": "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": "vmdk", + "type": "0" + }, + { + "case": "vpc", + "type": "0" + }, + { + "case": "vvfat", + "type": "0" + } + ], + "members": [ + { + "name": "driver", + "type": "270" + } + ], + "meta-type": "object" + }, + { + "name": "305", + "members": [ + { + "name": "read" + }, + { + "name": "write" + } + ], + "meta-type": "enum", + "values": [ + "read", + "write" + ] + }, + { + "name": "306", + "members": [ + { + "name": "ignore" + }, + { + "name": "report" + }, + { + "name": "stop" + } + ], + "meta-type": "enum", + "values": [ + "ignore", + "report", + "stop" + ] + }, + { + "name": "307", + "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": "308", + "members": [ + { + "type": "str" + }, + { + "type": "null" + } + ], + "meta-type": "alternate" + }, + { + "name": "309", + "members": [ + { + "name": "read" + }, + { + "name": "write" + }, + { + "name": "flush" + } + ], + "meta-type": "enum", + "values": [ + "read", + "write", + "flush" + ] + }, + { + "name": "310", + "tag": "type", + "variants": [ + { + "case": "inet", + "type": "498" + }, + { + "case": "unix", + "type": "499" + }, + { + "case": "vsock", + "type": "500" + }, + { + "case": "fd", + "type": "501" + } + ], + "members": [ + { + "name": "type", + "type": "497" + } + ], + "meta-type": "object" + }, + { + "name": "311", + "members": [ + { + "name": "safe" + }, + { + "name": "hard" + } + ], + "meta-type": "enum", + "values": [ + "safe", + "hard" + ] + }, + { + "name": "312", + "members": [ + { + "name": "nbd" + }, + { + "name": "vhost-user-blk" + } + ], + "meta-type": "enum", + "values": [ + "nbd", + "vhost-user-blk" + ] + }, + { + "name": "313", + "members": [ + { + "name": "name", + "default": null, + "type": "str" + }, + { + "name": "description", + "default": null, + "type": "str" + }, + { + "name": "bitmaps", + "default": null, + "type": "[str]" + }, + { + "name": "allocation-depth", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "314", + "members": [ + { + "name": "addr", + "type": "365" + }, + { + "name": "logical-block-size", + "default": null, + "type": "int" + }, + { + "name": "num-queues", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "316", + "members": [ + { + "name": "utf8" + }, + { + "name": "base64" + } + ], + "meta-type": "enum", + "values": [ + "utf8", + "base64" + ] + }, + { + "name": "317", + "tag": "type", + "variants": [ + { + "case": "file", + "type": "504" + }, + { + "case": "serial", + "type": "505" + }, + { + "case": "parallel", + "type": "505" + }, + { + "case": "pipe", + "type": "505" + }, + { + "case": "socket", + "type": "506" + }, + { + "case": "udp", + "type": "507" + }, + { + "case": "pty", + "type": "508" + }, + { + "case": "null", + "type": "508" + }, + { + "case": "mux", + "type": "509" + }, + { + "case": "msmouse", + "type": "508" + }, + { + "case": "wctablet", + "type": "508" + }, + { + "case": "braille", + "type": "508" + }, + { + "case": "testdev", + "type": "508" + }, + { + "case": "stdio", + "type": "510" + }, + { + "case": "console", + "type": "508" + }, + { + "case": "vc", + "type": "515" + }, + { + "case": "ringbuf", + "type": "516" + }, + { + "case": "memory", + "type": "516" + } + ], + "members": [ + { + "name": "type", + "type": "503" + } + ], + "meta-type": "object" + }, + { + "name": "318", + "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": "319", + "members": [ + { + "name": "none" + }, + { + "name": "active" + }, + { + "name": "completed" + }, + { + "name": "failed" + } + ], + "meta-type": "enum", + "values": [ + "none", + "active", + "completed", + "failed" + ] + }, + { + "name": "[318]", + "element-type": "318", + "meta-type": "array" + }, + { + "name": "320", + "members": [ + { + "name": "none" + }, + { + "name": "nic" + }, + { + "name": "user" + }, + { + "name": "tap" + }, + { + "name": "l2tpv3" + }, + { + "name": "socket" + }, + { + "name": "vde" + }, + { + "name": "bridge" + }, + { + "name": "hubport" + }, + { + "name": "netmap" + }, + { + "name": "vhost-user" + }, + { + "name": "vhost-vdpa" + } + ], + "meta-type": "enum", + "values": [ + "none", + "nic", + "user", + "tap", + "l2tpv3", + "socket", + "vde", + "bridge", + "hubport", + "netmap", + "vhost-user", + "vhost-vdpa" + ] + }, + { + "name": "321", + "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": "322", + "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": "[517]" + }, + { + "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": "[517]" + }, + { + "name": "guestfwd", + "default": null, + "type": "[517]" + }, + { + "name": "tftp-server-name", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "323", + "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": "324", + "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": "325", + "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": "326", + "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": "327", + "members": [ + { + "name": "br", + "default": null, + "type": "str" + }, + { + "name": "helper", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "328", + "members": [ + { + "name": "hubid", + "type": "int" + }, + { + "name": "netdev", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "329", + "members": [ + { + "name": "ifname", + "type": "str" + }, + { + "name": "devname", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "330", + "members": [ + { + "name": "chardev", + "type": "str" + }, + { + "name": "vhostforce", + "default": null, + "type": "bool" + }, + { + "name": "queues", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "331", + "members": [ + { + "name": "vhostdev", + "default": null, + "type": "str" + }, + { + "name": "queues", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "332", + "members": [ + { + "name": "normal" + }, + { + "name": "none" + }, + { + "name": "all" + } + ], + "meta-type": "enum", + "values": [ + "normal", + "none", + "all" + ] + }, + { + "name": "[str]", + "element-type": "str", + "meta-type": "array" + }, + { + "name": "333", + "members": [ + { + "name": "half" + }, + { + "name": "full" + } + ], + "meta-type": "enum", + "values": [ + "half", + "full" + ] + }, + { + "name": "334", + "members": [ + { + "name": "off" + }, + { + "name": "on" + } + ], + "meta-type": "enum", + "values": [ + "off", + "on" + ] + }, + { + "name": "335", + "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": "336", + "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": "337", + "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": "338", + "tag": "type", + "variants": [ + { + "case": "passthrough", + "type": "518" + }, + { + "case": "emulator", + "type": "519" + } + ], + "members": [ + { + "name": "type", + "type": "117" + } + ], + "meta-type": "object" + }, + { + "name": "343", + "members": [ + { + "name": "ipv4" + }, + { + "name": "ipv6" + }, + { + "name": "unix" + }, + { + "name": "vsock" + }, + { + "name": "unknown" + } + ], + "meta-type": "enum", + "values": [ + "ipv4", + "ipv6", + "unix", + "vsock", + "unknown" + ] + }, + { + "name": "[344]", + "element-type": "344", + "meta-type": "array" + }, + { + "name": "344", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "service", + "type": "str" + }, + { + "name": "family", + "type": "343" + }, + { + "name": "websocket", + "type": "bool" + }, + { + "name": "x509_dname", + "default": null, + "type": "str" + }, + { + "name": "sasl_username", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[345]", + "element-type": "345", + "meta-type": "array" + }, + { + "name": "345", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "service", + "type": "str" + }, + { + "name": "family", + "type": "343" + }, + { + "name": "websocket", + "type": "bool" + }, + { + "name": "auth", + "type": "346" + }, + { + "name": "vencrypt", + "default": null, + "type": "347" + } + ], + "meta-type": "object" + }, + { + "name": "346", + "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": "347", + "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": "348", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "service", + "type": "str" + }, + { + "name": "family", + "type": "343" + }, + { + "name": "websocket", + "type": "bool" + }, + { + "name": "auth", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "349", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "service", + "type": "str" + }, + { + "name": "family", + "type": "343" + }, + { + "name": "websocket", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "[350]", + "element-type": "350", + "meta-type": "array" + }, + { + "name": "350", + "tag": "type", + "variants": [ + { + "case": "number", + "type": "521" + }, + { + "case": "qcode", + "type": "522" + } + ], + "members": [ + { + "name": "type", + "type": "520" + } + ], + "meta-type": "object" + }, + { + "name": "[351]", + "element-type": "351", + "meta-type": "array" + }, + { + "name": "351", + "tag": "type", + "variants": [ + { + "case": "key", + "type": "524" + }, + { + "case": "btn", + "type": "525" + }, + { + "case": "rel", + "type": "526" + }, + { + "case": "abs", + "type": "526" + } + ], + "members": [ + { + "name": "type", + "type": "523" + } + ], + "meta-type": "object" + }, + { + "name": "352", + "members": [ + { + "name": "default" + }, + { + "name": "none" + }, + { + "name": "curses" + } + ], + "meta-type": "enum", + "values": [ + "default", + "none", + "curses" + ] + }, + { + "name": "353", + "members": [ + { + "name": "off" + }, + { + "name": "on" + }, + { + "name": "core" + }, + { + "name": "es" + } + ], + "meta-type": "enum", + "values": [ + "off", + "on", + "core", + "es" + ] + }, + { + "name": "354", + "members": [ + { + "name": "grab-on-hover", + "default": null, + "type": "bool" + }, + { + "name": "zoom-to-fit", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "355", + "members": [ + { + "name": "charset", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "356", + "members": [ + { + "name": "rendernode", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "357", + "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": "358", + "members": [ + { + "name": "vnc" + } + ], + "meta-type": "enum", + "values": [ + "vnc" + ] + }, + { + "name": "359", + "members": [ + { + "name": "tls-certs", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "360", + "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": "361", + "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" + } + ], + "meta-type": "object" + }, + { + "name": "362", + "members": [ + { + "name": "transferred", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "363", + "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": "364", + "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": "365", + "tag": "type", + "variants": [ + { + "case": "inet", + "type": "479" + }, + { + "case": "unix", + "type": "527" + }, + { + "case": "vsock", + "type": "528" + }, + { + "case": "fd", + "type": "517" + } + ], + "members": [ + { + "name": "type", + "type": "497" + } + ], + "meta-type": "object" + }, + { + "name": "366", + "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" + } + ], + "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" + ] + }, + { + "name": "367", + "members": [ + { + "name": "none" + }, + { + "name": "zlib" + } + ], + "meta-type": "enum", + "values": [ + "none", + "zlib" + ] + }, + { + "name": "[368]", + "element-type": "368", + "meta-type": "array" + }, + { + "name": "368", + "members": [ + { + "name": "node-name", + "type": "str" + }, + { + "name": "alias", + "type": "str" + }, + { + "name": "bitmaps", + "type": "[529]" + } + ], + "meta-type": "object" + }, + { + "name": "369", + "members": [ + { + "name": "none" + }, + { + "name": "primary" + }, + { + "name": "secondary" + } + ], + "meta-type": "enum", + "values": [ + "none", + "primary", + "secondary" + ] + }, + { + "name": "370", + "members": [ + { + "name": "none" + }, + { + "name": "request" + }, + { + "name": "error" + }, + { + "name": "processing" + } + ], + "meta-type": "enum", + "values": [ + "none", + "request", + "error", + "processing" + ] + }, + { + "name": "371", + "members": [ + { + "name": "page-sampling" + }, + { + "name": "dirty-ring" + }, + { + "name": "dirty-bitmap" + } + ], + "meta-type": "enum", + "values": [ + "page-sampling", + "dirty-ring", + "dirty-bitmap" + ] + }, + { + "name": "372", + "members": [ + { + "name": "unstarted" + }, + { + "name": "measuring" + }, + { + "name": "measured" + } + ], + "meta-type": "enum", + "values": [ + "unstarted", + "measuring", + "measured" + ] + }, + { + "name": "[373]", + "element-type": "373", + "meta-type": "array" + }, + { + "name": "373", + "members": [ + { + "name": "id", + "type": "int" + }, + { + "name": "dirty-rate", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "[374]", + "element-type": "374", + "meta-type": "array" + }, + { + "name": "374", + "tag": "type", + "variants": [ + { + "case": "abort", + "type": "531" + }, + { + "case": "block-dirty-bitmap-add", + "type": "532" + }, + { + "case": "block-dirty-bitmap-remove", + "type": "533" + }, + { + "case": "block-dirty-bitmap-clear", + "type": "533" + }, + { + "case": "block-dirty-bitmap-enable", + "type": "533" + }, + { + "case": "block-dirty-bitmap-disable", + "type": "533" + }, + { + "case": "block-dirty-bitmap-merge", + "type": "534" + }, + { + "case": "blockdev-backup", + "type": "535" + }, + { + "case": "blockdev-snapshot", + "type": "536" + }, + { + "case": "blockdev-snapshot-internal-sync", + "type": "537" + }, + { + "case": "blockdev-snapshot-sync", + "type": "538" + }, + { + "case": "drive-backup", + "type": "539" + } + ], + "members": [ + { + "name": "type", + "type": "530" + } + ], + "meta-type": "object" + }, + { + "name": "375", + "members": [ + { + "name": "completion-mode", + "default": null, + "type": "540" + } + ], + "meta-type": "object" + }, + { + "name": "376", + "members": [ + { + "name": "unavailable" + }, + { + "name": "disabled" + }, + { + "name": "enabled" + } + ], + "meta-type": "enum", + "values": [ + "unavailable", + "disabled", + "enabled" + ] + }, + { + "name": "[377]", + "element-type": "377", + "meta-type": "array" + }, + { + "name": "377", + "members": [ + { + "name": "oob" + } + ], + "meta-type": "enum", + "values": [ + "oob" + ] + }, + { + "name": "378", + "members": [ + { + "name": "major", + "type": "int" + }, + { + "name": "minor", + "type": "int" + }, + { + "name": "micro", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "379", + "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": "380", + "members": [ + { + "name": "json-type", + "type": "541" + } + ], + "meta-type": "object" + }, + { + "name": "381", + "members": [ + { + "name": "members", + "type": "[542]" + }, + { + "name": "values", + "type": "[str]", + "features": [ + "deprecated" + ] + } + ], + "meta-type": "object" + }, + { + "name": "382", + "members": [ + { + "name": "element-type", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "383", + "members": [ + { + "name": "members", + "type": "[543]" + }, + { + "name": "tag", + "default": null, + "type": "str" + }, + { + "name": "variants", + "default": null, + "type": "[544]" + } + ], + "meta-type": "object" + }, + { + "name": "384", + "members": [ + { + "name": "members", + "type": "[545]" + } + ], + "meta-type": "object" + }, + { + "name": "385", + "members": [ + { + "name": "arg-type", + "type": "str" + }, + { + "name": "ret-type", + "type": "str" + }, + { + "name": "allow-oob", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "386", + "members": [ + { + "name": "arg-type", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "387", + "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-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": "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": "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" + ] + } + ], + "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-vhost-user", + "dbus-vmstate", + "filter-buffer", + "filter-dump", + "filter-mirror", + "filter-redirector", + "filter-replay", + "filter-rewriter", + "input-barrier", + "input-linux", + "iothread", + "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", + "s390-pv-guest", + "throttle-group", + "tls-creds-anon", + "tls-creds-psk", + "tls-creds-x509", + "tls-cipher-suites", + "x-remote-object" + ] + }, + { + "name": "388", + "members": [ + { + "name": "policy", + "default": null, + "type": "546" + }, + { + "name": "rules", + "default": null, + "type": "[547]" + } + ], + "meta-type": "object" + }, + { + "name": "389", + "members": [ + { + "name": "filename", + "type": "str" + }, + { + "name": "refresh", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "390", + "members": [ + { + "name": "service", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "391", + "members": [ + { + "name": "identity", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "392", + "members": [ + { + "name": "if", + "type": "str" + }, + { + "name": "canbus", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "393", + "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": "394", + "members": [ + { + "name": "queues", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "395", + "members": [ + { + "name": "queues", + "default": null, + "type": "int" + }, + { + "name": "chardev", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "396", + "members": [ + { + "name": "addr", + "type": "str" + }, + { + "name": "id-list", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "397", + "members": [ + { + "name": "netdev", + "type": "str" + }, + { + "name": "queue", + "default": null, + "type": "548" + }, + { + "name": "status", + "default": null, + "type": "str" + }, + { + "name": "position", + "default": null, + "type": "str" + }, + { + "name": "insert", + "default": null, + "type": "549" + }, + { + "name": "interval", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "398", + "members": [ + { + "name": "netdev", + "type": "str" + }, + { + "name": "queue", + "default": null, + "type": "548" + }, + { + "name": "status", + "default": null, + "type": "str" + }, + { + "name": "position", + "default": null, + "type": "str" + }, + { + "name": "insert", + "default": null, + "type": "549" + }, + { + "name": "file", + "type": "str" + }, + { + "name": "maxlen", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "399", + "members": [ + { + "name": "netdev", + "type": "str" + }, + { + "name": "queue", + "default": null, + "type": "548" + }, + { + "name": "status", + "default": null, + "type": "str" + }, + { + "name": "position", + "default": null, + "type": "str" + }, + { + "name": "insert", + "default": null, + "type": "549" + }, + { + "name": "outdev", + "type": "str" + }, + { + "name": "vnet_hdr_support", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "400", + "members": [ + { + "name": "netdev", + "type": "str" + }, + { + "name": "queue", + "default": null, + "type": "548" + }, + { + "name": "status", + "default": null, + "type": "str" + }, + { + "name": "position", + "default": null, + "type": "str" + }, + { + "name": "insert", + "default": null, + "type": "549" + }, + { + "name": "indev", + "default": null, + "type": "str" + }, + { + "name": "outdev", + "default": null, + "type": "str" + }, + { + "name": "vnet_hdr_support", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "401", + "members": [ + { + "name": "netdev", + "type": "str" + }, + { + "name": "queue", + "default": null, + "type": "548" + }, + { + "name": "status", + "default": null, + "type": "str" + }, + { + "name": "position", + "default": null, + "type": "str" + }, + { + "name": "insert", + "default": null, + "type": "549" + } + ], + "meta-type": "object" + }, + { + "name": "402", + "members": [ + { + "name": "netdev", + "type": "str" + }, + { + "name": "queue", + "default": null, + "type": "548" + }, + { + "name": "status", + "default": null, + "type": "str" + }, + { + "name": "position", + "default": null, + "type": "str" + }, + { + "name": "insert", + "default": null, + "type": "549" + }, + { + "name": "vnet_hdr_support", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "403", + "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": "404", + "members": [ + { + "name": "evdev", + "type": "str" + }, + { + "name": "grab_all", + "default": null, + "type": "bool" + }, + { + "name": "repeat", + "default": null, + "type": "bool" + }, + { + "name": "grab-toggle", + "default": null, + "type": "550" + } + ], + "meta-type": "object" + }, + { + "name": "405", + "members": [ + { + "name": "poll-max-ns", + "default": null, + "type": "int" + }, + { + "name": "poll-grow", + "default": null, + "type": "int" + }, + { + "name": "poll-shrink", + "default": null, + "type": "int" + }, + { + "name": "aio-max-batch", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "406", + "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": "427" + }, + { + "name": "prealloc", + "default": null, + "type": "bool" + }, + { + "name": "prealloc-threads", + "default": null, + "type": "int" + }, + { + "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": "407", + "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": "427" + }, + { + "name": "prealloc", + "default": null, + "type": "bool" + }, + { + "name": "prealloc-threads", + "default": null, + "type": "int" + }, + { + "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": "readonly", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "408", + "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": "427" + }, + { + "name": "prealloc", + "default": null, + "type": "bool" + }, + { + "name": "prealloc-threads", + "default": null, + "type": "int" + }, + { + "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": "409", + "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": "427" + }, + { + "name": "prealloc", + "default": null, + "type": "bool" + }, + { + "name": "prealloc-threads", + "default": null, + "type": "int" + }, + { + "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": "410", + "members": [ + { + "name": "path", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "411", + "members": [ + { + "name": "chardev", + "type": "str" + }, + { + "name": "log", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "412", + "members": [ + { + "name": "opened", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + } + ], + "meta-type": "object" + }, + { + "name": "413", + "members": [ + { + "name": "opened", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + }, + { + "name": "chardev", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "414", + "members": [ + { + "name": "opened", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + }, + { + "name": "filename", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "415", + "members": [ + { + "name": "loaded", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + }, + { + "name": "format", + "default": null, + "type": "551" + }, + { + "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": "416", + "members": [ + { + "name": "loaded", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + }, + { + "name": "format", + "default": null, + "type": "551" + }, + { + "name": "keyid", + "default": null, + "type": "str" + }, + { + "name": "iv", + "default": null, + "type": "str" + }, + { + "name": "serial", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "417", + "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": "418", + "members": [ + { + "name": "limits", + "default": null, + "type": "552" + }, + { + "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": "419", + "members": [ + { + "name": "verify-peer", + "default": null, + "type": "bool" + }, + { + "name": "dir", + "default": null, + "type": "str" + }, + { + "name": "endpoint", + "default": null, + "type": "553" + }, + { + "name": "priority", + "default": null, + "type": "str" + }, + { + "name": "loaded", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + } + ], + "meta-type": "object" + }, + { + "name": "420", + "members": [ + { + "name": "verify-peer", + "default": null, + "type": "bool" + }, + { + "name": "dir", + "default": null, + "type": "str" + }, + { + "name": "endpoint", + "default": null, + "type": "553" + }, + { + "name": "priority", + "default": null, + "type": "str" + }, + { + "name": "loaded", + "default": null, + "type": "bool", + "features": [ + "deprecated" + ] + }, + { + "name": "username", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "421", + "members": [ + { + "name": "verify-peer", + "default": null, + "type": "bool" + }, + { + "name": "dir", + "default": null, + "type": "str" + }, + { + "name": "endpoint", + "default": null, + "type": "553" + }, + { + "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": "422", + "members": [ + { + "name": "verify-peer", + "default": null, + "type": "bool" + }, + { + "name": "dir", + "default": null, + "type": "str" + }, + { + "name": "endpoint", + "default": null, + "type": "553" + }, + { + "name": "priority", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "423", + "members": [ + { + "name": "fd", + "type": "str" + }, + { + "name": "devid", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "424", + "members": [ + { + "name": "node-id", + "default": null, + "type": "int" + }, + { + "name": "socket-id", + "default": null, + "type": "int" + }, + { + "name": "die-id", + "default": null, + "type": "int" + }, + { + "name": "core-id", + "default": null, + "type": "int" + }, + { + "name": "thread-id", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "425", + "members": [ + { + "name": "aarch64" + }, + { + "name": "alpha" + }, + { + "name": "arm" + }, + { + "name": "avr" + }, + { + "name": "cris" + }, + { + "name": "hppa" + }, + { + "name": "i386" + }, + { + "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", + "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": "426", + "members": [ + { + "name": "cpu-state", + "type": "554" + } + ], + "meta-type": "object" + }, + { + "name": "427", + "members": [ + { + "name": "default" + }, + { + "name": "preferred" + }, + { + "name": "bind" + }, + { + "name": "interleave" + } + ], + "meta-type": "enum", + "values": [ + "default", + "preferred", + "bind", + "interleave" + ] + }, + { + "name": "428", + "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": "429", + "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": "430", + "members": [ + { + "name": "src", + "type": "int" + }, + { + "name": "dst", + "type": "int" + }, + { + "name": "val", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "431", + "members": [ + { + "name": "node-id", + "default": null, + "type": "int" + }, + { + "name": "socket-id", + "default": null, + "type": "int" + }, + { + "name": "die-id", + "default": null, + "type": "int" + }, + { + "name": "core-id", + "default": null, + "type": "int" + }, + { + "name": "thread-id", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "432", + "members": [ + { + "name": "initiator", + "type": "int" + }, + { + "name": "target", + "type": "int" + }, + { + "name": "hierarchy", + "type": "555" + }, + { + "name": "data-type", + "type": "556" + }, + { + "name": "latency", + "default": null, + "type": "int" + }, + { + "name": "bandwidth", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "433", + "members": [ + { + "name": "node-id", + "type": "int" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "level", + "type": "int" + }, + { + "name": "associativity", + "type": "557" + }, + { + "name": "policy", + "type": "558" + }, + { + "name": "line", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "434", + "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": "435", + "members": [ + { + "name": "data", + "type": "559" + } + ], + "meta-type": "object" + }, + { + "name": "436", + "members": [ + { + "name": "data", + "type": "560" + } + ], + "meta-type": "object" + }, + { + "name": "437", + "members": [ + { + "name": "data", + "type": "561" + } + ], + "meta-type": "object" + }, + { + "name": "438", + "members": [ + { + "name": "data", + "type": "562" + } + ], + "meta-type": "object" + }, + { + "name": "439", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "props", + "default": null, + "type": "any" + } + ], + "meta-type": "object" + }, + { + "name": "440", + "members": [ + { + "name": "incompatible" + }, + { + "name": "identical" + }, + { + "name": "superset" + }, + { + "name": "subset" + } + ], + "meta-type": "enum", + "values": [ + "incompatible", + "identical", + "superset", + "subset" + ] + }, + { + "name": "441", + "members": [ + { + "name": "static" + }, + { + "name": "full" + } + ], + "meta-type": "enum", + "values": [ + "static", + "full" + ] + }, + { + "name": "442", + "members": [ + { + "name": "none" + }, + { + "name": "record" + }, + { + "name": "play" + } + ], + "meta-type": "enum", + "values": [ + "none", + "record", + "play" + ] + }, + { + "name": "443", + "members": [ + { + "name": "block-node" + }, + { + "name": "chardev" + }, + { + "name": "migration" + } + ], + "meta-type": "enum", + "values": [ + "block-node", + "chardev", + "migration" + ] + }, + { + "name": "444", + "members": [ + { + "name": "node-name", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "445", + "members": [ + { + "name": "id", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[446]", + "element-type": "446", + "meta-type": "array" + }, + { + "name": "446", + "members": [ + { + "name": "fd", + "type": "int" + }, + { + "name": "opaque", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[447]", + "element-type": "447", + "meta-type": "array" + }, + { + "name": "447", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "type", + "type": "563" + }, + { + "name": "help", + "default": null, + "type": "str" + }, + { + "name": "default", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[449]", + "element-type": "449", + "meta-type": "array" + }, + { + "name": "449", + "members": [ + { + "name": "node", + "type": "int" + }, + { + "name": "size", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "450", + "members": [ + { + "name": "DIMM" + }, + { + "name": "CPU" + } + ], + "meta-type": "enum", + "values": [ + "DIMM", + "CPU" + ] + }, + { + "name": "[451]", + "element-type": "451", + "meta-type": "array" + }, + { + "name": "451", + "members": [ + { + "name": "bus", + "type": "int" + }, + { + "name": "slot", + "type": "int" + }, + { + "name": "function", + "type": "int" + }, + { + "name": "class_info", + "type": "564" + }, + { + "name": "id", + "type": "565" + }, + { + "name": "irq", + "default": null, + "type": "int" + }, + { + "name": "irq_pin", + "type": "int" + }, + { + "name": "qdev_id", + "type": "str" + }, + { + "name": "pci_bridge", + "default": null, + "type": "566" + }, + { + "name": "regions", + "type": "[567]" + } + ], + "meta-type": "object" + }, + { + "name": "452", + "members": [ + { + "name": "hyper-v" + }, + { + "name": "s390" + } + ], + "meta-type": "enum", + "values": [ + "hyper-v", + "s390" + ] + }, + { + "name": "453", + "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": "454", + "members": [ + { + "name": "core", + "type": "int" + }, + { + "name": "psw-mask", + "type": "int" + }, + { + "name": "psw-addr", + "type": "int" + }, + { + "name": "reason", + "type": "568" + } + ], + "meta-type": "object" + }, + { + "name": "[455]", + "element-type": "455", + "meta-type": "array" + }, + { + "name": "455", + "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": "456", + "members": [ + { + "name": "boundaries", + "type": "[int]" + }, + { + "name": "bins", + "type": "[int]" + } + ], + "meta-type": "object" + }, + { + "name": "457", + "members": [ + { + "name": "discard-nb-ok", + "type": "int" + }, + { + "name": "discard-nb-failed", + "type": "int" + }, + { + "name": "discard-bytes-ok", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "458", + "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": "459", + "tag": "type", + "variants": [ + { + "case": "qcow2", + "type": "570" + }, + { + "case": "vmdk", + "type": "571" + }, + { + "case": "luks", + "type": "572" + }, + { + "case": "rbd", + "type": "573" + } + ], + "members": [ + { + "name": "type", + "type": "569" + } + ], + "meta-type": "object" + }, + { + "name": "460", + "members": [ + { + "name": "block-backend" + }, + { + "name": "block-job" + }, + { + "name": "block-driver" + } + ], + "meta-type": "enum", + "values": [ + "block-backend", + "block-job", + "block-driver" + ] + }, + { + "name": "[461]", + "element-type": "461", + "meta-type": "array" + }, + { + "name": "461", + "members": [ + { + "name": "consistent-read" + }, + { + "name": "write" + }, + { + "name": "write-unchanged" + }, + { + "name": "resize" + } + ], + "meta-type": "enum", + "values": [ + "consistent-read", + "write", + "write-unchanged", + "resize" + ] + }, + { + "name": "462", + "members": [ + { + "type": "49" + }, + { + "type": "str" + } + ], + "meta-type": "alternate" + }, + { + "name": "[463]", + "element-type": "463", + "meta-type": "array" + }, + { + "name": "463", + "members": [ + { + "name": "event", + "type": "574" + }, + { + "name": "state", + "default": null, + "type": "int" + }, + { + "name": "iotype", + "default": null, + "type": "575" + }, + { + "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": "[464]", + "element-type": "464", + "meta-type": "array" + }, + { + "name": "464", + "members": [ + { + "name": "event", + "type": "574" + }, + { + "name": "state", + "default": null, + "type": "int" + }, + { + "name": "new_state", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "465", + "members": [ + { + "name": "auto" + }, + { + "name": "on" + }, + { + "name": "off" + } + ], + "meta-type": "enum", + "values": [ + "auto", + "on", + "off" + ] + }, + { + "name": "466", + "members": [ + { + "name": "threads" + }, + { + "name": "native" + } + ], + "meta-type": "enum", + "values": [ + "threads", + "native" + ] + }, + { + "name": "467", + "members": [ + { + "name": "tcp" + }, + { + "name": "iser" + } + ], + "meta-type": "enum", + "values": [ + "tcp", + "iser" + ] + }, + { + "name": "468", + "members": [ + { + "name": "crc32c" + }, + { + "name": "none" + }, + { + "name": "crc32c-none" + }, + { + "name": "none-crc32c" + } + ], + "meta-type": "enum", + "values": [ + "crc32c", + "none", + "crc32c-none", + "none-crc32c" + ] + }, + { + "name": "469", + "members": [ + { + "name": "type", + "type": "576" + }, + { + "name": "host", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "470", + "members": [ + { + "type": "49" + }, + { + "type": "str" + }, + { + "type": "null" + } + ], + "meta-type": "alternate" + }, + { + "name": "471", + "members": [ + { + "type": "577" + }, + { + "type": "578" + } + ], + "meta-type": "alternate" + }, + { + "name": "472", + "tag": "format", + "variants": [ + { + "case": "aes", + "type": "580" + }, + { + "case": "luks", + "type": "581" + } + ], + "members": [ + { + "name": "format", + "type": "579" + } + ], + "meta-type": "object" + }, + { + "name": "473", + "tag": "format", + "variants": [ + { + "case": "aes", + "type": "580" + } + ], + "members": [ + { + "name": "format", + "type": "582" + } + ], + "meta-type": "object" + }, + { + "name": "[462]", + "element-type": "462", + "meta-type": "array" + }, + { + "name": "474", + "members": [ + { + "name": "quorum" + }, + { + "name": "fifo" + } + ], + "meta-type": "enum", + "values": [ + "quorum", + "fifo" + ] + }, + { + "name": "475", + "tag": "format", + "variants": [ + { + "case": "luks", + "type": "584" + }, + { + "case": "luks2", + "type": "585" + } + ], + "members": [ + { + "name": "format", + "type": "583" + } + ], + "meta-type": "object" + }, + { + "name": "[476]", + "element-type": "476", + "meta-type": "array" + }, + { + "name": "476", + "members": [ + { + "name": "cephx" + }, + { + "name": "none" + } + ], + "meta-type": "enum", + "values": [ + "cephx", + "none" + ] + }, + { + "name": "[477]", + "element-type": "477", + "meta-type": "array" + }, + { + "name": "477", + "members": [ + { + "name": "host", + "type": "str" + }, + { + "name": "port", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "478", + "members": [ + { + "name": "primary" + }, + { + "name": "secondary" + } + ], + "meta-type": "enum", + "values": [ + "primary", + "secondary" + ] + }, + { + "name": "479", + "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" + } + ], + "meta-type": "object" + }, + { + "name": "480", + "tag": "mode", + "variants": [ + { + "case": "hash", + "type": "587" + }, + { + "case": "none", + "type": "0" + }, + { + "case": "known_hosts", + "type": "0" + } + ], + "members": [ + { + "name": "mode", + "type": "586" + } + ], + "meta-type": "object" + }, + { + "name": "481", + "members": [ + { + "name": "filename", + "type": "str" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "preallocation", + "default": null, + "type": "588" + }, + { + "name": "nocow", + "default": null, + "type": "bool" + }, + { + "name": "extent-size-hint", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "482", + "members": [ + { + "name": "location", + "type": "283" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "preallocation", + "default": null, + "type": "588" + } + ], + "meta-type": "object" + }, + { + "name": "483", + "members": [ + { + "name": "key-secret", + "default": null, + "type": "str" + }, + { + "name": "cipher-alg", + "default": null, + "type": "589" + }, + { + "name": "cipher-mode", + "default": null, + "type": "590" + }, + { + "name": "ivgen-alg", + "default": null, + "type": "591" + }, + { + "name": "ivgen-hash-alg", + "default": null, + "type": "592" + }, + { + "name": "hash-alg", + "default": null, + "type": "592" + }, + { + "name": "iter-time", + "default": null, + "type": "int" + }, + { + "name": "file", + "type": "462" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "preallocation", + "default": null, + "type": "588" + } + ], + "meta-type": "object" + }, + { + "name": "484", + "members": [ + { + "name": "location", + "type": "289" + }, + { + "name": "size", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "485", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "cluster-size", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "486", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "backing-file", + "default": null, + "type": "str" + }, + { + "name": "encrypt", + "default": null, + "type": "593" + } + ], + "meta-type": "object" + }, + { + "name": "487", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "data-file", + "default": null, + "type": "462" + }, + { + "name": "data-file-raw", + "default": null, + "type": "bool" + }, + { + "name": "extended-l2", + "default": null, + "type": "bool" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "version", + "default": null, + "type": "594" + }, + { + "name": "backing-file", + "default": null, + "type": "str" + }, + { + "name": "backing-fmt", + "default": null, + "type": "270" + }, + { + "name": "encrypt", + "default": null, + "type": "593" + }, + { + "name": "cluster-size", + "default": null, + "type": "int" + }, + { + "name": "preallocation", + "default": null, + "type": "588" + }, + { + "name": "lazy-refcounts", + "default": null, + "type": "bool" + }, + { + "name": "refcount-bits", + "default": null, + "type": "int" + }, + { + "name": "compression-type", + "default": null, + "type": "595" + } + ], + "meta-type": "object" + }, + { + "name": "488", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "backing-file", + "default": null, + "type": "str" + }, + { + "name": "backing-fmt", + "default": null, + "type": "270" + }, + { + "name": "cluster-size", + "default": null, + "type": "int" + }, + { + "name": "table-size", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "489", + "members": [ + { + "name": "location", + "type": "298" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "cluster-size", + "default": null, + "type": "int" + }, + { + "name": "encrypt", + "default": null, + "type": "596" + } + ], + "meta-type": "object" + }, + { + "name": "490", + "members": [ + { + "name": "location", + "type": "300" + }, + { + "name": "size", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "491", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "preallocation", + "default": null, + "type": "588" + } + ], + "meta-type": "object" + }, + { + "name": "492", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "log-size", + "default": null, + "type": "int" + }, + { + "name": "block-size", + "default": null, + "type": "int" + }, + { + "name": "subformat", + "default": null, + "type": "597" + }, + { + "name": "block-state-zero", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "493", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "extents", + "default": null, + "type": "[462]" + }, + { + "name": "subformat", + "default": null, + "type": "598" + }, + { + "name": "backing-file", + "default": null, + "type": "str" + }, + { + "name": "adapter-type", + "default": null, + "type": "599" + }, + { + "name": "hwversion", + "default": null, + "type": "str" + }, + { + "name": "toolsversion", + "default": null, + "type": "str" + }, + { + "name": "zeroed-grain", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "494", + "members": [ + { + "name": "file", + "type": "462" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "subformat", + "default": null, + "type": "600" + }, + { + "name": "force-size", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "495", + "members": [ + { + "name": "state", + "type": "601" + }, + { + "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": "496", + "members": [ + { + "name": "encrypt", + "default": null, + "type": "602" + } + ], + "meta-type": "object" + }, + { + "name": "null", + "json-type": "null", + "meta-type": "builtin" + }, + { + "name": "497", + "members": [ + { + "name": "inet" + }, + { + "name": "unix" + }, + { + "name": "vsock" + }, + { + "name": "fd" + } + ], + "meta-type": "enum", + "values": [ + "inet", + "unix", + "vsock", + "fd" + ] + }, + { + "name": "498", + "members": [ + { + "name": "data", + "type": "479" + } + ], + "meta-type": "object" + }, + { + "name": "499", + "members": [ + { + "name": "data", + "type": "527" + } + ], + "meta-type": "object" + }, + { + "name": "500", + "members": [ + { + "name": "data", + "type": "528" + } + ], + "meta-type": "object" + }, + { + "name": "501", + "members": [ + { + "name": "data", + "type": "517" + } + ], + "meta-type": "object" + }, + { + "name": "502", + "members": [ + { + "name": "off" + }, + { + "name": "on" + }, + { + "name": "auto" + } + ], + "meta-type": "enum", + "values": [ + "off", + "on", + "auto" + ] + }, + { + "name": "503", + "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": "vc" + }, + { + "name": "ringbuf" + }, + { + "name": "memory" + } + ], + "meta-type": "enum", + "values": [ + "file", + "serial", + "parallel", + "pipe", + "socket", + "udp", + "pty", + "null", + "mux", + "msmouse", + "wctablet", + "braille", + "testdev", + "stdio", + "console", + "vc", + "ringbuf", + "memory" + ] + }, + { + "name": "504", + "members": [ + { + "name": "data", + "type": "603" + } + ], + "meta-type": "object" + }, + { + "name": "505", + "members": [ + { + "name": "data", + "type": "604" + } + ], + "meta-type": "object" + }, + { + "name": "506", + "members": [ + { + "name": "data", + "type": "605" + } + ], + "meta-type": "object" + }, + { + "name": "507", + "members": [ + { + "name": "data", + "type": "606" + } + ], + "meta-type": "object" + }, + { + "name": "508", + "members": [ + { + "name": "data", + "type": "607" + } + ], + "meta-type": "object" + }, + { + "name": "509", + "members": [ + { + "name": "data", + "type": "608" + } + ], + "meta-type": "object" + }, + { + "name": "510", + "members": [ + { + "name": "data", + "type": "609" + } + ], + "meta-type": "object" + }, + { + "name": "515", + "members": [ + { + "name": "data", + "type": "614" + } + ], + "meta-type": "object" + }, + { + "name": "516", + "members": [ + { + "name": "data", + "type": "615" + } + ], + "meta-type": "object" + }, + { + "name": "[517]", + "element-type": "517", + "meta-type": "array" + }, + { + "name": "517", + "members": [ + { + "name": "str", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "518", + "members": [ + { + "name": "data", + "type": "616" + } + ], + "meta-type": "object" + }, + { + "name": "519", + "members": [ + { + "name": "data", + "type": "617" + } + ], + "meta-type": "object" + }, + { + "name": "520", + "members": [ + { + "name": "number" + }, + { + "name": "qcode" + } + ], + "meta-type": "enum", + "values": [ + "number", + "qcode" + ] + }, + { + "name": "521", + "members": [ + { + "name": "data", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "522", + "members": [ + { + "name": "data", + "type": "618" + } + ], + "meta-type": "object" + }, + { + "name": "523", + "members": [ + { + "name": "key" + }, + { + "name": "btn" + }, + { + "name": "rel" + }, + { + "name": "abs" + } + ], + "meta-type": "enum", + "values": [ + "key", + "btn", + "rel", + "abs" + ] + }, + { + "name": "524", + "members": [ + { + "name": "data", + "type": "619" + } + ], + "meta-type": "object" + }, + { + "name": "525", + "members": [ + { + "name": "data", + "type": "620" + } + ], + "meta-type": "object" + }, + { + "name": "526", + "members": [ + { + "name": "data", + "type": "621" + } + ], + "meta-type": "object" + }, + { + "name": "number", + "json-type": "number", + "meta-type": "builtin" + }, + { + "name": "527", + "members": [ + { + "name": "path", + "type": "str" + }, + { + "name": "abstract", + "default": null, + "type": "bool" + }, + { + "name": "tight", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "528", + "members": [ + { + "name": "cid", + "type": "str" + }, + { + "name": "port", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[529]", + "element-type": "529", + "meta-type": "array" + }, + { + "name": "529", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "alias", + "type": "str" + }, + { + "name": "transform", + "default": null, + "type": "622" + } + ], + "meta-type": "object" + }, + { + "name": "530", + "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": "531", + "members": [ + { + "name": "data", + "type": "623" + } + ], + "meta-type": "object" + }, + { + "name": "532", + "members": [ + { + "name": "data", + "type": "36" + } + ], + "meta-type": "object" + }, + { + "name": "533", + "members": [ + { + "name": "data", + "type": "37" + } + ], + "meta-type": "object" + }, + { + "name": "534", + "members": [ + { + "name": "data", + "type": "38" + } + ], + "meta-type": "object" + }, + { + "name": "535", + "members": [ + { + "name": "data", + "type": "31" + } + ], + "meta-type": "object" + }, + { + "name": "536", + "members": [ + { + "name": "data", + "type": "27" + } + ], + "meta-type": "object" + }, + { + "name": "537", + "members": [ + { + "name": "data", + "type": "67" + } + ], + "meta-type": "object" + }, + { + "name": "538", + "members": [ + { + "name": "data", + "type": "26" + } + ], + "meta-type": "object" + }, + { + "name": "539", + "members": [ + { + "name": "data", + "type": "30" + } + ], + "meta-type": "object" + }, + { + "name": "540", + "members": [ + { + "name": "individual" + }, + { + "name": "grouped" + } + ], + "meta-type": "enum", + "values": [ + "individual", + "grouped" + ] + }, + { + "name": "541", + "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": "[542]", + "element-type": "542", + "meta-type": "array" + }, + { + "name": "542", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "features", + "default": null, + "type": "[str]" + } + ], + "meta-type": "object" + }, + { + "name": "[543]", + "element-type": "543", + "meta-type": "array" + }, + { + "name": "543", + "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": "[544]", + "element-type": "544", + "meta-type": "array" + }, + { + "name": "544", + "members": [ + { + "name": "case", + "type": "str" + }, + { + "name": "type", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "[545]", + "element-type": "545", + "meta-type": "array" + }, + { + "name": "545", + "members": [ + { + "name": "type", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "546", + "members": [ + { + "name": "deny" + }, + { + "name": "allow" + } + ], + "meta-type": "enum", + "values": [ + "deny", + "allow" + ] + }, + { + "name": "[547]", + "element-type": "547", + "meta-type": "array" + }, + { + "name": "547", + "members": [ + { + "name": "match", + "type": "str" + }, + { + "name": "policy", + "type": "546" + }, + { + "name": "format", + "default": null, + "type": "624" + } + ], + "meta-type": "object" + }, + { + "name": "548", + "members": [ + { + "name": "all" + }, + { + "name": "rx" + }, + { + "name": "tx" + } + ], + "meta-type": "enum", + "values": [ + "all", + "rx", + "tx" + ] + }, + { + "name": "549", + "members": [ + { + "name": "before" + }, + { + "name": "behind" + } + ], + "meta-type": "enum", + "values": [ + "before", + "behind" + ] + }, + { + "name": "550", + "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": "551", + "members": [ + { + "name": "raw" + }, + { + "name": "base64" + } + ], + "meta-type": "enum", + "values": [ + "raw", + "base64" + ] + }, + { + "name": "552", + "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": "553", + "members": [ + { + "name": "client" + }, + { + "name": "server" + } + ], + "meta-type": "enum", + "values": [ + "client", + "server" + ] + }, + { + "name": "554", + "members": [ + { + "name": "uninitialized" + }, + { + "name": "stopped" + }, + { + "name": "check-stop" + }, + { + "name": "operating" + }, + { + "name": "load" + } + ], + "meta-type": "enum", + "values": [ + "uninitialized", + "stopped", + "check-stop", + "operating", + "load" + ] + }, + { + "name": "555", + "members": [ + { + "name": "memory" + }, + { + "name": "first-level" + }, + { + "name": "second-level" + }, + { + "name": "third-level" + } + ], + "meta-type": "enum", + "values": [ + "memory", + "first-level", + "second-level", + "third-level" + ] + }, + { + "name": "556", + "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": "557", + "members": [ + { + "name": "none" + }, + { + "name": "direct" + }, + { + "name": "complex" + } + ], + "meta-type": "enum", + "values": [ + "none", + "direct", + "complex" + ] + }, + { + "name": "558", + "members": [ + { + "name": "none" + }, + { + "name": "write-back" + }, + { + "name": "write-through" + } + ], + "meta-type": "enum", + "values": [ + "none", + "write-back", + "write-through" + ] + }, + { + "name": "559", + "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": "560", + "members": [ + { + "name": "id", + "default": null, + "type": "str" + }, + { + "name": "memaddr", + "type": "int" + }, + { + "name": "size", + "type": "int" + }, + { + "name": "memdev", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "561", + "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": "562", + "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": "563", + "members": [ + { + "name": "string" + }, + { + "name": "boolean" + }, + { + "name": "number" + }, + { + "name": "size" + } + ], + "meta-type": "enum", + "values": [ + "string", + "boolean", + "number", + "size" + ] + }, + { + "name": "564", + "members": [ + { + "name": "desc", + "default": null, + "type": "str" + }, + { + "name": "class", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "565", + "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": "566", + "members": [ + { + "name": "bus", + "type": "625" + }, + { + "name": "devices", + "default": null, + "type": "[451]" + } + ], + "meta-type": "object" + }, + { + "name": "[567]", + "element-type": "567", + "meta-type": "array" + }, + { + "name": "567", + "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": "568", + "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": "569", + "members": [ + { + "name": "qcow2" + }, + { + "name": "vmdk" + }, + { + "name": "luks" + }, + { + "name": "rbd" + } + ], + "meta-type": "enum", + "values": [ + "qcow2", + "vmdk", + "luks", + "rbd" + ] + }, + { + "name": "570", + "members": [ + { + "name": "data", + "type": "626" + } + ], + "meta-type": "object" + }, + { + "name": "571", + "members": [ + { + "name": "data", + "type": "627" + } + ], + "meta-type": "object" + }, + { + "name": "572", + "members": [ + { + "name": "data", + "type": "628" + } + ], + "meta-type": "object" + }, + { + "name": "573", + "members": [ + { + "name": "data", + "type": "629" + } + ], + "meta-type": "object" + }, + { + "name": "574", + "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": "575", + "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": "576", + "members": [ + { + "name": "inet" + } + ], + "meta-type": "enum", + "values": [ + "inet" + ] + }, + { + "name": "577", + "members": [ + { + "name": "template", + "default": null, + "type": "578" + }, + { + "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": "578", + "members": [ + { + "name": "none" + }, + { + "name": "constant" + }, + { + "name": "cached" + }, + { + "name": "all" + } + ], + "meta-type": "enum", + "values": [ + "none", + "constant", + "cached", + "all" + ] + }, + { + "name": "579", + "members": [ + { + "name": "aes" + }, + { + "name": "luks" + } + ], + "meta-type": "enum", + "values": [ + "aes", + "luks" + ] + }, + { + "name": "580", + "members": [ + { + "name": "key-secret", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "581", + "members": [ + { + "name": "key-secret", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "582", + "members": [ + { + "name": "aes" + } + ], + "meta-type": "enum", + "values": [ + "aes" + ] + }, + { + "name": "583", + "members": [ + { + "name": "luks" + }, + { + "name": "luks2" + } + ], + "meta-type": "enum", + "values": [ + "luks", + "luks2" + ] + }, + { + "name": "584", + "members": [ + { + "name": "key-secret", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "585", + "members": [ + { + "name": "key-secret", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "586", + "members": [ + { + "name": "none" + }, + { + "name": "hash" + }, + { + "name": "known_hosts" + } + ], + "meta-type": "enum", + "values": [ + "none", + "hash", + "known_hosts" + ] + }, + { + "name": "587", + "members": [ + { + "name": "type", + "type": "630" + }, + { + "name": "hash", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "588", + "members": [ + { + "name": "off" + }, + { + "name": "metadata" + }, + { + "name": "falloc" + }, + { + "name": "full" + } + ], + "meta-type": "enum", + "values": [ + "off", + "metadata", + "falloc", + "full" + ] + }, + { + "name": "589", + "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": "590", + "members": [ + { + "name": "ecb" + }, + { + "name": "cbc" + }, + { + "name": "xts" + }, + { + "name": "ctr" + } + ], + "meta-type": "enum", + "values": [ + "ecb", + "cbc", + "xts", + "ctr" + ] + }, + { + "name": "591", + "members": [ + { + "name": "plain" + }, + { + "name": "plain64" + }, + { + "name": "essiv" + } + ], + "meta-type": "enum", + "values": [ + "plain", + "plain64", + "essiv" + ] + }, + { + "name": "592", + "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": "593", + "tag": "format", + "variants": [ + { + "case": "qcow", + "type": "580" + }, + { + "case": "luks", + "type": "632" + } + ], + "members": [ + { + "name": "format", + "type": "631" + } + ], + "meta-type": "object" + }, + { + "name": "594", + "members": [ + { + "name": "v2" + }, + { + "name": "v3" + } + ], + "meta-type": "enum", + "values": [ + "v2", + "v3" + ] + }, + { + "name": "595", + "members": [ + { + "name": "zlib" + } + ], + "meta-type": "enum", + "values": [ + "zlib" + ] + }, + { + "name": "596", + "tag": "format", + "variants": [ + { + "case": "luks", + "type": "633" + }, + { + "case": "luks2", + "type": "634" + } + ], + "members": [ + { + "name": "format", + "type": "583" + } + ], + "meta-type": "object" + }, + { + "name": "597", + "members": [ + { + "name": "dynamic" + }, + { + "name": "fixed" + } + ], + "meta-type": "enum", + "values": [ + "dynamic", + "fixed" + ] + }, + { + "name": "598", + "members": [ + { + "name": "monolithicSparse" + }, + { + "name": "monolithicFlat" + }, + { + "name": "twoGbMaxExtentSparse" + }, + { + "name": "twoGbMaxExtentFlat" + }, + { + "name": "streamOptimized" + } + ], + "meta-type": "enum", + "values": [ + "monolithicSparse", + "monolithicFlat", + "twoGbMaxExtentSparse", + "twoGbMaxExtentFlat", + "streamOptimized" + ] + }, + { + "name": "599", + "members": [ + { + "name": "ide" + }, + { + "name": "buslogic" + }, + { + "name": "lsilogic" + }, + { + "name": "legacyESX" + } + ], + "meta-type": "enum", + "values": [ + "ide", + "buslogic", + "lsilogic", + "legacyESX" + ] + }, + { + "name": "600", + "members": [ + { + "name": "dynamic" + }, + { + "name": "fixed" + } + ], + "meta-type": "enum", + "values": [ + "dynamic", + "fixed" + ] + }, + { + "name": "601", + "members": [ + { + "name": "active" + }, + { + "name": "inactive" + } + ], + "meta-type": "enum", + "values": [ + "active", + "inactive" + ] + }, + { + "name": "602", + "tag": "format", + "variants": [ + { + "case": "luks", + "type": "635" + }, + { + "case": "qcow", + "type": "0" + } + ], + "members": [ + { + "name": "format", + "type": "631" + } + ], + "meta-type": "object" + }, + { + "name": "603", + "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": "604", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "device", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "605", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "addr", + "type": "310" + }, + { + "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": "606", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "remote", + "type": "310" + }, + { + "name": "local", + "default": null, + "type": "310" + } + ], + "meta-type": "object" + }, + { + "name": "607", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "608", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "chardev", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "609", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "signal", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "614", + "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": "615", + "members": [ + { + "name": "logfile", + "default": null, + "type": "str" + }, + { + "name": "logappend", + "default": null, + "type": "bool" + }, + { + "name": "size", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "616", + "members": [ + { + "name": "path", + "default": null, + "type": "str" + }, + { + "name": "cancel-path", + "default": null, + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "617", + "members": [ + { + "name": "chardev", + "type": "str" + } + ], + "meta-type": "object" + }, + { + "name": "618", + "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": "619", + "members": [ + { + "name": "key", + "type": "350" + }, + { + "name": "down", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "620", + "members": [ + { + "name": "button", + "type": "636" + }, + { + "name": "down", + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "621", + "members": [ + { + "name": "axis", + "type": "637" + }, + { + "name": "value", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "622", + "members": [ + { + "name": "persistent", + "default": null, + "type": "bool" + } + ], + "meta-type": "object" + }, + { + "name": "623", + "members": [ + ], + "meta-type": "object" + }, + { + "name": "624", + "members": [ + { + "name": "exact" + }, + { + "name": "glob" + } + ], + "meta-type": "enum", + "values": [ + "exact", + "glob" + ] + }, + { + "name": "625", + "members": [ + { + "name": "number", + "type": "int" + }, + { + "name": "secondary", + "type": "int" + }, + { + "name": "subordinate", + "type": "int" + }, + { + "name": "io_range", + "type": "638" + }, + { + "name": "memory_range", + "type": "638" + }, + { + "name": "prefetchable_range", + "type": "638" + } + ], + "meta-type": "object" + }, + { + "name": "626", + "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": "639" + }, + { + "name": "bitmaps", + "default": null, + "type": "[640]" + }, + { + "name": "compression-type", + "type": "595" + } + ], + "meta-type": "object" + }, + { + "name": "627", + "members": [ + { + "name": "create-type", + "type": "str" + }, + { + "name": "cid", + "type": "int" + }, + { + "name": "parent-cid", + "type": "int" + }, + { + "name": "extents", + "type": "[263]" + } + ], + "meta-type": "object" + }, + { + "name": "628", + "members": [ + { + "name": "cipher-alg", + "type": "589" + }, + { + "name": "cipher-mode", + "type": "590" + }, + { + "name": "ivgen-alg", + "type": "591" + }, + { + "name": "ivgen-hash-alg", + "default": null, + "type": "592" + }, + { + "name": "hash-alg", + "type": "592" + }, + { + "name": "payload-offset", + "type": "int" + }, + { + "name": "master-key-iters", + "type": "int" + }, + { + "name": "uuid", + "type": "str" + }, + { + "name": "slots", + "type": "[641]" + } + ], + "meta-type": "object" + }, + { + "name": "629", + "members": [ + { + "name": "encryption-format", + "default": null, + "type": "583" + } + ], + "meta-type": "object" + }, + { + "name": "630", + "members": [ + { + "name": "md5" + }, + { + "name": "sha1" + }, + { + "name": "sha256" + } + ], + "meta-type": "enum", + "values": [ + "md5", + "sha1", + "sha256" + ] + }, + { + "name": "631", + "members": [ + { + "name": "qcow" + }, + { + "name": "luks" + } + ], + "meta-type": "enum", + "values": [ + "qcow", + "luks" + ] + }, + { + "name": "632", + "members": [ + { + "name": "key-secret", + "default": null, + "type": "str" + }, + { + "name": "cipher-alg", + "default": null, + "type": "589" + }, + { + "name": "cipher-mode", + "default": null, + "type": "590" + }, + { + "name": "ivgen-alg", + "default": null, + "type": "591" + }, + { + "name": "ivgen-hash-alg", + "default": null, + "type": "592" + }, + { + "name": "hash-alg", + "default": null, + "type": "592" + }, + { + "name": "iter-time", + "default": null, + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "633", + "members": [ + { + "name": "key-secret", + "type": "str" + }, + { + "name": "cipher-alg", + "default": null, + "type": "589" + } + ], + "meta-type": "object" + }, + { + "name": "634", + "members": [ + { + "name": "key-secret", + "type": "str" + }, + { + "name": "cipher-alg", + "default": null, + "type": "589" + } + ], + "meta-type": "object" + }, + { + "name": "635", + "members": [ + { + "name": "state", + "type": "601" + }, + { + "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": "636", + "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": "637", + "members": [ + { + "name": "x" + }, + { + "name": "y" + } + ], + "meta-type": "enum", + "values": [ + "x", + "y" + ] + }, + { + "name": "638", + "members": [ + { + "name": "base", + "type": "int" + }, + { + "name": "limit", + "type": "int" + } + ], + "meta-type": "object" + }, + { + "name": "639", + "tag": "format", + "variants": [ + { + "case": "luks", + "type": "628" + }, + { + "case": "aes", + "type": "0" + } + ], + "members": [ + { + "name": "format", + "type": "579" + } + ], + "meta-type": "object" + }, + { + "name": "[640]", + "element-type": "640", + "meta-type": "array" + }, + { + "name": "640", + "members": [ + { + "name": "name", + "type": "str" + }, + { + "name": "granularity", + "type": "int" + }, + { + "name": "flags", + "type": "[642]" + } + ], + "meta-type": "object" + }, + { + "name": "[263]", + "element-type": "263", + "meta-type": "array" + }, + { + "name": "[641]", + "element-type": "641", + "meta-type": "array" + }, + { + "name": "641", + "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": "[642]", + "element-type": "642", + "meta-type": "array" + }, + { + "name": "642", + "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": "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": "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-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-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": "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": true, + "present": true + }, + "id": "libvirt-6" +} + +{ + "execute": "qom-list-types", + "id": "libvirt-7" +} + +{ + "return": [ + { + "name": "ipmi-bmc-sim", + "parent": "ipmi-bmc" + }, + { + "name": "virtio-balloon-pci-non-transitional", + "parent": "virtio-balloon-pci-base" + }, + { + "name": "mpc8379-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "mpc8533e_v10-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "970_v2.2-powerpc64-cpu", + "parent": "970-family-powerpc64-cpu" + }, + { + "name": "mpc8560_v21-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "aw-h3-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "macio-gpio", + "parent": "sys-bus-device" + }, + { + "name": "esp", + "parent": "device" + }, + { + "name": "ppce500-machine", + "parent": "ppce500-base-machine" + }, + { + "name": "power10_v1.0-powerpc64-cpu", + "parent": "POWER10-family-powerpc64-cpu" + }, + { + "name": "750gx_v1.2-powerpc64-cpu", + "parent": "750gx-family-powerpc64-cpu" + }, + { + "name": "ich9-intel-hda", + "parent": "intel-hda-generic" + }, + { + "name": "604r-powerpc64-cpu", + "parent": "604E-family-powerpc64-cpu" + }, + { + "name": "u2f-passthru", + "parent": "u2f-key" + }, + { + "name": "750l_v3.0-powerpc64-cpu", + "parent": "750-family-powerpc64-cpu" + }, + { + "name": "PCI", + "parent": "bus" + }, + { + "name": "usb-wacom-tablet", + "parent": "usb-device" + }, + { + "name": "vhost-user-blk", + "parent": "virtio-device" + }, + { + "name": "mpc8347ep-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "mpc8378e-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "power10_v1.0-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "440-xilinx-w-dfpu-powerpc64-cpu", + "parent": "440x5wDFPU-family-powerpc64-cpu" + }, + { + "name": "pnv-xive", + "parent": "xive-router" + }, + { + "name": "adb-keyboard", + "parent": "adb-device" + }, + { + "name": "power7+_v2.1-powerpc64-cpu", + "parent": "POWER7-family-powerpc64-cpu" + }, + { + "name": "e300c1-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "escc", + "parent": "sys-bus-device" + }, + { + "name": "460exb-powerpc64-cpu", + "parent": "460EX-family-powerpc64-cpu" + }, + { + "name": "mpc8560_v20-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "mpc8378-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "tpm-spapr", + "parent": "vio-spapr-device" + }, + { + "name": "vfio-amd-xgbe", + "parent": "vfio-platform" + }, + { + "name": "virtio-scsi-pci-transitional", + "parent": "virtio-scsi-pci-base" + }, + { + "name": "750gx_v1.1-powerpc64-cpu", + "parent": "750gx-family-powerpc64-cpu" + }, + { + "name": "mac99-machine", + "parent": "machine" + }, + { + "name": "mc146818rtc", + "parent": "isa-device" + }, + { + "name": "970fx_v2.0-powerpc64-cpu", + "parent": "970-family-powerpc64-cpu" + }, + { + "name": "power8e_v2.1-powernv-cpu-core", + "parent": "powernv-cpu-core" + }, + { + "name": "405d4-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "mpc5200b_v21-powerpc64-cpu", + "parent": "G2LE-family-powerpc64-cpu" + }, + { + "name": "970mp_v1.0-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "pseries-3.1-machine", + "parent": "spapr-machine" + }, + { + "name": "440epb-powerpc64-cpu", + "parent": "440EP-family-powerpc64-cpu" + }, + { + "name": "vt8231-superio", + "parent": "via-superio" + }, + { + "name": "filter-buffer", + "parent": "netfilter" + }, + { + "name": "chardev-parallel", + "parent": "chardev" + }, + { + "name": "spapr-pci-host-bridge", + "parent": "pci-host-bridge" + }, + { + "name": "pnv-pbcq", + "parent": "device" + }, + { + "name": "7400_v2.6-powerpc64-cpu", + "parent": "7400-family-powerpc64-cpu" + }, + { + "name": "virtio-balloon-device", + "parent": "virtio-device" + }, + { + "name": "750gx_v1.0-powerpc64-cpu", + "parent": "750gx-family-powerpc64-cpu" + }, + { + "name": "7410_v1.2-powerpc64-cpu", + "parent": "7410-family-powerpc64-cpu" + }, + { + "name": "pseries-6.1-machine", + "parent": "spapr-machine" + }, + { + "name": "pseries-2.5-machine", + "parent": "spapr-machine" + }, + { + "name": "mpc8347eat-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "970_v2.2-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "pcie-root-port", + "parent": "pcie-root-port-base" + }, + { + "name": "pseries-2.11-machine", + "parent": "spapr-machine" + }, + { + "name": "mpc8343e-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "qemu-console", + "parent": "object" + }, + { + "name": "750fx_v1.0-powerpc64-cpu", + "parent": "750fx-family-powerpc64-cpu" + }, + { + "name": "pnv-phb4-root-port", + "parent": "pcie-root-port-base" + }, + { + "name": "ne2k_isa", + "parent": "isa-device" + }, + { + "name": "throttle-group", + "parent": "object" + }, + { + "name": "405gpr-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "mpc8541e_v11-powerpc64-cpu", + "parent": "e500v1-family-powerpc64-cpu" + }, + { + "name": "pnv-phb4-pec", + "parent": "device" + }, + { + "name": "604-powerpc64-cpu", + "parent": "604-family-powerpc64-cpu" + }, + { + "name": "750fx_v2.3-powerpc64-cpu", + "parent": "750fx-family-powerpc64-cpu" + }, + { + "name": "virtio-scsi-device", + "parent": "virtio-scsi-common" + }, + { + "name": "xlnx.xps-timer", + "parent": "sys-bus-device" + }, + { + "name": "750cl_v2.0-powerpc64-cpu", + "parent": "750cl-family-powerpc64-cpu" + }, + { + "name": "ich9-ahci", + "parent": "pci-device" + }, + { + "name": "powernv10-machine", + "parent": "powernv-machine" + }, + { + "name": "e500v2_v10-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "7410_v1.1-powerpc64-cpu", + "parent": "7410-family-powerpc64-cpu" + }, + { + "name": "qio-net-listener", + "parent": "object" + }, + { + "name": "vhost-user-backend", + "parent": "object" + }, + { + "name": "ide-hd", + "parent": "ide-device" + }, + { + "name": "guest-loader", + "parent": "device" + }, + { + "name": "e1000-82545em", + "parent": "e1000-base" + }, + { + "name": "power10_v2.0-pnv-chip", + "parent": "pnv10-chip" + }, + { + "name": "e1000e", + "parent": "pci-device" + }, + { + "name": "isa-ide", + "parent": "isa-device" + }, + { + "name": "nec-usb-xhci", + "parent": "pci-xhci" + }, + { + "name": "7441_v2.1-powerpc64-cpu", + "parent": "7440-family-powerpc64-cpu" + }, + { + "name": "mpc8347p-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "cirrus-vga", + "parent": "pci-device" + }, + { + "name": "powernv8-machine", + "parent": "powernv-machine" + }, + { + "name": "603-powerpc64-cpu", + "parent": "603-family-powerpc64-cpu" + }, + { + "name": "mpc8567-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "virtio-scsi-pci", + "parent": "virtio-scsi-pci-base" + }, + { + "name": "7400_v1.1-powerpc64-cpu", + "parent": "7400-family-powerpc64-cpu" + }, + { + "name": "mpc8541e_v10-powerpc64-cpu", + "parent": "e500v1-family-powerpc64-cpu" + }, + { + "name": "vt8231-pm", + "parent": "via-pm" + }, + { + "name": "ics", + "parent": "device" + }, + { + "name": "icp", + "parent": "device" + }, + { + "name": "npe405l-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "piix3-usb-uhci", + "parent": "pci-uhci-usb" + }, + { + "name": "e500-spin", + "parent": "sys-bus-device" + }, + { + "name": "virtio-serial-pci", + "parent": "virtio-serial-pci-base" + }, + { + "name": "filter-rewriter", + "parent": "netfilter" + }, + { + "name": "virtio-rng-pci-transitional", + "parent": "virtio-rng-pci-base" + }, + { + "name": "mpc8347at-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "spapr-vio-bus", + "parent": "bus" + }, + { + "name": "g2ls-powerpc64-cpu", + "parent": "G2-family-powerpc64-cpu" + }, + { + "name": "ppc460ex-pcie-host", + "parent": "pcie-host-bridge" + }, + { + "name": "scsi-hd", + "parent": "scsi-disk-base" + }, + { + "name": "PIIX4_PM", + "parent": "pci-device" + }, + { + "name": "mpc8540_v21-powerpc64-cpu", + "parent": "e500v1-family-powerpc64-cpu" + }, + { + "name": "i82559er", + "parent": "pci-device" + }, + { + "name": "405ep-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "603e_v3-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "7455_v2.1-powerpc64-cpu", + "parent": "7455-family-powerpc64-cpu" + }, + { + "name": "750cxe_v2.4-powerpc64-cpu", + "parent": "750cx-family-powerpc64-cpu" + }, + { + "name": "isa-ipmi-bt", + "parent": "isa-device" + }, + { + "name": "cryptodev-backend", + "parent": "object" + }, + { + "name": "power9_v2.0-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "603e_v1.4-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "7455_v3.4-powerpc64-cpu", + "parent": "7455-family-powerpc64-cpu" + }, + { + "name": "System", + "parent": "bus" + }, + { + "name": "7400_v1.0-powerpc64-cpu", + "parent": "7400-family-powerpc64-cpu" + }, + { + "name": "pnv10-chip", + "parent": "pnv-chip" + }, + { + "name": "i2c-ddc", + "parent": "i2c-slave" + }, + { + "name": "macio-nvram", + "parent": "sys-bus-device" + }, + { + "name": "clock", + "parent": "object" + }, + { + "name": "601_v2-powerpc64-cpu", + "parent": "601v-family-powerpc64-cpu" + }, + { + "name": "g2hip4-powerpc64-cpu", + "parent": "G2-family-powerpc64-cpu" + }, + { + "name": "7445_v2.1-powerpc64-cpu", + "parent": "7445-family-powerpc64-cpu" + }, + { + "name": "power10_v2.0-powernv-cpu-core", + "parent": "powernv-cpu-core" + }, + { + "name": "fusbh200-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "power8_v2.0-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "7445_v3.4-powerpc64-cpu", + "parent": "7445-family-powerpc64-cpu" + }, + { + "name": "vhost-user-blk-pci-non-transitional", + "parent": "vhost-user-blk-pci-base" + }, + { + "name": "hda-micro", + "parent": "hda-audio" + }, + { + "name": "pnv-homer-POWER9", + "parent": "pnv-homer" + }, + { + "name": "pnv-homer-POWER8", + "parent": "pnv-homer" + }, + { + "name": "pseries-4.1-machine", + "parent": "spapr-machine" + }, + { + "name": "7450_v2.1-powerpc64-cpu", + "parent": "7450-family-powerpc64-cpu" + }, + { + "name": "vt82c686b-superio", + "parent": "via-superio" + }, + { + "name": "mpc8377e-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "mpc8540_v20-powerpc64-cpu", + "parent": "e500v1-family-powerpc64-cpu" + }, + { + "name": "megasas", + "parent": "megasas-base" + }, + { + "name": "chardev-stdio", + "parent": "chardev-fd" + }, + { + "name": "spapr-drc-cpu", + "parent": "spapr-drc-logical" + }, + { + "name": "750cx_v2.2-powerpc64-cpu", + "parent": "750cx-family-powerpc64-cpu" + }, + { + "name": "mpc8544ds-machine", + "parent": "ppce500-base-machine" + }, + { + "name": "tls-creds-anon", + "parent": "tls-creds" + }, + { + "name": "mpc8568e-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "mpc8560_v10-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "serial", + "parent": "device" + }, + { + "name": "memory-backend-ram", + "parent": "memory-backend" + }, + { + "name": "755_v2.3-powerpc64-cpu", + "parent": "755-family-powerpc64-cpu" + }, + { + "name": "mac-dbdma", + "parent": "sys-bus-device" + }, + { + "name": "qio-channel-command", + "parent": "qio-channel" + }, + { + "name": "ide-cd", + "parent": "ide-device" + }, + { + "name": "SCSI", + "parent": "bus" + }, + { + "name": "via-ac97", + "parent": "pci-device" + }, + { + "name": "uni-north-agp-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "405crc-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "pnv-phb4-pec-stack", + "parent": "device" + }, + { + "name": "virtconsole", + "parent": "virtserialport" + }, + { + "name": "loader", + "parent": "device" + }, + { + "name": "g2hip3-powerpc64-cpu", + "parent": "G2-family-powerpc64-cpu" + }, + { + "name": "sb16", + "parent": "isa-device" + }, + { + "name": "power8_v2.0-powerpc64-cpu", + "parent": "POWER8-family-powerpc64-cpu" + }, + { + "name": "virtio-rng-pci-non-transitional", + "parent": "virtio-rng-pci-base" + }, + { + "name": "7450_v2.0-powerpc64-cpu", + "parent": "7450-family-powerpc64-cpu" + }, + { + "name": "cuda", + "parent": "sys-bus-device" + }, + { + "name": "secret_keyring", + "parent": "secret_common" + }, + { + "name": "e500_v20-powerpc64-cpu", + "parent": "e500v1-family-powerpc64-cpu" + }, + { + "name": "e6500-powerpc64-cpu", + "parent": "e6500-family-powerpc64-cpu" + }, + { + "name": "vhost-user-input-pci", + "parent": "vhost-user-input-pci-base-type" + }, + { + "name": "750cx_v2.1-powerpc64-cpu", + "parent": "750cx-family-powerpc64-cpu" + }, + { + "name": "chardev-serial", + "parent": "chardev-fd" + }, + { + "name": "e500v2_v22-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "pseries-6.0-machine", + "parent": "spapr-machine" + }, + { + "name": "ich9-usb-ehci2", + "parent": "pci-ehci-usb" + }, + { + "name": "ich9-usb-ehci1", + "parent": "pci-ehci-usb" + }, + { + "name": "pseries-2.4-machine", + "parent": "spapr-machine" + }, + { + "name": "pr-manager-helper", + "parent": "pr-manager" + }, + { + "name": "755_v2.2-powerpc64-cpu", + "parent": "755-family-powerpc64-cpu" + }, + { + "name": "pseries-2.10-machine", + "parent": "spapr-machine" + }, + { + "name": "remote-pcihost", + "parent": "pcie-host-bridge" + }, + { + "name": "mpc8347et-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "scsi-cd", + "parent": "scsi-disk-base" + }, + { + "name": "405crb-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "uni-north-agp", + "parent": "pci-device" + }, + { + "name": "pvscsi", + "parent": "pci-device" + }, + { + "name": "vmxnet3", + "parent": "pci-device" + }, + { + "name": "PCIE", + "parent": "PCI" + }, + { + "name": "taihu-machine", + "parent": "machine" + }, + { + "name": "nvme-subsys", + "parent": "device" + }, + { + "name": "power8nvl_v1.0-powernv-cpu-core", + "parent": "powernv-cpu-core" + }, + { + "name": "745_v2.2-powerpc64-cpu", + "parent": "745-family-powerpc64-cpu" + }, + { + "name": "vhost-vsock-pci-non-transitional", + "parent": "vhost-vsock-pci-base" + }, + { + "name": "pcnet", + "parent": "pci-device" + }, + { + "name": "mptsas1068", + "parent": "pci-device" + }, + { + "name": "dec-21154-sysbus", + "parent": "pci-host-bridge" + }, + { + "name": "750_v2.2-powerpc64-cpu", + "parent": "750-family-powerpc64-cpu" + }, + { + "name": "virtio-mouse-device", + "parent": "virtio-input-hid-device" + }, + { + "name": "vhost-user-input", + "parent": "virtio-input-device" + }, + { + "name": "heathrow", + "parent": "sys-bus-device" + }, + { + "name": "chardev-msmouse", + "parent": "chardev" + }, + { + "name": "vt82c686b-usb-uhci", + "parent": "pci-uhci-usb" + }, + { + "name": "e500v2_v21-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "mpc603-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "cs4231a", + "parent": "isa-device" + }, + { + "name": "edu", + "parent": "pci-device" + }, + { + "name": "755_v2.1-powerpc64-cpu", + "parent": "755-family-powerpc64-cpu" + }, + { + "name": "i6300esb", + "parent": "pci-device" + }, + { + "name": "ivshmem-doorbell", + "parent": "ivshmem-common" + }, + { + "name": "sysbus-ohci", + "parent": "sys-bus-device" + }, + { + "name": "chardev-socket", + "parent": "chardev" + }, + { + "name": "apple-desktop-bus", + "parent": "bus" + }, + { + "name": "740_v2.2-powerpc64-cpu", + "parent": "740-family-powerpc64-cpu" + }, + { + "name": "mv64361-pcibridge", + "parent": "pci-device" + }, + { + "name": "g2h4-powerpc64-cpu", + "parent": "G2-family-powerpc64-cpu" + }, + { + "name": "pseries-2.1-machine", + "parent": "spapr-machine" + }, + { + "name": "bamboo-machine", + "parent": "machine" + }, + { + "name": "745_v2.1-powerpc64-cpu", + "parent": "745-family-powerpc64-cpu" + }, + { + "name": "i82801", + "parent": "pci-device" + }, + { + "name": "isabus-bridge", + "parent": "sys-bus-device" + }, + { + "name": "virtio-balloon-pci-transitional", + "parent": "virtio-balloon-pci-base" + }, + { + "name": "750_v2.1-powerpc64-cpu", + "parent": "750-family-powerpc64-cpu" + }, + { + "name": "power8_v2.0-powernv-cpu-core", + "parent": "powernv-cpu-core" + }, + { + "name": "740p-powerpc64-cpu", + "parent": "740-family-powerpc64-cpu" + }, + { + "name": "mpc5200_v11-powerpc64-cpu", + "parent": "G2LE-family-powerpc64-cpu" + }, + { + "name": "spapr-nvram", + "parent": "vio-spapr-device" + }, + { + "name": "vhost-scsi", + "parent": "vhost-scsi-common" + }, + { + "name": "mpc8555_v11-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "750l_v3.2-powerpc64-cpu", + "parent": "750-family-powerpc64-cpu" + }, + { + "name": "HDA", + "parent": "bus" + }, + { + "name": "pnv-lpc-POWER10", + "parent": "pnv-lpc-POWER9" + }, + { + "name": "vhost-user-gpu", + "parent": "virtio-gpu-base" + }, + { + "name": "7448_v2.1-powerpc64-cpu", + "parent": "7400-family-powerpc64-cpu" + }, + { + "name": "pci-bridge", + "parent": "base-pci-bridge" + }, + { + "name": "uni-north-pci", + "parent": "pci-device" + }, + { + "name": "usb-hub", + "parent": "usb-device" + }, + { + "name": "vhost-scsi-pci-non-transitional", + "parent": "vhost-scsi-pci-base" + }, + { + "name": "virtio-serial-pci-transitional", + "parent": "virtio-serial-pci-base" + }, + { + "name": "e1000", + "parent": "e1000-base" + }, + { + "name": "i8257", + "parent": "isa-device" + }, + { + "name": "740_v2.1-powerpc64-cpu", + "parent": "740-family-powerpc64-cpu" + }, + { + "name": "x-remote-object", + "parent": "object" + }, + { + "name": "isa-pit", + "parent": "pit-common" + }, + { + "name": "e300c3-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "virtio-crypto-pci", + "parent": "virtio-crypto-pci-base-type" + }, + { + "name": "pnv-phb4-root", + "parent": "PCIE" + }, + { + "name": "ctucan_pci", + "parent": "pci-device" + }, + { + "name": "vhost-user-rng-pci", + "parent": "vhost-user-rng-pci-base" + }, + { + "name": "e500mc-powerpc64-cpu", + "parent": "e500mc-family-powerpc64-cpu" + }, + { + "name": "745_v2.0-powerpc64-cpu", + "parent": "745-family-powerpc64-cpu" + }, + { + "name": "mpc8533e_v11-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "power8e_v2.1-pnv-chip", + "parent": "pnv8-chip" + }, + { + "name": "authz-list-file", + "parent": "authz" + }, + { + "name": "7400_v2.9-powerpc64-cpu", + "parent": "7400-family-powerpc64-cpu" + }, + { + "name": "pnv-phb3-root-port", + "parent": "pcie-root-port-base" + }, + { + "name": "tpm-passthrough", + "parent": "tpm-backend" + }, + { + "name": "tls-creds-x509", + "parent": "tls-creds" + }, + { + "name": "sii3112", + "parent": "pci-ide" + }, + { + "name": "pcm3680_pci", + "parent": "pci-device" + }, + { + "name": "pseries-4.0-machine", + "parent": "spapr-machine" + }, + { + "name": "pnv9-chip", + "parent": "pnv-chip" + }, + { + "name": "mpc5200_v10-powerpc64-cpu", + "parent": "G2LE-family-powerpc64-cpu" + }, + { + "name": "ich9-usb-uhci6", + "parent": "pci-uhci-usb" + }, + { + "name": "vhost-scsi-pci", + "parent": "vhost-scsi-pci-base" + }, + { + "name": "mv64361", + "parent": "sys-bus-device" + }, + { + "name": "ich9-usb-uhci5", + "parent": "pci-uhci-usb" + }, + { + "name": "ich9-usb-uhci4", + "parent": "pci-uhci-usb" + }, + { + "name": "ich9-usb-uhci3", + "parent": "pci-uhci-usb" + }, + { + "name": "ich9-usb-uhci2", + "parent": "pci-uhci-usb" + }, + { + "name": "ich9-usb-uhci1", + "parent": "pci-uhci-usb" + }, + { + "name": "7448_v2.0-powerpc64-cpu", + "parent": "7400-family-powerpc64-cpu" + }, + { + "name": "tls-cipher-suites", + "parent": "tls-creds" + }, + { + "name": "chardev-wctablet", + "parent": "chardev" + }, + { + "name": "virtio-serial-bus", + "parent": "bus" + }, + { + "name": "virtio-gpu-pci", + "parent": "virtio-gpu-pci-base-type" + }, + { + "name": "phb3-msi", + "parent": "ics" + }, + { + "name": "power5+_v2.1-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "virtio-gpu-device", + "parent": "virtio-gpu-base" + }, + { + "name": "mpc8540_v10-powerpc64-cpu", + "parent": "e500v1-family-powerpc64-cpu" + }, + { + "name": "750gl-powerpc64-cpu", + "parent": "750gx-family-powerpc64-cpu" + }, + { + "name": "e300c2-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "740e-powerpc64-cpu", + "parent": "740-family-powerpc64-cpu" + }, + { + "name": "usb-tablet", + "parent": "usb-hid" + }, + { + "name": "tcg-accel", + "parent": "accel" + }, + { + "name": "7400_v2.8-powerpc64-cpu", + "parent": "7400-family-powerpc64-cpu" + }, + { + "name": "virtio-keyboard-device", + "parent": "virtio-input-hid-device" + }, + { + "name": "sd-bus", + "parent": "bus" + }, + { + "name": "usb-ccid", + "parent": "usb-device" + }, + { + "name": "pseries-7.0-machine", + "parent": "spapr-machine" + }, + { + "name": "uni-north-pci-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "604e_v2.2-powerpc64-cpu", + "parent": "604E-family-powerpc64-cpu" + }, + { + "name": "usb-net", + "parent": "usb-device" + }, + { + "name": "uni-north", + "parent": "sys-bus-device" + }, + { + "name": "host-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "mpc8567e-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "vmware-svga", + "parent": "pci-device" + }, + { + "name": "x-remote-machine", + "parent": "machine" + }, + { + "name": "filter-redirector", + "parent": "netfilter" + }, + { + "name": "memory-backend-file", + "parent": "memory-backend" + }, + { + "name": "7410_v1.4-powerpc64-cpu", + "parent": "7410-family-powerpc64-cpu" + }, + { + "name": "970fx_v2.1-powerpc64-cpu", + "parent": "970-family-powerpc64-cpu" + }, + { + "name": "grackle-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "nvdimm", + "parent": "pc-dimm" + }, + { + "name": "virtio-pci-bus", + "parent": "virtio-bus" + }, + { + "name": "pnv-psi-POWER9", + "parent": "pnv-psi" + }, + { + "name": "pnv-psi-POWER8", + "parent": "pnv-psi" + }, + { + "name": "603e_v2.2-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "ES1370", + "parent": "pci-device" + }, + { + "name": "rng-builtin", + "parent": "rng-backend" + }, + { + "name": "memory-region", + "parent": "object" + }, + { + "name": "npcm7xx-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "e500_v10-powerpc64-cpu", + "parent": "e500v1-family-powerpc64-cpu" + }, + { + "name": "pseries-2.8-machine", + "parent": "spapr-machine" + }, + { + "name": "qio-channel-socket", + "parent": "qio-channel" + }, + { + "name": "vhost-user-i2c-pci", + "parent": "vhost-user-i2c-pci-base" + }, + { + "name": "pvpanic-pci", + "parent": "pci-device" + }, + { + "name": "7400_v2.7-powerpc64-cpu", + "parent": "7400-family-powerpc64-cpu" + }, + { + "name": "7451_v2.3-powerpc64-cpu", + "parent": "7450-family-powerpc64-cpu" + }, + { + "name": "7410_v1.3-powerpc64-cpu", + "parent": "7410-family-powerpc64-cpu" + }, + { + "name": "750cxe_v3.1-powerpc64-cpu", + "parent": "750cx-family-powerpc64-cpu" + }, + { + "name": "spapr-drc-phb", + "parent": "spapr-drc-logical" + }, + { + "name": "virtio-rng-pci", + "parent": "virtio-rng-pci-base" + }, + { + "name": "i8042", + "parent": "isa-device" + }, + { + "name": "mpc8541_v11-powerpc64-cpu", + "parent": "e500v1-family-powerpc64-cpu" + }, + { + "name": "virtio-crypto-device", + "parent": "virtio-device" + }, + { + "name": "dec-21154-p2p-bridge", + "parent": "base-pci-bridge" + }, + { + "name": "eTSEC", + "parent": "sys-bus-device" + }, + { + "name": "spapr-iommu-memory-region", + "parent": "iommu-memory-region" + }, + { + "name": "7441_v2.3-powerpc64-cpu", + "parent": "7440-family-powerpc64-cpu" + }, + { + "name": "usb-audio", + "parent": "usb-device" + }, + { + "name": "g2legp1-powerpc64-cpu", + "parent": "G2LE-family-powerpc64-cpu" + }, + { + "name": "power5+_v2.1-powerpc64-cpu", + "parent": "POWER5P-family-powerpc64-cpu" + }, + { + "name": "ppc440-pcix-host", + "parent": "pci-host-bridge" + }, + { + "name": "603e7-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "spapr-vty", + "parent": "vio-spapr-device" + }, + { + "name": "virtio-tablet-pci", + "parent": "virtio-tablet-pci-base-type" + }, + { + "name": "intel-hda", + "parent": "intel-hda-generic" + }, + { + "name": "chardev-memory", + "parent": "chardev-ringbuf" + }, + { + "name": "accel", + "parent": "object" + }, + { + "name": "vhost-user-blk-pci-transitional", + "parent": "vhost-user-blk-pci-base" + }, + { + "name": "pnv-occ-POWER9", + "parent": "pnv-occ" + }, + { + "name": "pnv-occ-POWER8", + "parent": "pnv-occ" + }, + { + "name": "750cxe_v3.0-powerpc64-cpu", + "parent": "750cx-family-powerpc64-cpu" + }, + { + "name": "7455_v1.0-powerpc64-cpu", + "parent": "7455-family-powerpc64-cpu" + }, + { + "name": "mpc8541_v10-powerpc64-cpu", + "parent": "e500v1-family-powerpc64-cpu" + }, + { + "name": "mpc8xxx_gpio", + "parent": "sys-bus-device" + }, + { + "name": "uni-north-internal-pci", + "parent": "pci-device" + }, + { + "name": "chardev-null", + "parent": "chardev" + }, + { + "name": "sysbus-esp", + "parent": "sys-bus-device" + }, + { + "name": "generic-sdhci", + "parent": "sys-bus-device" + }, + { + "name": "g2-powerpc64-cpu", + "parent": "G2-family-powerpc64-cpu" + }, + { + "name": "mpc8343ea-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "virtio-iommu-memory-region", + "parent": "iommu-memory-region" + }, + { + "name": "mpc8568-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "e5500-powerpc64-cpu", + "parent": "e5500-family-powerpc64-cpu" + }, + { + "name": "755_v2.6-powerpc64-cpu", + "parent": "755-family-powerpc64-cpu" + }, + { + "name": "pseries-5.0-machine", + "parent": "spapr-machine" + }, + { + "name": "virtio-net-pci-non-transitional", + "parent": "virtio-net-pci-base" + }, + { + "name": "mpc8543_v20-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "vhost-user-vsock-pci", + "parent": "vhost-user-vsock-pci-base" + }, + { + "name": "vhost-user-vga", + "parent": "vhost-user-vga-base-type" + }, + { + "name": "7450_v1.0-powerpc64-cpu", + "parent": "7450-family-powerpc64-cpu" + }, + { + "name": "chardev-mux", + "parent": "chardev" + }, + { + "name": "spapr-drc-lmb", + "parent": "spapr-drc-logical" + }, + { + "name": "qtest-accel", + "parent": "accel" + }, + { + "name": "chardev-udp", + "parent": "chardev" + }, + { + "name": "vhost-user-scsi-pci", + "parent": "vhost-user-scsi-pci-base" + }, + { + "name": "ds1338", + "parent": "i2c-slave" + }, + { + "name": "power7+_v2.1-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "virtio-keyboard-pci", + "parent": "virtio-keyboard-pci-base-type" + }, + { + "name": "603e_v4-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "vhost-user-rng", + "parent": "virtio-device" + }, + { + "name": "mpc8548_v21-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "e500-host-bridge", + "parent": "pci-device" + }, + { + "name": "755_v2.5-powerpc64-cpu", + "parent": "755-family-powerpc64-cpu" + }, + { + "name": "spapr-vlan", + "parent": "vio-spapr-device" + }, + { + "name": "filter-dump", + "parent": "netfilter" + }, + { + "name": "spapr-drc-pci", + "parent": "spapr-drc-physical" + }, + { + "name": "xlnx.xps-uartlite", + "parent": "sys-bus-device" + }, + { + "name": "7447a_v1.0-powerpc64-cpu", + "parent": "7445-family-powerpc64-cpu" + }, + { + "name": "power9_v2.0-powerpc64-cpu", + "parent": "POWER9-family-powerpc64-cpu" + }, + { + "name": "mioe3680_pci", + "parent": "pci-device" + }, + { + "name": "mpc8349-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "ib700", + "parent": "isa-device" + }, + { + "name": "pci-testdev", + "parent": "pci-device" + }, + { + "name": "serial-mm", + "parent": "sys-bus-device" + }, + { + "name": "pnv-pnor", + "parent": "sys-bus-device" + }, + { + "name": "745_v2.5-powerpc64-cpu", + "parent": "745-family-powerpc64-cpu" + }, + { + "name": "sm501", + "parent": "pci-device" + }, + { + "name": "750cx_v1.0-powerpc64-cpu", + "parent": "750cx-family-powerpc64-cpu" + }, + { + "name": "spapr-xive", + "parent": "xive-router" + }, + { + "name": "ipmi-bmc-extern", + "parent": "ipmi-bmc" + }, + { + "name": "usb-mouse", + "parent": "usb-hid" + }, + { + "name": "power8_v2.0-pnv-chip", + "parent": "pnv8-chip" + }, + { + "name": "vfio-platform", + "parent": "sys-bus-device" + }, + { + "name": "vt82c686b-isa", + "parent": "via-isa" + }, + { + "name": "pci-ohci", + "parent": "pci-device" + }, + { + "name": "none-machine", + "parent": "machine" + }, + { + "name": "secondary-vga", + "parent": "pci-vga" + }, + { + "name": "750fl-powerpc64-cpu", + "parent": "750fx-family-powerpc64-cpu" + }, + { + "name": "755_v1.1-powerpc64-cpu", + "parent": "755-family-powerpc64-cpu" + }, + { + "name": "at24c-eeprom", + "parent": "i2c-slave" + }, + { + "name": "mpc8548_v20-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "755_v2.4-powerpc64-cpu", + "parent": "755-family-powerpc64-cpu" + }, + { + "name": "usb-bus", + "parent": "bus" + }, + { + "name": "dbus-vmstate", + "parent": "object" + }, + { + "name": "g2legp-powerpc64-cpu", + "parent": "G2LE-family-powerpc64-cpu" + }, + { + "name": "macio-ide", + "parent": "sys-bus-device" + }, + { + "name": "mpc8572-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "IndustryPack", + "parent": "bus" + }, + { + "name": "fw_cfg_io", + "parent": "fw_cfg" + }, + { + "name": "input-linux", + "parent": "object" + }, + { + "name": "pseries-2.7-machine", + "parent": "spapr-machine" + }, + { + "name": "603e7t-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "745_v1.1-powerpc64-cpu", + "parent": "745-family-powerpc64-cpu" + }, + { + "name": "mv64361-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "nvme-bus", + "parent": "bus" + }, + { + "name": "platform-bus-device", + "parent": "sys-bus-device" + }, + { + "name": "m41t80", + "parent": "i2c-slave" + }, + { + "name": "sysbus-sm501", + "parent": "sys-bus-device" + }, + { + "name": "hda-duplex", + "parent": "hda-audio" + }, + { + "name": "745_v2.4-powerpc64-cpu", + "parent": "745-family-powerpc64-cpu" + }, + { + "name": "power10_v2.0-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "scsi-block", + "parent": "scsi-disk-base" + }, + { + "name": "npe405h2-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "power7_v2.3-powerpc64-cpu", + "parent": "POWER7-family-powerpc64-cpu" + }, + { + "name": "pnv-icp", + "parent": "icp" + }, + { + "name": "scsi-generic", + "parent": "scsi-device" + }, + { + "name": "ISA", + "parent": "bus" + }, + { + "name": "755_v1.0-powerpc64-cpu", + "parent": "755-family-powerpc64-cpu" + }, + { + "name": "usb-ehci", + "parent": "pci-ehci-usb" + }, + { + "name": "7448_v1.1-powerpc64-cpu", + "parent": "7400-family-powerpc64-cpu" + }, + { + "name": "virtio-input-host-pci", + "parent": "virtio-input-host-pci-base-type" + }, + { + "name": "chardev-pipe", + "parent": "chardev-fd" + }, + { + "name": "rng-egd", + "parent": "rng-backend" + }, + { + "name": "pseries-3.0-machine", + "parent": "spapr-machine" + }, + { + "name": "virtex-ml507-machine", + "parent": "machine" + }, + { + "name": "xive-source", + "parent": "device" + }, + { + "name": "megasas-gen2", + "parent": "megasas-base" + }, + { + "name": "pegasos2-machine", + "parent": "machine" + }, + { + "name": "mpc8544-guts", + "parent": "sys-bus-device" + }, + { + "name": "ati-vga", + "parent": "pci-device" + }, + { + "name": "tulip", + "parent": "pci-device" + }, + { + "name": "i82801b11-bridge", + "parent": "base-pci-bridge" + }, + { + "name": "745_v1.0-powerpc64-cpu", + "parent": "745-family-powerpc64-cpu" + }, + { + "name": "745_v2.3-powerpc64-cpu", + "parent": "745-family-powerpc64-cpu" + }, + { + "name": "vhost-user-blk-pci", + "parent": "vhost-user-blk-pci-base" + }, + { + "name": "750_v1.0-powerpc64-cpu", + "parent": "750-family-powerpc64-cpu" + }, + { + "name": "ppc4xx-i2c", + "parent": "sys-bus-device" + }, + { + "name": "7457_v1.2-powerpc64-cpu", + "parent": "7455-family-powerpc64-cpu" + }, + { + "name": "pnv-lpc-POWER9", + "parent": "pnv-lpc" + }, + { + "name": "pnv-lpc-POWER8", + "parent": "pnv-lpc" + }, + { + "name": "virtio-rng-device", + "parent": "virtio-device" + }, + { + "name": "macio-oldworld", + "parent": "macio" + }, + { + "name": "xlnx.xps-intc", + "parent": "sys-bus-device" + }, + { + "name": "s3c-sdhci", + "parent": "generic-sdhci" + }, + { + "name": "750l_v2.1-powerpc64-cpu", + "parent": "750-family-powerpc64-cpu" + }, + { + "name": "7448_v1.0-powerpc64-cpu", + "parent": "7400-family-powerpc64-cpu" + }, + { + "name": "spapr-rtc", + "parent": "device" + }, + { + "name": "spapr-vio-bridge", + "parent": "sys-bus-device" + }, + { + "name": "qio-channel-tls", + "parent": "qio-channel" + }, + { + "name": "fdc37m81x-superio", + "parent": "isa-superio" + }, + { + "name": "740_v1.0-powerpc64-cpu", + "parent": "740-family-powerpc64-cpu" + }, + { + "name": "virtio-iommu-pci", + "parent": "virtio-iommu-pci-base-type" + }, + { + "name": "virtio-vga", + "parent": "virtio-vga-base-type" + }, + { + "name": "vhost-user-i2c-device", + "parent": "virtio-device" + }, + { + "name": "750fx_v2.0-powerpc64-cpu", + "parent": "750fx-family-powerpc64-cpu" + }, + { + "name": "virtio-serial-device", + "parent": "virtio-device" + }, + { + "name": "e600-powerpc64-cpu", + "parent": "e600-family-powerpc64-cpu" + }, + { + "name": "platform-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "migration", + "parent": "device" + }, + { + "name": "7457_v1.1-powerpc64-cpu", + "parent": "7455-family-powerpc64-cpu" + }, + { + "name": "mpc8347eap-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "host-powerpc64-cpu", + "parent": "POWER9-family-powerpc64-cpu" + }, + { + "name": "mpc8343a-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "750l_v2.0-powerpc64-cpu", + "parent": "750-family-powerpc64-cpu" + }, + { + "name": "mpc5200_v12-powerpc64-cpu", + "parent": "G2LE-family-powerpc64-cpu" + }, + { + "name": "ics-spapr", + "parent": "ics" + }, + { + "name": "power8e_v2.1-powerpc64-cpu", + "parent": "POWER8-family-powerpc64-cpu" + }, + { + "name": "u3-agp", + "parent": "pci-device" + }, + { + "name": "mpc8543_v10-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "cryptodev-backend-builtin", + "parent": "cryptodev-backend" + }, + { + "name": "7447_v1.1-powerpc64-cpu", + "parent": "7445-family-powerpc64-cpu" + }, + { + "name": "qtest", + "parent": "object" + }, + { + "name": "usb-bot", + "parent": "usb-storage-dev" + }, + { + "name": "603e7v2-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "mpc-i2c", + "parent": "sys-bus-device" + }, + { + "name": "cfi.pflash02", + "parent": "sys-bus-device" + }, + { + "name": "cfi.pflash01", + "parent": "sys-bus-device" + }, + { + "name": "nvme-ns", + "parent": "device" + }, + { + "name": "floppy", + "parent": "device" + }, + { + "name": "e300c4-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "rng-random", + "parent": "rng-backend" + }, + { + "name": "chardev-ringbuf", + "parent": "chardev" + }, + { + "name": "7457_v1.0-powerpc64-cpu", + "parent": "7455-family-powerpc64-cpu" + }, + { + "name": "604e_v2.4-powerpc64-cpu", + "parent": "604E-family-powerpc64-cpu" + }, + { + "name": "isa-parallel", + "parent": "isa-device" + }, + { + "name": "970fx_v1.0-powerpc64-cpu", + "parent": "970-family-powerpc64-cpu" + }, + { + "name": "mpc8548_v11-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "npe4gs3-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "603e_v1.1-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "603e_v4.1-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "virtio-blk-pci", + "parent": "virtio-blk-pci-base" + }, + { + "name": "power8nvl_v1.0-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "7447_v1.0-powerpc64-cpu", + "parent": "7445-family-powerpc64-cpu" + }, + { + "name": "imx-usdhc", + "parent": "generic-sdhci" + }, + { + "name": "603e7v1-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "7400_v2.0-powerpc64-cpu", + "parent": "7400-family-powerpc64-cpu" + }, + { + "name": "ne2k_pci", + "parent": "pci-device" + }, + { + "name": "vhost-scsi-pci-transitional", + "parent": "vhost-scsi-pci-base" + }, + { + "name": "7457a_v1.2-powerpc64-cpu", + "parent": "7455-family-powerpc64-cpu" + }, + { + "name": "604e_v1.0-powerpc64-cpu", + "parent": "604E-family-powerpc64-cpu" + }, + { + "name": "mpc8347ap-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "usb-storage", + "parent": "usb-storage-dev" + }, + { + "name": "raven-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "sam460ex-machine", + "parent": "machine" + }, + { + "name": "pseries-6.2-machine", + "parent": "spapr-machine" + }, + { + "name": "vhost-user-vsock-pci-non-transitional", + "parent": "vhost-user-vsock-pci-base" + }, + { + "name": "virtio-tablet-device", + "parent": "virtio-input-hid-device" + }, + { + "name": "e1000-82544gc", + "parent": "e1000-base" + }, + { + "name": "usb-mtp", + "parent": "usb-device" + }, + { + "name": "pseries-2.6-machine", + "parent": "spapr-machine" + }, + { + "name": "mpc8548_v10-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "colo-compare", + "parent": "object" + }, + { + "name": "rtl8139", + "parent": "pci-device" + }, + { + "name": "ppc4xx-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "spapr-rng", + "parent": "device" + }, + { + "name": "440-xilinx-powerpc64-cpu", + "parent": "440x5-family-powerpc64-cpu" + }, + { + "name": "grackle", + "parent": "pci-device" + }, + { + "name": "mpc8533_v10-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "mpc8347t-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "gpio_i2c", + "parent": "sys-bus-device" + }, + { + "name": "g2legp3-powerpc64-cpu", + "parent": "G2LE-family-powerpc64-cpu" + }, + { + "name": "7457a_v1.1-powerpc64-cpu", + "parent": "7455-family-powerpc64-cpu" + }, + { + "name": "vhost-vsock-pci", + "parent": "vhost-vsock-pci-base" + }, + { + "name": "750cl_v1.0-powerpc64-cpu", + "parent": "750cl-family-powerpc64-cpu" + }, + { + "name": "pci-serial-4x", + "parent": "pci-device" + }, + { + "name": "nvme", + "parent": "pci-device" + }, + { + "name": "spapr-tpm-proxy", + "parent": "device" + }, + { + "name": "stb25-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "vhost-vsock-device", + "parent": "vhost-vsock-common" + }, + { + "name": "g2gp-powerpc64-cpu", + "parent": "G2-family-powerpc64-cpu" + }, + { + "name": "mos6522-cuda", + "parent": "mos6522" + }, + { + "name": "usb-uas", + "parent": "usb-device" + }, + { + "name": "rocker", + "parent": "pci-device" + }, + { + "name": "qio-channel-buffer", + "parent": "qio-channel" + }, + { + "name": "sdhci-pci", + "parent": "pci-device" + }, + { + "name": "virtio-serial-pci-non-transitional", + "parent": "virtio-serial-pci-base" + }, + { + "name": "floppy-bus", + "parent": "bus" + }, + { + "name": "x-pci-proxy-dev", + "parent": "pci-device" + }, + { + "name": "pseries-2.3-machine", + "parent": "spapr-machine" + }, + { + "name": "authz-list", + "parent": "authz" + }, + { + "name": "mpc8349a-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "7457a_v1.0-powerpc64-cpu", + "parent": "7455-family-powerpc64-cpu" + }, + { + "name": "usb-braille", + "parent": "usb-serial-dev" + }, + { + "name": "or-irq", + "parent": "device" + }, + { + "name": "bochs-display", + "parent": "pci-device" + }, + { + "name": "isa-i8259", + "parent": "pic-common" + }, + { + "name": "power9_v1.0-powerpc64-cpu", + "parent": "POWER9-family-powerpc64-cpu" + }, + { + "name": "755_v2.8-powerpc64-cpu", + "parent": "755-family-powerpc64-cpu" + }, + { + "name": "pci-serial-2x", + "parent": "pci-device" + }, + { + "name": "iothread", + "parent": "object" + }, + { + "name": "secret", + "parent": "secret_common" + }, + { + "name": "u3-agp-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "xlnx.xps-ethernetlite", + "parent": "sys-bus-device" + }, + { + "name": "pseries-2.12-sxxm-machine", + "parent": "spapr-machine" + }, + { + "name": "power9_v1.0-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "stb03-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "405gpa-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "7450_v1.2-powerpc64-cpu", + "parent": "7450-family-powerpc64-cpu" + }, + { + "name": "adb-mouse", + "parent": "adb-device" + }, + { + "name": "chardev-vc", + "parent": "chardev" + }, + { + "name": "xive-end-source", + "parent": "device" + }, + { + "name": "pcie-pci-bridge", + "parent": "base-pci-bridge" + }, + { + "name": "am53c974", + "parent": "pci-device" + }, + { + "name": "ipoctal232", + "parent": "ipack-device" + }, + { + "name": "vt82c686b-pm", + "parent": "via-pm" + }, + { + "name": "745_v2.8-powerpc64-cpu", + "parent": "745-family-powerpc64-cpu" + }, + { + "name": "via-mc97", + "parent": "pci-device" + }, + { + "name": "qemu-xhci", + "parent": "pci-xhci" + }, + { + "name": "e200z6-powerpc64-cpu", + "parent": "e200-family-powerpc64-cpu" + }, + { + "name": "mpc8545e_v20-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "970mp_v1.1-powerpc64-cpu", + "parent": "970-family-powerpc64-cpu" + }, + { + "name": "755_v2.7-powerpc64-cpu", + "parent": "755-family-powerpc64-cpu" + }, + { + "name": "vhost-user-fs-device", + "parent": "virtio-device" + }, + { + "name": "mpc8543_v21-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "7447a_v1.2-powerpc64-cpu", + "parent": "7445-family-powerpc64-cpu" + }, + { + "name": "x2vp4-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "pseries-4.2-machine", + "parent": "spapr-machine" + }, + { + "name": "tegra2-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "7450_v1.1-powerpc64-cpu", + "parent": "7450-family-powerpc64-cpu" + }, + { + "name": "pnv-phb3-root", + "parent": "PCIE" + }, + { + "name": "isa-fdc", + "parent": "isa-device" + }, + { + "name": "40p-machine", + "parent": "machine" + }, + { + "name": "vt8231-isa", + "parent": "via-isa" + }, + { + "name": "750_v3.1-powerpc64-cpu", + "parent": "750-family-powerpc64-cpu" + }, + { + "name": "745_v2.7-powerpc64-cpu", + "parent": "745-family-powerpc64-cpu" + }, + { + "name": "750p-powerpc64-cpu", + "parent": "750-family-powerpc64-cpu" + }, + { + "name": "pnv8-chip", + "parent": "pnv-chip" + }, + { + "name": "e200z5-powerpc64-cpu", + "parent": "e200-family-powerpc64-cpu" + }, + { + "name": "mpc8641-powerpc64-cpu", + "parent": "e600-family-powerpc64-cpu" + }, + { + "name": "i82559c", + "parent": "pci-device" + }, + { + "name": "i82559b", + "parent": "pci-device" + }, + { + "name": "i82559a", + "parent": "pci-device" + }, + { + "name": "xio3130-downstream", + "parent": "pcie-slot" + }, + { + "name": "970mp_v1.0-powerpc64-cpu", + "parent": "970-family-powerpc64-cpu" + }, + { + "name": "sysbus-m48t59", + "parent": "sysbus-m48txx" + }, + { + "name": "740_v3.1-powerpc64-cpu", + "parent": "740-family-powerpc64-cpu" + }, + { + "name": "power7_v2.3-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "7447a_v1.1-powerpc64-cpu", + "parent": "7445-family-powerpc64-cpu" + }, + { + "name": "7445_v1.0-powerpc64-cpu", + "parent": "7445-family-powerpc64-cpu" + }, + { + "name": "IDE", + "parent": "bus" + }, + { + "name": "openpic", + "parent": "sys-bus-device" + }, + { + "name": "ccid-bus", + "parent": "bus" + }, + { + "name": "mpc8377-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "filter-mirror", + "parent": "netfilter" + }, + { + "name": "603e7v-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "i82558b", + "parent": "pci-device" + }, + { + "name": "i82558a", + "parent": "pci-device" + }, + { + "name": "power9_v2.0-powernv-cpu-core", + "parent": "powernv-cpu-core" + }, + { + "name": "VGA", + "parent": "pci-vga" + }, + { + "name": "750_v3.0-powerpc64-cpu", + "parent": "750-family-powerpc64-cpu" + }, + { + "name": "745_v2.6-powerpc64-cpu", + "parent": "745-family-powerpc64-cpu" + }, + { + "name": "pci-bridge-seat", + "parent": "pci-bridge" + }, + { + "name": "power9_v2.0-pnv-chip", + "parent": "pnv9-chip" + }, + { + "name": "ivshmem-plain", + "parent": "ivshmem-common" + }, + { + "name": "x3130-upstream", + "parent": "pcie-port" + }, + { + "name": "mpc5200b_v20-powerpc64-cpu", + "parent": "G2LE-family-powerpc64-cpu" + }, + { + "name": "440epa-powerpc64-cpu", + "parent": "440EP-family-powerpc64-cpu" + }, + { + "name": "virtio-blk-pci-non-transitional", + "parent": "virtio-blk-pci-base" + }, + { + "name": "i82557c", + "parent": "pci-device" + }, + { + "name": "i82557b", + "parent": "pci-device" + }, + { + "name": "i82557a", + "parent": "pci-device" + }, + { + "name": "740_v3.0-powerpc64-cpu", + "parent": "740-family-powerpc64-cpu" + }, + { + "name": "tpci200", + "parent": "pci-device" + }, + { + "name": "i82562", + "parent": "pci-device" + }, + { + "name": "xive-tctx", + "parent": "device" + }, + { + "name": "tls-creds-psk", + "parent": "tls-creds" + }, + { + "name": "750cxe_v3.1b-powerpc64-cpu", + "parent": "750cx-family-powerpc64-cpu" + }, + { + "name": "rs6000-mc", + "parent": "isa-device" + }, + { + "name": "750e-powerpc64-cpu", + "parent": "750-family-powerpc64-cpu" + }, + { + "name": "filter-replay", + "parent": "netfilter" + }, + { + "name": "mpc8349ea-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "vfio-pci-nohotplug", + "parent": "vfio-pci" + }, + { + "name": "ppc4xx-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "isa-pcspk", + "parent": "isa-device" + }, + { + "name": "virtio-balloon-pci", + "parent": "virtio-balloon-pci-base" + }, + { + "name": "405lp-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "mpc8548e_v21-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "sungem", + "parent": "pci-device" + }, + { + "name": "i82550", + "parent": "pci-device" + }, + { + "name": "power10_v2.0-powerpc64-cpu", + "parent": "POWER10-family-powerpc64-cpu" + }, + { + "name": "i82551", + "parent": "pci-device" + }, + { + "name": "virtio-net-pci-transitional", + "parent": "virtio-net-pci-base" + }, + { + "name": "970fx_v3.1-powerpc64-cpu", + "parent": "970-family-powerpc64-cpu" + }, + { + "name": "405d2-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "can-host-socketcan", + "parent": "can-host" + }, + { + "name": "prep-systemio", + "parent": "isa-device" + }, + { + "name": "mpc8555e_v11-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "virtio-input-host-device", + "parent": "virtio-input-device" + }, + { + "name": "kvaser_pci", + "parent": "pci-device" + }, + { + "name": "pseries-2.2-machine", + "parent": "spapr-machine" + }, + { + "name": "vhost-user-vsock-device", + "parent": "vhost-vsock-common" + }, + { + "name": "pef-guest", + "parent": "confidential-guest-support" + }, + { + "name": "powernv-cpu-quad", + "parent": "device" + }, + { + "name": "405ez-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "e500v2_v30-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "750fx_v2.2-powerpc64-cpu", + "parent": "750fx-family-powerpc64-cpu" + }, + { + "name": "e500-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "mos6522-pmu", + "parent": "mos6522" + }, + { + "name": "virtserialport", + "parent": "virtio-serial-port" + }, + { + "name": "mpc8543e_v21-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "dec-21154", + "parent": "pci-device" + }, + { + "name": "7410_v1.0-powerpc64-cpu", + "parent": "7410-family-powerpc64-cpu" + }, + { + "name": "imx.usbphy", + "parent": "sys-bus-device" + }, + { + "name": "mpc8641d-powerpc64-cpu", + "parent": "e600-family-powerpc64-cpu" + }, + { + "name": "mpc8548e_v20-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "i82378", + "parent": "pci-device" + }, + { + "name": "chardev-file", + "parent": "chardev-fd" + }, + { + "name": "i82374", + "parent": "isa-device" + }, + { + "name": "ref405ep-machine", + "parent": "machine" + }, + { + "name": "970fx_v3.0-powerpc64-cpu", + "parent": "970-family-powerpc64-cpu" + }, + { + "name": "virtio-iommu-device", + "parent": "virtio-device" + }, + { + "name": "lsi53c895a", + "parent": "pci-device" + }, + { + "name": "input-barrier", + "parent": "object" + }, + { + "name": "750l_v2.2-powerpc64-cpu", + "parent": "750-family-powerpc64-cpu" + }, + { + "name": "virtio-blk-device", + "parent": "virtio-device" + }, + { + "name": "sysbus-m48t08", + "parent": "sysbus-m48txx" + }, + { + "name": "pc-dimm", + "parent": "device" + }, + { + "name": "7451_v2.10-powerpc64-cpu", + "parent": "7450-family-powerpc64-cpu" + }, + { + "name": "pnv-phb4-iommu-memory-region", + "parent": "iommu-memory-region" + }, + { + "name": "pseries-5.2-machine", + "parent": "spapr-machine" + }, + { + "name": "sysbus-m48t02", + "parent": "sysbus-m48txx" + }, + { + "name": "virtio-scsi-pci-non-transitional", + "parent": "virtio-scsi-pci-base" + }, + { + "name": "mpc8555e_v10-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "602-powerpc64-cpu", + "parent": "602-family-powerpc64-cpu" + }, + { + "name": "vfio-pci", + "parent": "pci-device" + }, + { + "name": "750fx_v2.1-powerpc64-cpu", + "parent": "750fx-family-powerpc64-cpu" + }, + { + "name": "chardev-pty", + "parent": "chardev" + }, + { + "name": "vhost-user-scsi-pci-non-transitional", + "parent": "vhost-user-scsi-pci-base" + }, + { + "name": "pnv-psi-POWER10", + "parent": "pnv-psi-POWER9" + }, + { + "name": "mpc8543e_v20-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "sdhci-bus", + "parent": "sd-bus" + }, + { + "name": "pnv-phb3-iommu-memory-region", + "parent": "iommu-memory-region" + }, + { + "name": "smbus-eeprom", + "parent": "smbus-device" + }, + { + "name": "mpc8572e-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "vhost-user-scsi", + "parent": "vhost-scsi-common" + }, + { + "name": "virtio-net-pci", + "parent": "virtio-net-pci-base" + }, + { + "name": "kvm-accel", + "parent": "accel" + }, + { + "name": "mpc8547e_v21-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "sd-card", + "parent": "device" + }, + { + "name": "750cxe_v2.3-powerpc64-cpu", + "parent": "750cx-family-powerpc64-cpu" + }, + { + "name": "mpc8543_v11-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "750cxe_v2.4b-powerpc64-cpu", + "parent": "750cx-family-powerpc64-cpu" + }, + { + "name": "603e_v1.3-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "7455_v3.3-powerpc64-cpu", + "parent": "7455-family-powerpc64-cpu" + }, + { + "name": "piix4-usb-uhci", + "parent": "pci-uhci-usb" + }, + { + "name": "AC97", + "parent": "pci-device" + }, + { + "name": "7400_v2.2-powerpc64-cpu", + "parent": "7400-family-powerpc64-cpu" + }, + { + "name": "601_v1-powerpc64-cpu", + "parent": "601-family-powerpc64-cpu" + }, + { + "name": "mpc8349e-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "authz-simple", + "parent": "authz" + }, + { + "name": "via-ide", + "parent": "pci-ide" + }, + { + "name": "ioh3420", + "parent": "pcie-root-port-base" + }, + { + "name": "tpm-emulator", + "parent": "tpm-backend" + }, + { + "name": "mpc8379e-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "mpc8545_v21-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "memory-backend-memfd", + "parent": "memory-backend" + }, + { + "name": "7445_v3.3-powerpc64-cpu", + "parent": "7445-family-powerpc64-cpu" + }, + { + "name": "power8e_v2.1-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "spapr-tce-table", + "parent": "device" + }, + { + "name": "lsi53c810", + "parent": "lsi53c895a" + }, + { + "name": "isa-m48t59", + "parent": "isa-m48txx" + }, + { + "name": "mpc8547e_v20-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "irq", + "parent": "object" + }, + { + "name": "750cxe_v2.2-powerpc64-cpu", + "parent": "750cx-family-powerpc64-cpu" + }, + { + "name": "mpc8544e_v11-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "container", + "parent": "object" + }, + { + "name": "pc-testdev", + "parent": "isa-device" + }, + { + "name": "mpc8610-powerpc64-cpu", + "parent": "e600-family-powerpc64-cpu" + }, + { + "name": "603e_v1.2-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "7455_v3.2-powerpc64-cpu", + "parent": "7455-family-powerpc64-cpu" + }, + { + "name": "pseries-2.9-machine", + "parent": "spapr-machine" + }, + { + "name": "chardev-testdev", + "parent": "chardev" + }, + { + "name": "isa-serial", + "parent": "isa-device" + }, + { + "name": "7400_v2.1-powerpc64-cpu", + "parent": "7400-family-powerpc64-cpu" + }, + { + "name": "adlib", + "parent": "isa-device" + }, + { + "name": "601_v0-powerpc64-cpu", + "parent": "601-family-powerpc64-cpu" + }, + { + "name": "vhost-user-fs-pci", + "parent": "vhost-user-fs-pci-base" + }, + { + "name": "pnv-phb4", + "parent": "pcie-host-bridge" + }, + { + "name": "603p-powerpc64-cpu", + "parent": "603E-family-powerpc64-cpu" + }, + { + "name": "970mp_v1.1-spapr-cpu-core", + "parent": "spapr-cpu-core" + }, + { + "name": "gus", + "parent": "isa-device" + }, + { + "name": "pnv-phb3", + "parent": "pcie-host-bridge" + }, + { + "name": "can-bus", + "parent": "object" + }, + { + "name": "mpc8545_v20-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "kvm-openpic", + "parent": "sys-bus-device" + }, + { + "name": "pci-serial", + "parent": "pci-device" + }, + { + "name": "e500-ccsr", + "parent": "sys-bus-device" + }, + { + "name": "power8nvl_v1.0-pnv-chip", + "parent": "pnv8-chip" + }, + { + "name": "7445_v3.2-powerpc64-cpu", + "parent": "7445-family-powerpc64-cpu" + }, + { + "name": "ppc-uic", + "parent": "sys-bus-device" + }, + { + "name": "cpu-cluster", + "parent": "device" + }, + { + "name": "vhost-user-gpu-pci", + "parent": "vhost-user-gpu-pci-base-type" + }, + { + "name": "405gpd-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "chardev-gdb", + "parent": "chardev" + }, + { + "name": "750cx_v2.0-powerpc64-cpu", + "parent": "750cx-family-powerpc64-cpu" + }, + { + "name": "dc390", + "parent": "am53c974" + }, + { + "name": "750cxe_v2.1-powerpc64-cpu", + "parent": "750cx-family-powerpc64-cpu" + }, + { + "name": "mpc8544e_v10-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "spapr-vscsi", + "parent": "vio-spapr-device" + }, + { + "name": "exynos4210-ehci-usb", + "parent": "sysbus-ehci-usb" + }, + { + "name": "7441_v2.10-powerpc64-cpu", + "parent": "7440-family-powerpc64-cpu" + }, + { + "name": "mpc8533_v11-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "hda-output", + "parent": "hda-audio" + }, + { + "name": "npe405h-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "virtio-net-device", + "parent": "virtio-device" + }, + { + "name": "405cra-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "mpc8548e_v11-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "i2c-bus", + "parent": "bus" + }, + { + "name": "macio-bus", + "parent": "System" + }, + { + "name": "macio-newworld", + "parent": "macio" + }, + { + "name": "mpc8544_v11-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "405gpc-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "usb-serial", + "parent": "usb-serial-dev" + }, + { + "name": "virtio-mouse-pci", + "parent": "virtio-mouse-pci-base-type" + }, + { + "name": "pseries-2.12-machine", + "parent": "spapr-machine" + }, + { + "name": "x2vp20-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "qio-channel-websock", + "parent": "qio-channel" + }, + { + "name": "uni-north-internal-pci-pcihost", + "parent": "pci-host-bridge" + }, + { + "name": "base-xhci", + "parent": "device" + }, + { + "name": "e500v2_v20-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "qio-dns-resolver", + "parent": "object" + }, + { + "name": "g3beige-machine", + "parent": "machine" + }, + { + "name": "755_v2.0-powerpc64-cpu", + "parent": "755-family-powerpc64-cpu" + }, + { + "name": "mpc8543e_v11-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "g2le-powerpc64-cpu", + "parent": "G2LE-family-powerpc64-cpu" + }, + { + "name": "750cxr-powerpc64-cpu", + "parent": "750cx-family-powerpc64-cpu" + }, + { + "name": "440epx-powerpc64-cpu", + "parent": "440EP-family-powerpc64-cpu" + }, + { + "name": "fw_cfg_mem", + "parent": "fw_cfg" + }, + { + "name": "spapr-drc-pmem", + "parent": "spapr-drc-logical" + }, + { + "name": "pseries-5.1-machine", + "parent": "spapr-machine" + }, + { + "name": "mpc8548e_v10-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "g2lels-powerpc64-cpu", + "parent": "G2LE-family-powerpc64-cpu" + }, + { + "name": "mpc8544_v10-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "vhost-user-scsi-pci-transitional", + "parent": "vhost-user-scsi-pci-base" + }, + { + "name": "stb04-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "virtio-blk-pci-transitional", + "parent": "virtio-blk-pci-base" + }, + { + "name": "405gpb-powerpc64-cpu", + "parent": "405-family-powerpc64-cpu" + }, + { + "name": "raven", + "parent": "pci-device" + }, + { + "name": "pc87312", + "parent": "isa-superio" + }, + { + "name": "750_v2.0-powerpc64-cpu", + "parent": "750-family-powerpc64-cpu" + }, + { + "name": "via-pmu", + "parent": "sys-bus-device" + }, + { + "name": "ppc4xx-host-bridge", + "parent": "pci-device" + }, + { + "name": "mpc8555_v10-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "mpc8543e_v10-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "usb-kbd", + "parent": "usb-hid" + }, + { + "name": "power8nvl_v1.0-powerpc64-cpu", + "parent": "POWER8-family-powerpc64-cpu" + }, + { + "name": "powernv9-machine", + "parent": "powernv-machine" + }, + { + "name": "mpc8545e_v21-powerpc64-cpu", + "parent": "e500v2-family-powerpc64-cpu" + }, + { + "name": "mpc8343-powerpc64-cpu", + "parent": "e300-family-powerpc64-cpu" + }, + { + "name": "cryptodev-vhost-user", + "parent": "cryptodev-backend" + }, + { + "name": "vfio-calxeda-xgmac", + "parent": "vfio-platform" + }, + { + "name": "740_v2.0-powerpc64-cpu", + "parent": "740-family-powerpc64-cpu" + }, + { + "name": "qio-channel-file", + "parent": "qio-channel" + }, + { + "name": "sysbus-ahci", + "parent": "sys-bus-device" + } + ], + "id": "libvirt-7" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-blk-pci" + }, + "id": "libvirt-8" +} + +{ + "return": [ + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "failover_pair_id", + "type": "str" + }, + { + "default-value": false, + "name": "virtio-pci-bus-master-bug-migration", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-lnkctl-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-flr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-ignore-backend-features", + "type": "bool" + }, + { + "default-value": false, + "name": "page-per-vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "migrate-extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-pm-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "modern-pio-notify", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-deverr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "aer", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "ats", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-pcie", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-ats-page-aligned", + "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": false, + "name": "disable-modern", + "type": "bool" + }, + { + "default-value": "auto", + "name": "disable-legacy", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "request-merging", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "secs", + "type": "uint32" + }, + { + "default-value": 0, + "name": "min_io_size", + "type": "size" + }, + { + "default-value": true, + "name": "report-discard-granularity", + "type": "bool" + }, + { + "default-value": 0, + "name": "lsecs", + "type": "uint32" + }, + { + "default-value": 0, + "name": "heads", + "type": "uint32" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "default-value": true, + "name": "write-zeroes", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "cyls", + "type": "uint32" + }, + { + "default-value": 0, + "name": "logical_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": 0, + "name": "lcyls", + "type": "uint32" + }, + { + "default-value": true, + "name": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4194303, + "name": "max-write-zeroes-sectors", + "type": "uint32" + }, + { + "name": "drive", + "description": "Node name or ID of a block device to use as a backend", + "type": "str" + }, + { + "default-value": "auto", + "name": "backend_defaults", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": "auto", + "name": "werror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "discard_granularity", + "type": "size" + }, + { + "default-value": "auto", + "name": "rerror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "default-value": true, + "name": "x-enable-wce-if-config-wce", + "type": "bool" + }, + { + "default-value": 0, + "name": "lheads", + "type": "uint32" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "share-rw", + "type": "bool" + }, + { + "name": "iothread", + "type": "link<iothread>" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "name": "bootindex", + "type": "int32" + }, + { + "default-value": 0, + "name": "physical_block_size", + "description": "A power of two between 512 B and 2 MiB", + "type": "size" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + }, + { + "name": "virtio-backend", + "type": "child<virtio-blk-device>" + }, + { + "default-value": true, + "name": "seg-max-adjust", + "type": "bool" + }, + { + "default-value": true, + "name": "config-wce", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "discard", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "name": "serial", + "type": "str" + }, + { + "default-value": 256, + "name": "queue-size", + "type": "uint16" + }, + { + "default-value": 65535, + "name": "num-queues", + "type": "uint16" + }, + { + "default-value": "auto", + "name": "write-cache", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": 4194303, + "name": "max-discard-sectors", + "type": "uint32" + }, + { + "default-value": 0, + "name": "opt_io_size", + "type": "size" + } + ], + "id": "libvirt-8" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-net-pci" + }, + "id": "libvirt-9" +} + +{ + "return": [ + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "failover_pair_id", + "type": "str" + }, + { + "default-value": false, + "name": "virtio-pci-bus-master-bug-migration", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-lnkctl-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-flr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-ignore-backend-features", + "type": "bool" + }, + { + "default-value": false, + "name": "page-per-vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "migrate-extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-pm-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "modern-pio-notify", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-deverr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "aer", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "ats", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-pcie", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-ats-page-aligned", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "vectors", + "type": "uint32" + }, + { + "default-value": true, + "name": "ioeventfd", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "disable-modern", + "type": "bool" + }, + { + "default-value": "auto", + "name": "disable-legacy", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "rss", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "guest_ufo", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "host_ecn", + "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": "status", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 256, + "name": "tx_queue_size", + "type": "uint16" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "name": "tx", + "type": "str" + }, + { + "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": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "name": "mac", + "description": "Ethernet 6-byte MAC Address, example: 52:54:00:12:34:56", + "type": "str" + }, + { + "default-value": 300000, + "name": "rsc_interval", + "type": "uint32" + }, + { + "default-value": true, + "name": "guest_ecn", + "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": "guest_tso4", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "guest_csum", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "hash", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "guest_announce", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "gso", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "ctrl_vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": true, + "name": "ctrl_rx", + "description": "on/off", + "type": "bool" + }, + { + "name": "duplex", + "type": "str" + }, + { + "default-value": true, + "name": "ctrl_vlan", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 256, + "name": "x-txburst", + "type": "int32" + }, + { + "default-value": true, + "name": "csum", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "mrg_rxbuf", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "ctrl_guest_offloads", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "failover", + "type": "bool" + }, + { + "default-value": true, + "name": "ctrl_mac_addr", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "host_tso6", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-mtu-bypass-backend", + "type": "bool" + }, + { + "default-value": true, + "name": "host_tso4", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "host_ufo", + "description": "on/off", + "type": "bool" + }, + { + "name": "virtio-backend", + "type": "child<virtio-net-device>" + }, + { + "name": "bootindex", + "type": "int32" + }, + { + "name": "netdev", + "description": "ID of a netdev to use as a backend", + "type": "str" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "guest_rsc_ext", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "host_mtu", + "type": "uint16" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + } + ], + "id": "libvirt-9" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-scsi-pci" + }, + "id": "libvirt-10" +} + +{ + "return": [ + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "failover_pair_id", + "type": "str" + }, + { + "default-value": false, + "name": "virtio-pci-bus-master-bug-migration", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-lnkctl-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-flr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-ignore-backend-features", + "type": "bool" + }, + { + "default-value": false, + "name": "page-per-vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "migrate-extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-pm-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "modern-pio-notify", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-deverr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "aer", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "ats", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-pcie", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-ats-page-aligned", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "vectors", + "type": "uint32" + }, + { + "default-value": true, + "name": "ioeventfd", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "disable-modern", + "type": "bool" + }, + { + "default-value": "auto", + "name": "disable-legacy", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 65535, + "name": "max_sectors", + "type": "uint32" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 128, + "name": "cmd_per_lun", + "type": "uint32" + }, + { + "default-value": true, + "name": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "name": "iothread", + "type": "link<iothread>" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": 256, + "name": "virtqueue_size", + "type": "uint32" + }, + { + "default-value": true, + "name": "hotplug", + "description": "on/off", + "type": "bool" + }, + { + "name": "virtio-backend", + "type": "child<virtio-scsi-device>" + }, + { + "default-value": 4294967295, + "name": "num_queues", + "type": "uint32" + }, + { + "default-value": true, + "name": "param_change", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "seg_max_adjust", + "type": "bool" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + } + ], + "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": [ + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "failover_pair_id", + "type": "str" + }, + { + "default-value": false, + "name": "x-no-kvm-msi", + "type": "bool" + }, + { + "default-value": false, + "name": "x-enable-migration", + "type": "bool" + }, + { + "default-value": false, + "name": "x-igd-opregion", + "description": "on/off", + "type": "bool" + }, + { + "default-value": "off", + "name": "display", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": false, + "name": "x-vga", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "x-pci-vendor-id", + "type": "uint32" + }, + { + "default-value": false, + "name": "x-balloon-allowed", + "type": "bool" + }, + { + "default-value": true, + "name": "x-req", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-no-vfio-ioeventfd", + "type": "bool" + }, + { + "default-value": false, + "name": "x-no-geforce-quirks", + "type": "bool" + }, + { + "default-value": false, + "name": "x-no-kvm-ioeventfd", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "x-pci-device-id", + "type": "uint32" + }, + { + "default-value": false, + "name": "x-no-kvm-intx", + "type": "bool" + }, + { + "name": "host", + "description": "Address (bus/device/function) of the host device, example: 04:10.0", + "type": "str" + }, + { + "default-value": false, + "name": "x-no-kvm-msix", + "type": "bool" + }, + { + "default-value": 1100, + "name": "x-intx-mmap-timeout-ms", + "type": "uint32" + }, + { + "name": "x-nv-gpudirect-clique", + "description": "NVIDIA GPUDirect Clique ID (0 - 15)", + "type": "uint4" + }, + { + "default-value": 0, + "name": "yres", + "type": "uint32" + }, + { + "default-value": 0, + "name": "x-igd-gms", + "type": "uint32" + }, + { + "default-value": 4294967295, + "name": "x-pci-sub-vendor-id", + "type": "uint32" + }, + { + "default-value": "off", + "name": "x-msix-relocation", + "description": "off/auto/bar0/bar1/bar2/bar3/bar4/bar5", + "type": "OffAutoPCIBAR" + }, + { + "default-value": 4294967295, + "name": "x-pci-sub-device-id", + "type": "uint32" + }, + { + "name": "sysfsdev", + "type": "str" + }, + { + "default-value": 0, + "name": "xres", + "type": "uint32" + }, + { + "default-value": false, + "name": "x-no-mmap", + "type": "bool" + }, + { + "default-value": "on", + "name": "x-pre-copy-dirty-page-tracking", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "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": "min_io_size", + "type": "size" + }, + { + "default-value": 0, + "name": "secs", + "type": "uint32" + }, + { + "default-value": false, + "name": "removable", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "lsecs", + "type": "uint32" + }, + { + "name": "serial", + "type": "str" + }, + { + "default-value": false, + "name": "dpofua", + "description": "on/off", + "type": "bool" + }, + { + "name": "ver", + "type": "str" + }, + { + "default-value": 0, + "name": "cyls", + "type": "uint32" + }, + { + "default-value": 0, + "name": "logical_block_size", + "description": "A power of two between 512 B and 2 MiB", + "type": "size" + }, + { + "default-value": 0, + "name": "lcyls", + "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" + }, + { + "default-value": 5, + "name": "scsi_version", + "type": "int32" + }, + { + "default-value": "auto", + "name": "backend_defaults", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": "auto", + "name": "werror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "default-value": 4294967295, + "name": "discard_granularity", + "type": "size" + }, + { + "default-value": 0, + "name": "port_wwn", + "type": "uint64" + }, + { + "default-value": 1073741824, + "name": "max_unmap_size", + "type": "uint64" + }, + { + "default-value": "auto", + "name": "rerror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "default-value": 2147483647, + "name": "max_io_size", + "type": "uint64" + }, + { + "name": "device_id", + "type": "str" + }, + { + "default-value": 0, + "name": "lheads", + "type": "uint32" + }, + { + "default-value": 0, + "name": "wwn", + "type": "uint64" + }, + { + "default-value": false, + "name": "share-rw", + "type": "bool" + }, + { + "name": "product", + "type": "str" + }, + { + "name": "vendor", + "type": "str" + }, + { + "default-value": 0, + "name": "physical_block_size", + "description": "A power of two between 512 B and 2 MiB", + "type": "size" + }, + { + "default-value": 0, + "name": "port_index", + "type": "uint16" + }, + { + "default-value": 0, + "name": "heads", + "type": "uint32" + }, + { + "default-value": "auto", + "name": "write-cache", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": 0, + "name": "opt_io_size", + "type": "size" + }, + { + "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": 0, + "name": "secs", + "type": "uint32" + }, + { + "name": "serial", + "type": "str" + }, + { + "default-value": 0, + "name": "lcyls", + "type": "uint32" + }, + { + "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": "rotation_rate", + "type": "uint16" + }, + { + "name": "drive", + "description": "Node name or ID of a block device to use as a backend", + "type": "str" + }, + { + "default-value": 0, + "name": "heads", + "type": "uint32" + }, + { + "default-value": 0, + "name": "min_io_size", + "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": false, + "name": "share-rw", + "type": "bool" + }, + { + "default-value": "auto", + "name": "backend_defaults", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": "auto", + "name": "bios-chs-trans", + "description": "Logical CHS translation algorithm, auto/none/lba/large/rechs", + "type": "BiosAtaTranslation" + }, + { + "default-value": 0, + "name": "lheads", + "type": "uint32" + }, + { + "default-value": 0, + "name": "wwn", + "type": "uint64" + }, + { + "default-value": "auto", + "name": "werror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "name": "model", + "type": "str" + }, + { + "name": "ver", + "type": "str" + }, + { + "default-value": "auto", + "name": "rerror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "default-value": 0, + "name": "physical_block_size", + "description": "A power of two between 512 B and 2 MiB", + "type": "size" + }, + { + "default-value": 0, + "name": "cyls", + "type": "uint32" + }, + { + "name": "bootindex", + "type": "int32" + } + ], + "id": "libvirt-15" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "PIIX4_PM" + }, + "id": "libvirt-16" +} + +{ + "return": [ + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "failover_pair_id", + "type": "str" + }, + { + "default-value": true, + "name": "memory-hotplug-support", + "type": "bool" + }, + { + "default-value": true, + "name": "acpi-pci-hotplug-with-bridge-support", + "type": "bool" + }, + { + "default-value": false, + "name": "smm-compat", + "type": "bool" + }, + { + "default-value": 0, + "name": "disable_s4", + "type": "uint8" + }, + { + "default-value": 0, + "name": "disable_s3", + "type": "uint8" + }, + { + "default-value": 2, + "name": "s4_val", + "type": "uint8" + }, + { + "default-value": true, + "name": "acpi-root-pci-hotplug", + "type": "bool" + }, + { + "default-value": 0, + "name": "smb_io_base", + "type": "uint32" + } + ], + "id": "libvirt-16" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "i440FX-pcihost" + }, + "id": "libvirt-17" +} + +{ + "id": "libvirt-17", + "error": { + "class": "DeviceNotFound", + "desc": "Device 'i440FX-pcihost' not found" + } +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "q35-pcihost" + }, + "id": "libvirt-18" +} + +{ + "id": "libvirt-18", + "error": { + "class": "DeviceNotFound", + "desc": "Device 'q35-pcihost' not found" + } +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "usb-storage" + }, + "id": "libvirt-19" +} + +{ + "return": [ + { + "name": "pcap", + "type": "str" + }, + { + "default-value": true, + "name": "msos-desc", + "description": "on/off", + "type": "bool" + }, + { + "name": "port", + "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" + }, + { + "default-value": 4294967295, + "name": "discard_granularity", + "type": "size" + }, + { + "name": "drive", + "description": "Node name or ID of a block device to use as a backend", + "type": "str" + }, + { + "default-value": 0, + "name": "min_io_size", + "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": false, + "name": "share-rw", + "type": "bool" + }, + { + "default-value": "auto", + "name": "backend_defaults", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": false, + "name": "commandlog", + "type": "bool" + }, + { + "default-value": "auto", + "name": "werror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "default-value": false, + "name": "removable", + "type": "bool" + }, + { + "default-value": "auto", + "name": "rerror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "default-value": 0, + "name": "physical_block_size", + "description": "A power of two between 512 B and 2 MiB", + "type": "size" + }, + { + "name": "bootindex", + "type": "int32" + }, + { + "name": "attached", + "type": "bool" + } + ], + "id": "libvirt-19" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "kvm-pit" + }, + "id": "libvirt-20" +} + +{ + "id": "libvirt-20", + "error": { + "class": "DeviceNotFound", + "desc": "Device 'kvm-pit' not found" + } +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "VGA" + }, + "id": "libvirt-21" +} + +{ + "return": [ + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "failover_pair_id", + "type": "str" + }, + { + "default-value": true, + "name": "mmio", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "qemu-extended-regs", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "ymax", + "type": "uint32" + }, + { + "name": "big-endian-framebuffer", + "type": "bool" + }, + { + "default-value": 16, + "name": "vgamem_mb", + "type": "uint32" + }, + { + "default-value": 0, + "name": "yres", + "type": "uint32" + }, + { + "default-value": 0, + "name": "xmax", + "type": "uint32" + }, + { + "default-value": 0, + "name": "refresh_rate", + "type": "uint32" + }, + { + "default-value": true, + "name": "edid", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "xres", + "type": "uint32" + }, + { + "default-value": false, + "name": "global-vmstate", + "type": "bool" + } + ], + "id": "libvirt-21" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "vmware-svga" + }, + "id": "libvirt-22" +} + +{ + "return": [ + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "failover_pair_id", + "type": "str" + }, + { + "default-value": 16, + "name": "vgamem_mb", + "type": "uint32" + }, + { + "default-value": false, + "name": "global-vmstate", + "type": "bool" + } + ], + "id": "libvirt-22" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-gpu-pci" + }, + "id": "libvirt-23" +} + +{ + "return": [ + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "failover_pair_id", + "type": "str" + }, + { + "default-value": false, + "name": "virtio-pci-bus-master-bug-migration", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-lnkctl-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-flr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-ignore-backend-features", + "type": "bool" + }, + { + "default-value": false, + "name": "page-per-vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "migrate-extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-pm-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "modern-pio-notify", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-deverr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "aer", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "ats", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-pcie", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-ats-page-aligned", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 3, + "name": "vectors", + "type": "uint32" + }, + { + "default-value": false, + "name": "ioeventfd", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "disable-modern", + "type": "bool" + }, + { + "default-value": "auto", + "name": "disable-legacy", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "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": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": false, + "name": "blob", + "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" + }, + { + "name": "virtio-backend", + "type": "child<virtio-gpu-device>" + }, + { + "default-value": 800, + "name": "yres", + "type": "uint32" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "edid", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "max_outputs", + "type": "uint32" + }, + { + "default-value": 268435456, + "name": "max_hostmem", + "type": "size" + }, + { + "default-value": 1280, + "name": "xres", + "type": "uint32" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + } + ], + "id": "libvirt-23" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-gpu-device" + }, + "id": "libvirt-24" +} + +{ + "return": [ + { + "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": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "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": false, + "name": "iommu_platform", + "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": "blob", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "edid", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 268435456, + "name": "max_hostmem", + "type": "size" + }, + { + "default-value": 1280, + "name": "xres", + "type": "uint32" + }, + { + "default-value": 800, + "name": "yres", + "type": "uint32" + }, + { + "default-value": 1, + "name": "max_outputs", + "type": "uint32" + } + ], + "id": "libvirt-24" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "ICH9-LPC" + }, + "id": "libvirt-25" +} + +{ + "id": "libvirt-25", + "error": { + "class": "DeviceNotFound", + "desc": "Device 'ICH9-LPC' not found" + } +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-balloon-pci" + }, + "id": "libvirt-26" +} + +{ + "return": [ + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "failover_pair_id", + "type": "str" + }, + { + "default-value": false, + "name": "virtio-pci-bus-master-bug-migration", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-lnkctl-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-flr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-ignore-backend-features", + "type": "bool" + }, + { + "default-value": false, + "name": "page-per-vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "migrate-extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-pm-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "modern-pio-notify", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-deverr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "aer", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "ats", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-pcie", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-ats-page-aligned", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "disable-modern", + "type": "bool" + }, + { + "default-value": "auto", + "name": "disable-legacy", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "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": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "name": "guest-stats", + "type": "guest statistics" + }, + { + "name": "guest-stats-polling-interval", + "type": "int" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "name": "iothread", + "type": "link<iothread>" + }, + { + "default-value": false, + "name": "free-page-hint", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": false, + "name": "free-page-reporting", + "description": "on/off", + "type": "bool" + }, + { + "name": "virtio-backend", + "type": "child<virtio-balloon-device>" + }, + { + "default-value": false, + "name": "iommu_platform", + "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-disabled-flag", + "type": "bool" + }, + { + "default-value": false, + "name": "deflate-on-oom", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "page-poison", + "description": "on/off", + "type": "bool" + } + ], + "id": "libvirt-26" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-balloon-ccw" + }, + "id": "libvirt-27" +} + +{ + "id": "libvirt-27", + "error": { + "class": "DeviceNotFound", + "desc": "Device 'virtio-balloon-ccw' not found" + } +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-balloon-device" + }, + "id": "libvirt-28" +} + +{ + "return": [ + { + "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": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "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": false, + "name": "iommu_platform", + "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": "free-page-hint", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "deflate-on-oom", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "free-page-reporting", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "page-poison", + "description": "on/off", + "type": "bool" + }, + { + "name": "iothread", + "type": "link<iothread>" + }, + { + "default-value": false, + "name": "qemu-4-0-config-size", + "type": "bool" + }, + { + "name": "guest-stats", + "type": "guest statistics" + }, + { + "name": "guest-stats-polling-interval", + "type": "int" + } + ], + "id": "libvirt-28" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "nec-usb-xhci" + }, + "id": "libvirt-29" +} + +{ + "return": [ + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "failover_pair_id", + "type": "str" + }, + { + "default-value": "auto", + "name": "msi", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": 16, + "name": "intrs", + "type": "uint32" + }, + { + "default-value": false, + "name": "force-pcie-endcap", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 64, + "name": "slots", + "type": "uint32" + }, + { + "default-value": "auto", + "name": "msix", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": true, + "name": "superspeed-ports-first", + "description": "on/off", + "type": "bool" + }, + { + "name": "host", + "type": "link<device>" + }, + { + "default-value": 4, + "name": "p3", + "type": "uint32" + }, + { + "name": "xhci-core", + "type": "child<base-xhci>" + }, + { + "default-value": true, + "name": "streams", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4, + "name": "p2", + "type": "uint32" + } + ], + "id": "libvirt-29" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "spapr-pci-host-bridge" + }, + "id": "libvirt-30" +} + +{ + "return": [ + { + "default-value": false, + "name": "bypass-iommu", + "type": "bool" + }, + { + "default-value": true, + "name": "x-config-reg-migration-enabled", + "type": "bool" + }, + { + "default-value": true, + "name": "dynamic-reconfiguration", + "type": "bool" + }, + { + "default-value": 0, + "name": "atsd", + "type": "uint64" + }, + { + "default-value": true, + "name": "ddw", + "type": "bool" + }, + { + "default-value": 1073741824, + "name": "dma_win_size", + "type": "uint64" + }, + { + "default-value": 4294967295, + "name": "numa_node", + "type": "uint32" + }, + { + "default-value": 1099511627776, + "name": "mem64_win_size", + "type": "uint64" + }, + { + "default-value": 18944000, + "name": "pgsz", + "type": "uint64" + }, + { + "default-value": false, + "name": "pre-2.8-migration", + "type": "bool" + }, + { + "default-value": 65536, + "name": "io_win_size", + "type": "uint64" + }, + { + "default-value": 2147483648, + "name": "mem_win_size", + "type": "uint64" + }, + { + "default-value": 0, + "name": "dma_win_addr", + "type": "uint64" + }, + { + "default-value": 576460752303423488, + "name": "dma64_win_addr", + "type": "uint64" + }, + { + "default-value": false, + "name": "pre-5.1-associativity", + "type": "bool" + }, + { + "default-value": 0, + "name": "gpa", + "type": "uint64" + }, + { + "default-value": true, + "name": "pcie-extended-configuration-space", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "index", + "type": "uint32" + } + ], + "id": "libvirt-30" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "nvdimm" + }, + "id": "libvirt-31" +} + +{ + "return": [ + { + "default-value": 0, + "name": "addr", + "type": "uint64" + }, + { + "name": "memdev", + "type": "link<memory-backend>" + }, + { + "default-value": 0, + "name": "node", + "type": "uint32" + }, + { + "default-value": -1, + "name": "slot", + "type": "int32" + }, + { + "default-value": false, + "name": "unarmed", + "type": "bool" + }, + { + "name": "label-size", + "type": "int" + }, + { + "name": "uuid", + "type": "QemuUUID" + }, + { + "name": "size", + "type": "uint64" + } + ], + "id": "libvirt-31" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "pcie-root-port" + }, + "id": "libvirt-32" +} + +{ + "return": [ + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or 06", + "type": "int32" + }, + { + "name": "failover_pair_id", + "type": "str" + }, + { + "default-value": 0, + "name": "port", + "type": "uint8" + }, + { + "default-value": 8, + "name": "aer_log_max", + "type": "uint16" + }, + { + "default-value": true, + "name": "x-native-hotplug", + "type": "bool" + }, + { + "default-value": true, + "name": "hotplug", + "type": "bool" + }, + { + "default-value": 0, + "name": "chassis", + "type": "uint8" + }, + { + "default-value": 0, + "name": "slot", + "type": "uint16" + }, + { + "default-value": false, + "name": "disable-acs", + "type": "bool" + }, + { + "default-value": true, + "name": "power_controller_present", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 18446744073709551615, + "name": "mem-reserve", + "type": "size" + }, + { + "default-value": 18446744073709551615, + "name": "pref32-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": 18446744073709551615, + "name": "pref64-reserve", + "type": "size" + }, + { + "default-value": 18446744073709551615, + "name": "io-reserve", + "type": "size" + }, + { + "default-value": true, + "name": "x-migrate-msix", + "type": "bool" + }, + { + "default-value": "16", + "name": "x-speed", + "description": "2_5/5/8/16", + "type": "PCIELinkSpeed" + } + ], + "id": "libvirt-32" +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "usb-host" + }, + "id": "libvirt-33" +} + +{ + "id": "libvirt-33", + "error": { + "class": "DeviceNotFound", + "desc": "Device 'usb-host' not found" + } +} + +{ + "execute": "device-list-properties", + "arguments": { + "typename": "vhost-user-fs-device" + }, + "id": "libvirt-34" +} + +{ + "return": [ + { + "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": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "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": false, + "name": "iommu_platform", + "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": 1, + "name": "num-request-queues", + "type": "uint16" + }, + { + "name": "tag", + "type": "str" + }, + { + "default-value": 128, + "name": "queue-size", + "type": "uint16" + }, + { + "name": "chardev", + "description": "ID of a chardev to use as a backend", + "type": "str" + }, + { + "name": "bootindex", + "type": "int32" + } + ], + "id": "libvirt-34" +} + +{ + "execute": "qom-list-properties", + "arguments": { + "typename": "memory-backend-file" + }, + "id": "libvirt-35" +} + +{ + "return": [ + { + "name": "type", + "type": "string" + }, + { + "name": "policy", + "description": "Set the NUMA policy", + "type": "HostMemPolicy" + }, + { + "name": "reserve", + "description": "Reserve swap space (or huge pages) if applicable", + "type": "bool" + }, + { + "name": "prealloc-threads", + "description": "Number of CPU threads to use for prealloc", + "type": "int" + }, + { + "name": "dump", + "description": "Set to 'off' to exclude from core dump", + "type": "bool" + }, + { + "name": "share", + "description": "Mark the memory as private to QEMU or shared", + "type": "bool" + }, + { + "name": "prealloc", + "description": "Preallocate memory", + "type": "bool" + }, + { + "name": "size", + "description": "Size of the memory region (ex: 500M)", + "type": "int" + }, + { + "name": "x-use-canonical-path-for-ramblock-id", + "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": "align", + "type": "int" + }, + { + "name": "mem-path", + "type": "string" + }, + { + "name": "discard-data", + "type": "bool" + }, + { + "name": "readonly", + "type": "bool" + } + ], + "id": "libvirt-35" +} + +{ + "execute": "qom-list-properties", + "arguments": { + "typename": "memory-backend-memfd" + }, + "id": "libvirt-36" +} + +{ + "return": [ + { + "name": "type", + "type": "string" + }, + { + "name": "policy", + "description": "Set the NUMA policy", + "type": "HostMemPolicy" + }, + { + "name": "reserve", + "description": "Reserve swap space (or huge pages) if applicable", + "type": "bool" + }, + { + "name": "prealloc-threads", + "description": "Number of CPU threads to use for prealloc", + "type": "int" + }, + { + "name": "dump", + "description": "Set to 'off' to exclude from core dump", + "type": "bool" + }, + { + "name": "share", + "description": "Mark the memory as private to QEMU or shared", + "type": "bool" + }, + { + "name": "prealloc", + "description": "Preallocate memory", + "type": "bool" + }, + { + "name": "size", + "description": "Size of the memory region (ex: 500M)", + "type": "int" + }, + { + "name": "x-use-canonical-path-for-ramblock-id", + "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": "seal", + "description": "Seal growing & shrinking", + "type": "bool" + }, + { + "name": "hugetlbsize", + "description": "Huge pages size (ex: 2M, 1G)", + "type": "int" + }, + { + "name": "hugetlb", + "description": "Use huge pages", + "type": "bool" + } + ], + "id": "libvirt-36" +} + +{ + "execute": "query-machines", + "id": "libvirt-37" +} + +{ + "return": [ + { + "hotpluggable-cpus": false, + "name": "powernv9", + "numa-mem-supported": false, + "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "cpu-max": 2048, + "deprecated": false, + "default-ram-id": "pnv.ram", + "alias": "powernv" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-5.1", + "numa-mem-supported": false, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "g3beige", + "numa-mem-supported": false, + "default-cpu-type": "750_v3.1-powerpc64-cpu", + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ppc_heathrow.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.12", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.9", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-5.2", + "numa-mem-supported": false, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "ref405ep", + "numa-mem-supported": false, + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ef405ep.ram" + }, + { + "hotpluggable-cpus": false, + "name": "pseries-2.2", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "40p", + "numa-mem-supported": false, + "default-cpu-type": "604-powerpc64-cpu", + "cpu-max": 1, + "deprecated": false + }, + { + "hotpluggable-cpus": true, + "name": "pseries-4.2", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.12-sxxm", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "pseries-2.3", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "pseries-2.6", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-6.2", + "numa-mem-supported": false, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "sam460ex", + "numa-mem-supported": false, + "default-cpu-type": "460exb-powerpc64-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-powerpc64-cpu", + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "pegasos2.ram" + }, + { + "hotpluggable-cpus": false, + "name": "virtex-ml507", + "numa-mem-supported": false, + "default-cpu-type": "440-xilinx-powerpc64-cpu", + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-3.0", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.7", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "none", + "numa-mem-supported": false, + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-5.0", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.8", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "x-remote", + "numa-mem-supported": false, + "cpu-max": 1, + "deprecated": false + }, + { + "hotpluggable-cpus": true, + "name": "pseries-7.0", + "numa-mem-supported": false, + "default-cpu-type": "host-powerpc64-cpu", + "is-default": true, + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram", + "alias": "pseries" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-4.0", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "bamboo", + "numa-mem-supported": false, + "default-cpu-type": "440epb-powerpc64-cpu", + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ppc4xx.sdram" + }, + { + "hotpluggable-cpus": false, + "name": "pseries-2.1", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "taihu", + "numa-mem-supported": false, + "cpu-max": 1, + "deprecated": true, + "default-ram-id": "taihu_405ep.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.10", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "pseries-2.4", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-6.0", + "numa-mem-supported": false, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "mpc8544ds", + "numa-mem-supported": false, + "default-cpu-type": "e500v2_v30-powerpc64-cpu", + "cpu-max": 15, + "deprecated": false, + "default-ram-id": "mpc8544ds.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-4.1", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "powernv8", + "numa-mem-supported": false, + "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "cpu-max": 2048, + "deprecated": false, + "default-ram-id": "pnv.ram" + }, + { + "hotpluggable-cpus": false, + "name": "powernv10", + "numa-mem-supported": false, + "default-cpu-type": "power10_v2.0-powerpc64-cpu", + "cpu-max": 2048, + "deprecated": false, + "default-ram-id": "pnv.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.11", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "pseries-2.5", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-6.1", + "numa-mem-supported": false, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-3.1", + "numa-mem-supported": true, + "default-cpu-type": "host-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "mac99", + "numa-mem-supported": false, + "default-cpu-type": "970fx_v3.1-powerpc64-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-powerpc64-cpu", + "cpu-max": 32, + "deprecated": false, + "default-ram-id": "mpc8544ds.ram" + } + ], + "id": "libvirt-37" +} + +{ + "execute": "qom-list-properties", + "arguments": { + "typename": "pseries-7.0-machine" + }, + "id": "libvirt-38" +} + +{ + "return": [ + { + "name": "type", + "type": "string" + }, + { + "name": "graphics", + "description": "Set on/off to enable/disable graphics emulation", + "type": "bool" + }, + { + "name": "phandle-start", + "description": "The first phandle ID we may generate dynamically", + "type": "int" + }, + { + "name": "dump-guest-core", + "description": "Include guest memory in a core dump", + "type": "bool" + }, + { + "name": "confidential-guest-support", + "description": "Set confidential guest scheme to support", + "type": "link<confidential-guest-support>" + }, + { + "name": "append", + "description": "Linux kernel command line", + "type": "string" + }, + { + "name": "dumpdtb", + "description": "Dump current dtb to a file and quit", + "type": "string" + }, + { + "name": "memory-encryption", + "description": "Set memory encryption object to use", + "type": "string" + }, + { + "name": "dt-compatible", + "description": "Overrides the \"compatible\" property of the dt root node", + "type": "string" + }, + { + "name": "kernel", + "description": "Linux kernel image file", + "type": "string" + }, + { + "name": "memory-backend", + "description": "Set RAM backendValid value is ID of hostmem based backend", + "type": "string" + }, + { + "name": "usb", + "description": "Set on/off to enable/disable usb", + "type": "bool" + }, + { + "name": "suppress-vmdesc", + "description": "Set on to disable self-describing migration", + "type": "bool" + }, + { + "name": "firmware", + "description": "Firmware image", + "type": "string" + }, + { + "name": "dtb", + "description": "Linux kernel device tree file", + "type": "string" + }, + { + "name": "mem-merge", + "description": "Enable/disable memory merge support", + "type": "bool" + }, + { + "name": "smp", + "description": "CPU topology", + "type": "SMPConfiguration" + }, + { + "name": "initrd", + "description": "Linux initial ramdisk file", + "type": "string" + }, + { + "name": "cap-hpt-max-page-size", + "description": "Maximum page size for Hash Page Table guests", + "type": "int" + }, + { + "name": "cap-dfp", + "description": "Allow Decimal Floating Point (DFP)", + "type": "bool" + }, + { + "name": "cap-fwnmi", + "description": "Implements PAPR FWNMI option", + "type": "bool" + }, + { + "name": "cap-rpt-invalidate", + "description": "Allow H_RPT_INVALIDATE", + "type": "bool" + }, + { + "name": "cap-ccf-assist", + "description": "Count Cache Flush Assist via HW Instruction", + "type": "bool" + }, + { + "name": "cap-large-decr", + "description": "Allow Large Decrementer", + "type": "bool" + }, + { + "name": "cap-cfpc", + "description": "Cache Flush on Privilege Change (broken, workaround, fixed)", + "type": "string" + }, + { + "name": "cap-ibs", + "description": "Indirect Branch Speculation (broken, workaround, fixed-ibs,fixed-ccd, fixed-na)", + "type": "string" + }, + { + "name": "cap-sbbc", + "description": "Speculation Barrier Bounds Checking (broken, workaround, fixed)", + "type": "string" + }, + { + "name": "cap-vsx", + "description": "Allow Vector Scalar Extensions (VSX)", + "type": "bool" + }, + { + "name": "cap-htm", + "description": "Allow Hardware Transactional Memory (HTM)", + "type": "bool" + }, + { + "name": "cap-nested-hv", + "description": "Allow Nested KVM-HV", + "type": "bool" + }, + { + "name": "vfio-no-msix-emulation", + "type": "bool" + }, + { + "name": "nvdimm-persistence", + "description": "Set NVDIMM persistenceValid values are cpu, mem-ctrl", + "type": "string" + }, + { + "name": "ic-mode", + "description": "Specifies the interrupt controller mode (xics, xive, dual)", + "type": "string" + }, + { + "name": "kvm-type", + "description": "Specifies the KVM virtualization mode (auto, hv, pr). Defaults to 'auto'. This mode will use any available KVM module loaded in the host, where kvm_hv takes precedence if both kvm_hv and kvm_pr are loaded.", + "type": "string" + }, + { + "name": "host-model", + "description": "Host model to advertise in guest device tree", + "type": "string" + }, + { + "name": "max-cpu-compat", + "description": "Maximum permitted CPU compatibility mode. Valid values are power6, power7, power7+, power8, power9, power10.", + "type": "string" + }, + { + "name": "nvdimm", + "description": "Set on/off to enable/disable NVDIMM instantiation", + "type": "bool" + }, + { + "name": "kernel-addr", + "description": "0x400000 for -kernel is the default", + "type": "uint64" + }, + { + "name": "peripheral", + "type": "child<container>" + }, + { + "name": "x-vof", + "description": "Enable Virtual Open Firmware (experimental)", + "type": "bool" + }, + { + "name": "modern-hotplug-events", + "description": "Use dedicated hotplug event mechanism in place of standard EPOW events when possible (required for memory hot-unplug support)", + "type": "bool" + }, + { + "name": "peripheral-anon", + "type": "child<container>" + }, + { + "name": "vsmt", + "description": "Virtual SMT: KVM behaves as if this were the host's SMT mode", + "type": "uint32" + }, + { + "name": "hmat", + "description": "Set on/off to enable/disable ACPI Heterogeneous Memory Attribute Table (HMAT)", + "type": "bool" + }, + { + "name": "host-serial", + "description": "Host serial number to advertise in guest device tree", + "type": "string" + }, + { + "name": "resize-hpt", + "description": "Resizing of the Hash Page Table (enabled, disabled, required)", + "type": "string" + } + ], + "id": "libvirt-38" +} + +{ + "execute": "qom-list-properties", + "arguments": { + "typename": "none-machine" + }, + "id": "libvirt-39" +} + +{ + "return": [ + { + "name": "type", + "type": "string" + }, + { + "name": "graphics", + "description": "Set on/off to enable/disable graphics emulation", + "type": "bool" + }, + { + "name": "phandle-start", + "description": "The first phandle ID we may generate dynamically", + "type": "int" + }, + { + "name": "dump-guest-core", + "description": "Include guest memory in a core dump", + "type": "bool" + }, + { + "name": "confidential-guest-support", + "description": "Set confidential guest scheme to support", + "type": "link<confidential-guest-support>" + }, + { + "name": "append", + "description": "Linux kernel command line", + "type": "string" + }, + { + "name": "dumpdtb", + "description": "Dump current dtb to a file and quit", + "type": "string" + }, + { + "name": "memory-encryption", + "description": "Set memory encryption object to use", + "type": "string" + }, + { + "name": "dt-compatible", + "description": "Overrides the \"compatible\" property of the dt root node", + "type": "string" + }, + { + "name": "kernel", + "description": "Linux kernel image file", + "type": "string" + }, + { + "name": "memory-backend", + "description": "Set RAM backendValid value is ID of hostmem based backend", + "type": "string" + }, + { + "name": "usb", + "description": "Set on/off to enable/disable usb", + "type": "bool" + }, + { + "name": "suppress-vmdesc", + "description": "Set on to disable self-describing migration", + "type": "bool" + }, + { + "name": "firmware", + "description": "Firmware image", + "type": "string" + }, + { + "name": "dtb", + "description": "Linux kernel device tree file", + "type": "string" + }, + { + "name": "mem-merge", + "description": "Enable/disable memory merge support", + "type": "bool" + }, + { + "name": "smp", + "description": "CPU topology", + "type": "SMPConfiguration" + }, + { + "name": "initrd", + "description": "Linux initial ramdisk file", + "type": "string" + }, + { + "name": "peripheral-anon", + "type": "child<container>" + }, + { + "name": "peripheral", + "type": "child<container>" + } + ], + "id": "libvirt-39" +} + +{ + "execute": "query-cpu-definitions", + "id": "libvirt-40" +} + +{ + "return": [ + { + "name": "default", + "typename": "604-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "ppc", + "typename": "604-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "ppc32", + "typename": "604-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "ppc64", + "typename": "970fx_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power10", + "typename": "power10_v2.0-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power9", + "typename": "host-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power8nvl", + "typename": "power8nvl_v1.0-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power8", + "typename": "power8_v2.0-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power8e", + "typename": "power8e_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power7+", + "typename": "power7+_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power7", + "typename": "power7_v2.3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power5gs", + "typename": "power5+_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power5+", + "typename": "power5+_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "970mp", + "typename": "970mp_v1.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "970fx", + "typename": "970fx_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "970", + "typename": "970_v2.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "apollo7pm", + "typename": "7457a_v1.0-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7457a", + "typename": "7457a_v1.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7447a", + "typename": "7447a_v1.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "apollo7", + "typename": "7457_v1.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7457", + "typename": "7457_v1.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7447", + "typename": "7447_v1.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "apollo6", + "typename": "7455_v3.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7455", + "typename": "7455_v3.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7445", + "typename": "7445_v3.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7451", + "typename": "7451_v2.3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7441", + "typename": "7441_v2.3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "vger", + "typename": "7450_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7450", + "typename": "7450_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7448", + "typename": "7448_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "nitro", + "typename": "7410_v1.4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7410", + "typename": "7410_v1.4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "g4", + "typename": "7400_v2.9-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "max", + "typename": "7400_v2.9-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7400", + "typename": "7400_v2.9-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "goldfinger", + "typename": "755_v2.8-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "755", + "typename": "755_v2.8-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "745", + "typename": "745_v2.8-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "lonestar", + "typename": "750l_v3.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750l", + "typename": "750l_v3.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750gx", + "typename": "750gx_v1.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750fx", + "typename": "750fx_v2.3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750cxe", + "typename": "750cxe_v3.1b-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750cx", + "typename": "750cx_v2.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750cl", + "typename": "750cl_v2.0-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "conan/doyle", + "typename": "750p-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "g3", + "typename": "750_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "typhoon", + "typename": "750_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750", + "typename": "750_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "arthur", + "typename": "740_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "740", + "typename": "740_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mach5", + "typename": "604r-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "sirocco", + "typename": "604e_v2.4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "604e", + "typename": "604e_v2.4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "goldeneye", + "typename": "603e7t-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "603r", + "typename": "603e7t-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "vaillant", + "typename": "603e7v-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "stretch", + "typename": "603e_v4.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "603e", + "typename": "603e_v4.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "vanilla", + "typename": "603-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "601v", + "typename": "601_v2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "601", + "typename": "601_v2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8560", + "typename": "mpc8560_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555e", + "typename": "mpc8555e_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555", + "typename": "mpc8555_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e", + "typename": "mpc8548e_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548", + "typename": "mpc8548_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8547e", + "typename": "mpc8547e_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545e", + "typename": "mpc8545e_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545", + "typename": "mpc8545_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544e", + "typename": "mpc8544e_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544", + "typename": "mpc8544_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e", + "typename": "mpc8543e_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543", + "typename": "mpc8543_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541e", + "typename": "mpc8541e_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541", + "typename": "mpc8541_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8540", + "typename": "mpc8540_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533e", + "typename": "mpc8533e_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533", + "typename": "mpc8533_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e500v2", + "typename": "e500v2_v22-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e500v1", + "typename": "e500_v20-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e500", + "typename": "e500v2_v22-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347ea", + "typename": "mpc8347eat-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347e", + "typename": "mpc8347et-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347a", + "typename": "mpc8347at-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347", + "typename": "mpc8347t-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e300", + "typename": "e300c3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e200", + "typename": "e200z6-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8280", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8275", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8272", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8271", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8270", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8266_hip4", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8266_hip3", + "typename": "g2hip3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8266", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8265_hip4", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8265_hip3", + "typename": "g2hip3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8265", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8264_hip4", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8264_hip3", + "typename": "g2hip3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8264", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8260_hip4", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8260_hip3", + "typename": "g2hip3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8260", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8255_hip4", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8255_hip3", + "typename": "g2hip3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8255", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8250_hip4", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8250_hip3", + "typename": "g2hip3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8250", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8248", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8247", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8245", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8241", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "powerquicc-ii", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc82xx", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200b", + "typename": "mpc5200b_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200", + "typename": "mpc5200_v12-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc52xx", + "typename": "mpc5200_v12-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8240", + "typename": "603-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "460ex", + "typename": "460exb-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "440ep", + "typename": "440epb-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "x2vp50", + "typename": "x2vp20-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "x2vp7", + "typename": "x2vp4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "405gpe", + "typename": "405crc-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "405gp", + "typename": "405gpd-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "405cr", + "typename": "405crc-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "405", + "typename": "405d4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "740_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8343", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545e_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power8nvl_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpb", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "stb04", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2lels", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440epx", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxr", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2le", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "x2vp20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpc", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405cra", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "npe405h", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7441_v2.10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cx_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpd", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v3.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603p", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "601_v0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v3.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8610", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8547e_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v3.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8379e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8349e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "601_v1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v3.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v1.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.4b", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8547e_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8572e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "602", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7451_v2.10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970fx_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8641d", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v30", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405ez", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405d2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970fx_v3.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power10_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405lp", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8349ea", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v3.1b", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440epa", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200b_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.6", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7v", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8377", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447a_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v3.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970mp_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8641", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e200z5", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750p", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.7", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v3.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "x2vp4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447a_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.7", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970mp_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545e_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e200z6", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.8", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpa", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "stb03", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.8", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power9_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457a_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8349a", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2gp", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "stb25", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cl_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457a_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2legp3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347t", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440-xilinx", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347ap", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604e_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457a_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7v1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v4.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "npe4gs3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970fx_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604e_v2.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e300c4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7v2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power8e_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200_v12", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8343a", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "host", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347eap", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e600", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7448_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7448_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power7_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "npe405h2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7t", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8572", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2legp", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fl", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cx_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.5", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8349", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power9_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447a_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.5", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.6", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e5500", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8568", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8343ea", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power5+_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2legp1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7441_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v3.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7451_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.7", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970fx_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8567e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604e_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.8", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e300c2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750gl", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8540_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7448_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.9", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500mc", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e300c3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7448_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v3.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740p", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2h4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc603", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405crb", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347et", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v22", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cx_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e6500", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power8_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2hip3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405crc", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8560_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8568e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cx_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8540_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8377e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v3.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2hip4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "601_v2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v3.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v1.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405ep", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8540_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2ls", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347at", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "npe405l", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8567", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347p", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7441_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cl_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpr", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8343e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347eat", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750gx_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.6", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440epb", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200b_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405d4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970fx_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750gx_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8378", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8560_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "460exb", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e300c1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power7+_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440-xilinx-w-dfpu", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8378e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347ep", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604r", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750gx_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power10_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8560_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8379", + "typename": "", + "static": false, + "deprecated": false + } + ], + "id": "libvirt-40" +} + +{ + "execute": "query-tpm-models", + "id": "libvirt-41" +} + +{ + "return": [ + "tpm-spapr" + ], + "id": "libvirt-41" +} + +{ + "execute": "query-tpm-types", + "id": "libvirt-42" +} + +{ + "return": [ + "passthrough", + "emulator" + ], + "id": "libvirt-42" +} + +{ + "execute": "query-command-line-options", + "id": "libvirt-43" +} + +{ + "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": [ + ], + "option": "acpi" + }, + { + "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": [ + { + "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": [ + ], + "option": "plugin" + }, + { + "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-43" +} + +{ + "execute": "query-migrate-capabilities", + "id": "libvirt-44" +} + +{ + "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" + } + ], + "id": "libvirt-44" +} + +{ + "execute": "qmp_capabilities", + "id": "libvirt-1" +} + +{ + "return": { + }, + "id": "libvirt-1" +} + +{ + "execute": "query-cpu-definitions", + "id": "libvirt-2" +} + +{ + "return": [ + { + "name": "default", + "typename": "604-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "ppc", + "typename": "604-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "ppc32", + "typename": "604-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "ppc64", + "typename": "970fx_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power10", + "typename": "power10_v2.0-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power9", + "typename": "power9_v2.0-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power8nvl", + "typename": "power8nvl_v1.0-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power8", + "typename": "power8_v2.0-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power8e", + "typename": "power8e_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power7+", + "typename": "power7+_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power7", + "typename": "power7_v2.3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power5gs", + "typename": "power5+_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "power5+", + "typename": "power5+_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "970mp", + "typename": "970mp_v1.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "970fx", + "typename": "970fx_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "970", + "typename": "970_v2.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "apollo7pm", + "typename": "7457a_v1.0-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7457a", + "typename": "7457a_v1.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7447a", + "typename": "7447a_v1.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "apollo7", + "typename": "7457_v1.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7457", + "typename": "7457_v1.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7447", + "typename": "7447_v1.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "apollo6", + "typename": "7455_v3.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7455", + "typename": "7455_v3.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7445", + "typename": "7445_v3.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7451", + "typename": "7451_v2.3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7441", + "typename": "7441_v2.3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "vger", + "typename": "7450_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7450", + "typename": "7450_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7448", + "typename": "7448_v2.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "nitro", + "typename": "7410_v1.4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7410", + "typename": "7410_v1.4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "g4", + "typename": "7400_v2.9-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "max", + "typename": "7400_v2.9-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "7400", + "typename": "7400_v2.9-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "goldfinger", + "typename": "755_v2.8-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "755", + "typename": "755_v2.8-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "745", + "typename": "745_v2.8-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "lonestar", + "typename": "750l_v3.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750l", + "typename": "750l_v3.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750gx", + "typename": "750gx_v1.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750fx", + "typename": "750fx_v2.3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750cxe", + "typename": "750cxe_v3.1b-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750cx", + "typename": "750cx_v2.2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750cl", + "typename": "750cl_v2.0-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "conan/doyle", + "typename": "750p-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "g3", + "typename": "750_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "typhoon", + "typename": "750_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "750", + "typename": "750_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "arthur", + "typename": "740_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "740", + "typename": "740_v3.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mach5", + "typename": "604r-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "sirocco", + "typename": "604e_v2.4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "604e", + "typename": "604e_v2.4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "goldeneye", + "typename": "603e7t-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "603r", + "typename": "603e7t-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "vaillant", + "typename": "603e7v-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "stretch", + "typename": "603e_v4.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "603e", + "typename": "603e_v4.1-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "vanilla", + "typename": "603-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "601v", + "typename": "601_v2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "601", + "typename": "601_v2-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8560", + "typename": "mpc8560_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555e", + "typename": "mpc8555e_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555", + "typename": "mpc8555_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e", + "typename": "mpc8548e_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548", + "typename": "mpc8548_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8547e", + "typename": "mpc8547e_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545e", + "typename": "mpc8545e_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545", + "typename": "mpc8545_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544e", + "typename": "mpc8544e_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544", + "typename": "mpc8544_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e", + "typename": "mpc8543e_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543", + "typename": "mpc8543_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541e", + "typename": "mpc8541e_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541", + "typename": "mpc8541_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8540", + "typename": "mpc8540_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533e", + "typename": "mpc8533e_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533", + "typename": "mpc8533_v11-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e500v2", + "typename": "e500v2_v22-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e500v1", + "typename": "e500_v20-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e500", + "typename": "e500v2_v22-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347ea", + "typename": "mpc8347eat-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347e", + "typename": "mpc8347et-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347a", + "typename": "mpc8347at-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347", + "typename": "mpc8347t-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e300", + "typename": "e300c3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "e200", + "typename": "e200z6-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8280", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8275", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8272", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8271", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8270", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8266_hip4", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8266_hip3", + "typename": "g2hip3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8266", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8265_hip4", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8265_hip3", + "typename": "g2hip3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8265", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8264_hip4", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8264_hip3", + "typename": "g2hip3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8264", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8260_hip4", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8260_hip3", + "typename": "g2hip3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8260", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8255_hip4", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8255_hip3", + "typename": "g2hip3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8255", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8250_hip4", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8250_hip3", + "typename": "g2hip3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8250", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8248", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8247", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8245", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8241", + "typename": "g2hip4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "powerquicc-ii", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc82xx", + "typename": "g2legp3-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200b", + "typename": "mpc5200b_v21-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200", + "typename": "mpc5200_v12-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc52xx", + "typename": "mpc5200_v12-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "mpc8240", + "typename": "603-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "460ex", + "typename": "460exb-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "440ep", + "typename": "440epb-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "x2vp50", + "typename": "x2vp20-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "x2vp7", + "typename": "x2vp4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "405gpe", + "typename": "405crc-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "405gp", + "typename": "405gpd-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "405cr", + "typename": "405crc-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "405", + "typename": "405d4-powerpc64-cpu", + "static": false, + "deprecated": false + }, + { + "name": "740_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8343", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545e_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power8nvl_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpb", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "stb04", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2lels", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440epx", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxr", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2le", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "x2vp20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpc", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405cra", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "npe405h", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7441_v2.10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cx_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpd", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v3.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603p", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "601_v0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v3.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8610", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8544e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8547e_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v3.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8379e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8349e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "601_v1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v3.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v1.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.4b", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8547e_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8572e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "602", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7451_v2.10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970fx_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8641d", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543e_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v30", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405ez", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405d2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970fx_v3.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power10_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548e_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405lp", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8349ea", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v3.1b", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440epa", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200b_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.6", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7v", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8377", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447a_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v3.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970mp_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8641", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e200z5", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750p", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.7", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v3.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "x2vp4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447a_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.7", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970mp_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8545e_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e200z6", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.8", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpa", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "stb03", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.8", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power9_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457a_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8349a", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2gp", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "stb25", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cl_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457a_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2legp3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347t", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440-xilinx", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347ap", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604e_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457a_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7v1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v4.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "npe4gs3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970fx_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604e_v2.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e300c4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7v2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power8e_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200_v12", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8343a", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347eap", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e600", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7448_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7457_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7448_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power7_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "npe405h2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7t", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8572", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2legp", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fl", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cx_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.5", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8349", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power9_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7447a_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.5", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8548_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8543_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.6", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e5500", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8568", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8343ea", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e7", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power5+_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2legp1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7441_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v3.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7451_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.7", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970fx_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8567e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604e_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.8", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e300c2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750gl", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8540_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7448_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.9", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500mc", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e300c3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7448_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v3.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8555_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740p", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2h4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "740_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc603", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "745_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405crb", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347et", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v22", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cx_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e6500", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power8_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2hip3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405crc", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "755_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8560_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8568e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cx_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8540_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8377e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7450_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v3.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7445_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2hip4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "601_v2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v3.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v1.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cxe_v2.4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7455_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603e_v3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405ep", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8540_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "g2ls", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347at", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "npe405l", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8567", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "603", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347p", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7441_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e500v2_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750cl_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v2.3", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8541e_v11", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405gpr", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750fx_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8343e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347eat", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7410_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750gx_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "7400_v2.6", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440epb", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc5200b_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "405d4", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970fx_v2.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750gx_v1.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8378", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8560_v20", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "460exb", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "e300c1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power7+_v2.1", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "440-xilinx-w-dfpu", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8378e", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8347ep", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750l_v3.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "604r", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "750gx_v1.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "power10_v1.0", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8560_v21", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "970_v2.2", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8533e_v10", + "typename": "", + "static": false, + "deprecated": false + }, + { + "name": "mpc8379", + "typename": "", + "static": false, + "deprecated": false + } + ], + "id": "libvirt-2" +} + +{ + "execute": "query-machines", + "id": "libvirt-3" +} + +{ + "return": [ + { + "hotpluggable-cpus": false, + "name": "powernv9", + "numa-mem-supported": false, + "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "cpu-max": 2048, + "deprecated": false, + "default-ram-id": "pnv.ram", + "alias": "powernv" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-5.1", + "numa-mem-supported": false, + "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "g3beige", + "numa-mem-supported": false, + "default-cpu-type": "750_v3.1-powerpc64-cpu", + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ppc_heathrow.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.12", + "numa-mem-supported": true, + "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.9", + "numa-mem-supported": true, + "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-5.2", + "numa-mem-supported": false, + "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "ref405ep", + "numa-mem-supported": false, + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ef405ep.ram" + }, + { + "hotpluggable-cpus": false, + "name": "pseries-2.2", + "numa-mem-supported": true, + "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "40p", + "numa-mem-supported": false, + "default-cpu-type": "604-powerpc64-cpu", + "cpu-max": 1, + "deprecated": false + }, + { + "hotpluggable-cpus": true, + "name": "pseries-4.2", + "numa-mem-supported": true, + "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.12-sxxm", + "numa-mem-supported": true, + "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "pseries-2.3", + "numa-mem-supported": true, + "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "pseries-2.6", + "numa-mem-supported": true, + "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-6.2", + "numa-mem-supported": false, + "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "sam460ex", + "numa-mem-supported": false, + "default-cpu-type": "460exb-powerpc64-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-powerpc64-cpu", + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "pegasos2.ram" + }, + { + "hotpluggable-cpus": false, + "name": "virtex-ml507", + "numa-mem-supported": false, + "default-cpu-type": "440-xilinx-powerpc64-cpu", + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-3.0", + "numa-mem-supported": true, + "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.7", + "numa-mem-supported": true, + "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "none", + "numa-mem-supported": false, + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-5.0", + "numa-mem-supported": true, + "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.8", + "numa-mem-supported": true, + "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "x-remote", + "numa-mem-supported": false, + "cpu-max": 1, + "deprecated": false + }, + { + "hotpluggable-cpus": true, + "name": "pseries-7.0", + "numa-mem-supported": false, + "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "is-default": true, + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram", + "alias": "pseries" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-4.0", + "numa-mem-supported": true, + "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "bamboo", + "numa-mem-supported": false, + "default-cpu-type": "440epb-powerpc64-cpu", + "cpu-max": 1, + "deprecated": false, + "default-ram-id": "ppc4xx.sdram" + }, + { + "hotpluggable-cpus": false, + "name": "pseries-2.1", + "numa-mem-supported": true, + "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "taihu", + "numa-mem-supported": false, + "cpu-max": 1, + "deprecated": true, + "default-ram-id": "taihu_405ep.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.10", + "numa-mem-supported": true, + "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "pseries-2.4", + "numa-mem-supported": true, + "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-6.0", + "numa-mem-supported": false, + "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "mpc8544ds", + "numa-mem-supported": false, + "default-cpu-type": "e500v2_v30-powerpc64-cpu", + "cpu-max": 15, + "deprecated": false, + "default-ram-id": "mpc8544ds.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-4.1", + "numa-mem-supported": true, + "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "powernv8", + "numa-mem-supported": false, + "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "cpu-max": 2048, + "deprecated": false, + "default-ram-id": "pnv.ram" + }, + { + "hotpluggable-cpus": false, + "name": "powernv10", + "numa-mem-supported": false, + "default-cpu-type": "power10_v2.0-powerpc64-cpu", + "cpu-max": 2048, + "deprecated": false, + "default-ram-id": "pnv.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-2.11", + "numa-mem-supported": true, + "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "pseries-2.5", + "numa-mem-supported": true, + "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-6.1", + "numa-mem-supported": false, + "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": true, + "name": "pseries-3.1", + "numa-mem-supported": true, + "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "cpu-max": 2147483647, + "deprecated": false, + "default-ram-id": "ppc_spapr.ram" + }, + { + "hotpluggable-cpus": false, + "name": "mac99", + "numa-mem-supported": false, + "default-cpu-type": "970fx_v3.1-powerpc64-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-powerpc64-cpu", + "cpu-max": 32, + "deprecated": false, + "default-ram-id": "mpc8544ds.ram" + } + ], + "id": "libvirt-3" +} diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml new file mode 100644 index 0000000000..88eee87587 --- /dev/null +++ b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml @@ -0,0 +1,1139 @@ +<qemuCaps> + <emulator>/usr/bin/qemu-system-ppc64</emulator> + <qemuctime>0</qemuctime> + <selfctime>0</selfctime> + <selfvers>0</selfvers> + <flag name='kvm'/> + <flag name='hda-duplex'/> + <flag name='virtio-tx-alg'/> + <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-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='dump-guest-memory'/> + <flag name='nec-usb-xhci'/> + <flag name='lsi'/> + <flag name='virtio-scsi-pci'/> + <flag name='blockio'/> + <flag name='disable-s3'/> + <flag name='disable-s4'/> + <flag name='ide-drive.wwn'/> + <flag name='scsi-disk.wwn'/> + <flag name='vnc'/> + <flag name='VGA'/> + <flag name='cirrus-vga'/> + <flag name='vmware-svga'/> + <flag name='usb-serial'/> + <flag name='nbd-server'/> + <flag name='virtio-rng'/> + <flag name='rng-random'/> + <flag name='rng-egd'/> + <flag name='megasas'/> + <flag name='tpm-passthrough'/> + <flag name='nvram'/> + <flag name='pci-bridge'/> + <flag name='vfio-pci'/> + <flag name='drive-discard'/> + <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='active-commit'/> + <flag name='change-backing-file'/> + <flag name='memory-backend-ram'/> + <flag name='numa'/> + <flag name='memory-backend-file'/> + <flag name='usb-audio'/> + <flag name='iothread'/> + <flag name='migrate-rdma'/> + <flag name='VGA.vgamem_mb'/> + <flag name='vmware-svga.vgamem_mb'/> + <flag name='pc-dimm'/> + <flag name='pci-serial'/> + <flag name='migration-event'/> + <flag name='ioh3420'/> + <flag name='x3130-upstream'/> + <flag name='xio3130-downstream'/> + <flag name='rtl8139'/> + <flag name='e1000'/> + <flag name='virtio-net'/> + <flag name='incoming-defer'/> + <flag name='virtio-gpu'/> + <flag name='virtio-keyboard'/> + <flag name='virtio-mouse'/> + <flag name='virtio-tablet'/> + <flag name='virtio-input-host'/> + <flag name='chardev-file-append'/> + <flag name='vserport-change-event'/> + <flag name='virtio-balloon-pci.deflate-on-oom'/> + <flag name='mptsas1068'/> + <flag name='chardev-logfile'/> + <flag name='nec-usb-xhci-ports'/> + <flag name='virtio-scsi-pci.iothread'/> + <flag name='drive-detect-zeroes'/> + <flag name='virtio-pci-disable-legacy'/> + <flag name='query-hotpluggable-cpus'/> + <flag name='virtio-net.rx_queue_size'/> + <flag name='virtio-vga'/> + <flag name='ivshmem-plain'/> + <flag name='ivshmem-doorbell'/> + <flag name='gluster.debug_level'/> + <flag name='vhost-scsi'/> + <flag name='virtio-net.host_mtu'/> + <flag name='nvdimm'/> + <flag name='pcie-root-port'/> + <flag name='query-cpu-definitions'/> + <flag name='block-write-threshold'/> + <flag name='query-named-block-nodes'/> + <flag name='qemu-xhci'/> + <flag name='spapr-pci-host-bridge'/> + <flag name='spapr-pci-host-bridge.numa_node'/> + <flag name='virtio-net.tx_queue_size'/> + <flag name='chardev-reconnect'/> + <flag name='virtio-blk.num-queues'/> + <flag name='machine.pseries.resize-hpt'/> + <flag name='spapr-vty'/> + <flag name='disk-share-rw'/> + <flag name='isa-serial'/> + <flag name='machine.pseries.max-cpu-compat'/> + <flag name='dump-completed'/> + <flag name='qcow2-luks'/> + <flag name='pcie-pci-bridge'/> + <flag name='query-cpus-fast'/> + <flag name='disk-write-cache'/> + <flag name='nbd-tls'/> + <flag name='pr-manager-helper'/> + <flag name='qom-list-properties'/> + <flag name='memory-backend-file.discard-data'/> + <flag name='screendump_device'/> + <flag name='hda-output'/> + <flag name='blockdev-del'/> + <flag name='vhost-vsock'/> + <flag name='chardev-fd-pass'/> + <flag name='tpm-emulator'/> + <flag name='machine.pseries.cap-hpt-max-page-size'/> + <flag name='machine.pseries.cap-htm'/> + <flag name='usb-storage.werror'/> + <flag name='vfio-pci.display'/> + <flag name='blockdev'/> + <flag name='memory-backend-memfd'/> + <flag name='memory-backend-memfd.hugetlb'/> + <flag name='iothread.poll-max-ns'/> + <flag name='machine.pseries.cap-nested-hv'/> + <flag name='memory-backend-file.align'/> + <flag name='nvdimm.unarmed'/> + <flag name='scsi-disk.device_id'/> + <flag name='virtio-pci-non-transitional'/> + <flag name='overcommit'/> + <flag name='query-current-machine'/> + <flag name='bitmap-merge'/> + <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='vhost-user-vga'/> + <flag name='incremental-backup'/> + <flag name='machine.pseries.cap-ccf-assist'/> + <flag name='blockdev-file-dynamic-auto-read-only'/> + <flag name='savevm-monitor-nodes'/> + <flag name='drive-nvme'/> + <flag name='smp-dies'/> + <flag name='i8042'/> + <flag name='rng-builtin'/> + <flag name='virtio-net.failover'/> + <flag name='tpm-spapr'/> + <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='storage.werror'/> + <flag name='fsdev.multidevs'/> + <flag name='virtio.packed'/> + <flag name='pcie-root-port.hotplug'/> + <flag name='machine.pseries.cap-cfpc'/> + <flag name='machine.pseries.cap-sbbc'/> + <flag name='machine.pseries.cap-ibs'/> + <flag name='tcg'/> + <flag name='virtio-blk-pci.scsi.default.disabled'/> + <flag name='pvscsi'/> + <flag name='migration-param.bandwidth'/> + <flag name='migration-param.downtime'/> + <flag name='migration-param.xbzrle-cache-size'/> + <flag name='spapr-tpm-proxy'/> + <flag name='numa.hmat'/> + <flag name='blockdev-hostdev-scsi'/> + <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='cpu-max'/> + <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='audiodev'/> + <flag name='blockdev-backup'/> + <flag name='object.qapified'/> + <flag name='rotation-rate'/> + <flag name='compat-deprecated'/> + <flag name='acpi-index'/> + <flag name='input-linux'/> + <flag name='confidential-guest-support'/> + <flag name='query-display-options'/> + <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='query-dirty-rate'/> + <flag name='rbd-encryption'/> + <flag name='sev-guest-kernel-hashes'/> + <flag name='device.json+hotplug'/> + <version>6002050</version> + <kvmVersion>0</kvmVersion> + <microcodeVersion>42900243</microcodeVersion> + <package>v6.2.0-886-g6621441db5</package> + <arch>ppc64</arch> + <cpu type='kvm' name='default' typename='604-powerpc64-cpu'/> + <cpu type='kvm' name='ppc' typename='604-powerpc64-cpu'/> + <cpu type='kvm' name='ppc32' typename='604-powerpc64-cpu'/> + <cpu type='kvm' name='ppc64' typename='970fx_v3.1-powerpc64-cpu'/> + <cpu type='kvm' name='power10' typename='power10_v2.0-powerpc64-cpu'/> + <cpu type='kvm' name='POWER9' typename='host-powerpc64-cpu'/> + <cpu type='kvm' name='power8nvl' typename='power8nvl_v1.0-powerpc64-cpu'/> + <cpu type='kvm' name='POWER8' typename='power8_v2.0-powerpc64-cpu'/> + <cpu type='kvm' name='power8e' typename='power8e_v2.1-powerpc64-cpu'/> + <cpu type='kvm' name='power7+' typename='power7+_v2.1-powerpc64-cpu'/> + <cpu type='kvm' name='POWER7' typename='power7_v2.3-powerpc64-cpu'/> + <cpu type='kvm' name='power5gs' typename='power5+_v2.1-powerpc64-cpu'/> + <cpu type='kvm' name='power5+' typename='power5+_v2.1-powerpc64-cpu'/> + <cpu type='kvm' name='970mp' typename='970mp_v1.1-powerpc64-cpu'/> + <cpu type='kvm' name='970fx' typename='970fx_v3.1-powerpc64-cpu'/> + <cpu type='kvm' name='970' typename='970_v2.2-powerpc64-cpu'/> + <cpu type='kvm' name='apollo7pm' typename='7457a_v1.0-powerpc64-cpu'/> + <cpu type='kvm' name='7457a' typename='7457a_v1.2-powerpc64-cpu'/> + <cpu type='kvm' name='7447a' typename='7447a_v1.2-powerpc64-cpu'/> + <cpu type='kvm' name='apollo7' typename='7457_v1.2-powerpc64-cpu'/> + <cpu type='kvm' name='7457' typename='7457_v1.2-powerpc64-cpu'/> + <cpu type='kvm' name='7447' typename='7447_v1.1-powerpc64-cpu'/> + <cpu type='kvm' name='apollo6' typename='7455_v3.2-powerpc64-cpu'/> + <cpu type='kvm' name='7455' typename='7455_v3.2-powerpc64-cpu'/> + <cpu type='kvm' name='7445' typename='7445_v3.2-powerpc64-cpu'/> + <cpu type='kvm' name='7451' typename='7451_v2.3-powerpc64-cpu'/> + <cpu type='kvm' name='7441' typename='7441_v2.3-powerpc64-cpu'/> + <cpu type='kvm' name='vger' typename='7450_v2.1-powerpc64-cpu'/> + <cpu type='kvm' name='7450' typename='7450_v2.1-powerpc64-cpu'/> + <cpu type='kvm' name='7448' typename='7448_v2.1-powerpc64-cpu'/> + <cpu type='kvm' name='nitro' typename='7410_v1.4-powerpc64-cpu'/> + <cpu type='kvm' name='7410' typename='7410_v1.4-powerpc64-cpu'/> + <cpu type='kvm' name='g4' typename='7400_v2.9-powerpc64-cpu'/> + <cpu type='kvm' name='max' typename='7400_v2.9-powerpc64-cpu'/> + <cpu type='kvm' name='7400' typename='7400_v2.9-powerpc64-cpu'/> + <cpu type='kvm' name='goldfinger' typename='755_v2.8-powerpc64-cpu'/> + <cpu type='kvm' name='755' typename='755_v2.8-powerpc64-cpu'/> + <cpu type='kvm' name='745' typename='745_v2.8-powerpc64-cpu'/> + <cpu type='kvm' name='lonestar' typename='750l_v3.2-powerpc64-cpu'/> + <cpu type='kvm' name='750l' typename='750l_v3.2-powerpc64-cpu'/> + <cpu type='kvm' name='750gx' typename='750gx_v1.2-powerpc64-cpu'/> + <cpu type='kvm' name='750fx' typename='750fx_v2.3-powerpc64-cpu'/> + <cpu type='kvm' name='750cxe' typename='750cxe_v3.1b-powerpc64-cpu'/> + <cpu type='kvm' name='750cx' typename='750cx_v2.2-powerpc64-cpu'/> + <cpu type='kvm' name='750cl' typename='750cl_v2.0-powerpc64-cpu'/> + <cpu type='kvm' name='conan/doyle' typename='750p-powerpc64-cpu'/> + <cpu type='kvm' name='g3' typename='750_v3.1-powerpc64-cpu'/> + <cpu type='kvm' name='typhoon' typename='750_v3.1-powerpc64-cpu'/> + <cpu type='kvm' name='750' typename='750_v3.1-powerpc64-cpu'/> + <cpu type='kvm' name='arthur' typename='740_v3.1-powerpc64-cpu'/> + <cpu type='kvm' name='740' typename='740_v3.1-powerpc64-cpu'/> + <cpu type='kvm' name='mach5' typename='604r-powerpc64-cpu'/> + <cpu type='kvm' name='sirocco' typename='604e_v2.4-powerpc64-cpu'/> + <cpu type='kvm' name='604e' typename='604e_v2.4-powerpc64-cpu'/> + <cpu type='kvm' name='goldeneye' typename='603e7t-powerpc64-cpu'/> + <cpu type='kvm' name='603r' typename='603e7t-powerpc64-cpu'/> + <cpu type='kvm' name='vaillant' typename='603e7v-powerpc64-cpu'/> + <cpu type='kvm' name='stretch' typename='603e_v4.1-powerpc64-cpu'/> + <cpu type='kvm' name='603e' typename='603e_v4.1-powerpc64-cpu'/> + <cpu type='kvm' name='vanilla' typename='603-powerpc64-cpu'/> + <cpu type='kvm' name='601v' typename='601_v2-powerpc64-cpu'/> + <cpu type='kvm' name='601' typename='601_v2-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8560' typename='mpc8560_v21-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8555e' typename='mpc8555e_v11-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8555' typename='mpc8555_v11-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8548e' typename='mpc8548e_v21-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8548' typename='mpc8548_v21-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8547e' typename='mpc8547e_v21-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8545e' typename='mpc8545e_v21-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8545' typename='mpc8545_v21-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8544e' typename='mpc8544e_v11-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8544' typename='mpc8544_v11-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8543e' typename='mpc8543e_v21-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8543' typename='mpc8543_v21-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8541e' typename='mpc8541e_v11-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8541' typename='mpc8541_v11-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8540' typename='mpc8540_v21-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8533e' typename='mpc8533e_v11-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8533' typename='mpc8533_v11-powerpc64-cpu'/> + <cpu type='kvm' name='e500v2' typename='e500v2_v22-powerpc64-cpu'/> + <cpu type='kvm' name='e500v1' typename='e500_v20-powerpc64-cpu'/> + <cpu type='kvm' name='e500' typename='e500v2_v22-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8347ea' typename='mpc8347eat-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8347e' typename='mpc8347et-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8347a' typename='mpc8347at-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8347' typename='mpc8347t-powerpc64-cpu'/> + <cpu type='kvm' name='e300' typename='e300c3-powerpc64-cpu'/> + <cpu type='kvm' name='e200' typename='e200z6-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8280' typename='g2legp3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8275' typename='g2legp3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8272' typename='g2legp3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8271' typename='g2legp3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8270' typename='g2legp3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8266_hip4' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8266_hip3' typename='g2hip3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8266' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8265_hip4' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8265_hip3' typename='g2hip3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8265' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8264_hip4' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8264_hip3' typename='g2hip3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8264' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8260_hip4' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8260_hip3' typename='g2hip3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8260' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8255_hip4' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8255_hip3' typename='g2hip3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8255' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8250_hip4' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8250_hip3' typename='g2hip3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8250' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8248' typename='g2legp3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8247' typename='g2legp3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8245' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8241' typename='g2hip4-powerpc64-cpu'/> + <cpu type='kvm' name='powerquicc-ii' typename='g2legp3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc82xx' typename='g2legp3-powerpc64-cpu'/> + <cpu type='kvm' name='mpc5200b' typename='mpc5200b_v21-powerpc64-cpu'/> + <cpu type='kvm' name='mpc5200' typename='mpc5200_v12-powerpc64-cpu'/> + <cpu type='kvm' name='mpc52xx' typename='mpc5200_v12-powerpc64-cpu'/> + <cpu type='kvm' name='mpc8240' typename='603-powerpc64-cpu'/> + <cpu type='kvm' name='460ex' typename='460exb-powerpc64-cpu'/> + <cpu type='kvm' name='440ep' typename='440epb-powerpc64-cpu'/> + <cpu type='kvm' name='x2vp50' typename='x2vp20-powerpc64-cpu'/> + <cpu type='kvm' name='x2vp7' typename='x2vp4-powerpc64-cpu'/> + <cpu type='kvm' name='405gpe' typename='405crc-powerpc64-cpu'/> + <cpu type='kvm' name='405gp' typename='405gpd-powerpc64-cpu'/> + <cpu type='kvm' name='405cr' typename='405crc-powerpc64-cpu'/> + <cpu type='kvm' name='405' typename='405d4-powerpc64-cpu'/> + <cpu type='kvm' name='740_v2.0'/> + <cpu type='kvm' name='mpc8343'/> + <cpu type='kvm' name='mpc8545e_v21'/> + <cpu type='kvm' name='power8nvl_v1.0'/> + <cpu type='kvm' name='mpc8543e_v10'/> + <cpu type='kvm' name='mpc8555_v10'/> + <cpu type='kvm' name='750_v2.0'/> + <cpu type='kvm' name='405gpb'/> + <cpu type='kvm' name='stb04'/> + <cpu type='kvm' name='mpc8544_v10'/> + <cpu type='kvm' name='g2lels'/> + <cpu type='kvm' name='mpc8548e_v10'/> + <cpu type='kvm' name='440epx'/> + <cpu type='kvm' name='750cxr'/> + <cpu type='kvm' name='g2le'/> + <cpu type='kvm' name='mpc8543e_v11'/> + <cpu type='kvm' name='755_v2.0'/> + <cpu type='kvm' name='e500v2_v20'/> + <cpu type='kvm' name='x2vp20'/> + <cpu type='kvm' name='405gpc'/> + <cpu type='kvm' name='mpc8544_v11'/> + <cpu type='kvm' name='mpc8548e_v11'/> + <cpu type='kvm' name='405cra'/> + <cpu type='kvm' name='npe405h'/> + <cpu type='kvm' name='mpc8533_v11'/> + <cpu type='kvm' name='7441_v2.10'/> + <cpu type='kvm' name='mpc8544e_v10'/> + <cpu type='kvm' name='750cxe_v2.1'/> + <cpu type='kvm' name='750cx_v2.0'/> + <cpu type='kvm' name='405gpd'/> + <cpu type='kvm' name='7445_v3.2'/> + <cpu type='kvm' name='mpc8545_v20'/> + <cpu type='kvm' name='603p'/> + <cpu type='kvm' name='601_v0'/> + <cpu type='kvm' name='7400_v2.1'/> + <cpu type='kvm' name='7455_v3.2'/> + <cpu type='kvm' name='603e_v1.2'/> + <cpu type='kvm' name='mpc8610'/> + <cpu type='kvm' name='mpc8544e_v11'/> + <cpu type='kvm' name='750cxe_v2.2'/> + <cpu type='kvm' name='mpc8547e_v20'/> + <cpu type='kvm' name='7445_v3.3'/> + <cpu type='kvm' name='mpc8545_v21'/> + <cpu type='kvm' name='mpc8379e'/> + <cpu type='kvm' name='mpc8349e'/> + <cpu type='kvm' name='601_v1'/> + <cpu type='kvm' name='7400_v2.2'/> + <cpu type='kvm' name='7455_v3.3'/> + <cpu type='kvm' name='603e_v1.3'/> + <cpu type='kvm' name='750cxe_v2.4b'/> + <cpu type='kvm' name='mpc8543_v11'/> + <cpu type='kvm' name='750cxe_v2.3'/> + <cpu type='kvm' name='mpc8547e_v21'/> + <cpu type='kvm' name='mpc8572e'/> + <cpu type='kvm' name='mpc8543e_v20'/> + <cpu type='kvm' name='750fx_v2.1'/> + <cpu type='kvm' name='602'/> + <cpu type='kvm' name='mpc8555e_v10'/> + <cpu type='kvm' name='7451_v2.10'/> + <cpu type='kvm' name='750l_v2.2'/> + <cpu type='kvm' name='970fx_v3.0'/> + <cpu type='kvm' name='mpc8548e_v20'/> + <cpu type='kvm' name='mpc8641d'/> + <cpu type='kvm' name='7410_v1.0'/> + <cpu type='kvm' name='mpc8543e_v21'/> + <cpu type='kvm' name='750fx_v2.2'/> + <cpu type='kvm' name='e500v2_v30'/> + <cpu type='kvm' name='405ez'/> + <cpu type='kvm' name='mpc8555e_v11'/> + <cpu type='kvm' name='405d2'/> + <cpu type='kvm' name='970fx_v3.1'/> + <cpu type='kvm' name='power10_v2.0'/> + <cpu type='kvm' name='mpc8548e_v21'/> + <cpu type='kvm' name='405lp'/> + <cpu type='kvm' name='mpc8349ea'/> + <cpu type='kvm' name='750e'/> + <cpu type='kvm' name='750cxe_v3.1b'/> + <cpu type='kvm' name='740_v3.0'/> + <cpu type='kvm' name='440epa'/> + <cpu type='kvm' name='mpc5200b_v20'/> + <cpu type='kvm' name='745_v2.6'/> + <cpu type='kvm' name='750_v3.0'/> + <cpu type='kvm' name='603e7v'/> + <cpu type='kvm' name='mpc8377'/> + <cpu type='kvm' name='7445_v1.0'/> + <cpu type='kvm' name='7447a_v1.1'/> + <cpu type='kvm' name='740_v3.1'/> + <cpu type='kvm' name='970mp_v1.0'/> + <cpu type='kvm' name='mpc8641'/> + <cpu type='kvm' name='e200z5'/> + <cpu type='kvm' name='750p'/> + <cpu type='kvm' name='745_v2.7'/> + <cpu type='kvm' name='750_v3.1'/> + <cpu type='kvm' name='7450_v1.1'/> + <cpu type='kvm' name='x2vp4'/> + <cpu type='kvm' name='7447a_v1.2'/> + <cpu type='kvm' name='mpc8543_v21'/> + <cpu type='kvm' name='755_v2.7'/> + <cpu type='kvm' name='970mp_v1.1'/> + <cpu type='kvm' name='mpc8545e_v20'/> + <cpu type='kvm' name='e200z6'/> + <cpu type='kvm' name='745_v2.8'/> + <cpu type='kvm' name='7450_v1.2'/> + <cpu type='kvm' name='405gpa'/> + <cpu type='kvm' name='stb03'/> + <cpu type='kvm' name='755_v2.8'/> + <cpu type='kvm' name='power9_v1.0'/> + <cpu type='kvm' name='7457a_v1.0'/> + <cpu type='kvm' name='mpc8349a'/> + <cpu type='kvm' name='g2gp'/> + <cpu type='kvm' name='stb25'/> + <cpu type='kvm' name='750cl_v1.0'/> + <cpu type='kvm' name='7457a_v1.1'/> + <cpu type='kvm' name='g2legp3'/> + <cpu type='kvm' name='mpc8347t'/> + <cpu type='kvm' name='mpc8533_v10'/> + <cpu type='kvm' name='440-xilinx'/> + <cpu type='kvm' name='mpc8548_v10'/> + <cpu type='kvm' name='mpc8347ap'/> + <cpu type='kvm' name='604e_v1.0'/> + <cpu type='kvm' name='7457a_v1.2'/> + <cpu type='kvm' name='7400_v2.0'/> + <cpu type='kvm' name='603e7v1'/> + <cpu type='kvm' name='7447_v1.0'/> + <cpu type='kvm' name='603e_v4.1'/> + <cpu type='kvm' name='603e_v1.1'/> + <cpu type='kvm' name='npe4gs3'/> + <cpu type='kvm' name='mpc8548_v11'/> + <cpu type='kvm' name='970fx_v1.0'/> + <cpu type='kvm' name='604e_v2.4'/> + <cpu type='kvm' name='7457_v1.0'/> + <cpu type='kvm' name='e300c4'/> + <cpu type='kvm' name='603e7v2'/> + <cpu type='kvm' name='7447_v1.1'/> + <cpu type='kvm' name='mpc8543_v10'/> + <cpu type='kvm' name='power8e_v2.1'/> + <cpu type='kvm' name='mpc5200_v12'/> + <cpu type='kvm' name='750l_v2.0'/> + <cpu type='kvm' name='mpc8343a'/> + <cpu type='kvm' name='host'/> + <cpu type='kvm' name='mpc8347eap'/> + <cpu type='kvm' name='7457_v1.1'/> + <cpu type='kvm' name='e600'/> + <cpu type='kvm' name='750fx_v2.0'/> + <cpu type='kvm' name='740_v1.0'/> + <cpu type='kvm' name='7448_v1.0'/> + <cpu type='kvm' name='750l_v2.1'/> + <cpu type='kvm' name='7457_v1.2'/> + <cpu type='kvm' name='750_v1.0'/> + <cpu type='kvm' name='745_v2.3'/> + <cpu type='kvm' name='745_v1.0'/> + <cpu type='kvm' name='7448_v1.1'/> + <cpu type='kvm' name='755_v1.0'/> + <cpu type='kvm' name='power7_v2.3'/> + <cpu type='kvm' name='npe405h2'/> + <cpu type='kvm' name='745_v2.4'/> + <cpu type='kvm' name='745_v1.1'/> + <cpu type='kvm' name='603e7t'/> + <cpu type='kvm' name='mpc8572'/> + <cpu type='kvm' name='g2legp'/> + <cpu type='kvm' name='755_v2.4'/> + <cpu type='kvm' name='mpc8548_v20'/> + <cpu type='kvm' name='755_v1.1'/> + <cpu type='kvm' name='750fl'/> + <cpu type='kvm' name='750cx_v1.0'/> + <cpu type='kvm' name='745_v2.5'/> + <cpu type='kvm' name='mpc8349'/> + <cpu type='kvm' name='power9_v2.0'/> + <cpu type='kvm' name='7447a_v1.0'/> + <cpu type='kvm' name='755_v2.5'/> + <cpu type='kvm' name='mpc8548_v21'/> + <cpu type='kvm' name='603e_v4'/> + <cpu type='kvm' name='7450_v1.0'/> + <cpu type='kvm' name='mpc8543_v20'/> + <cpu type='kvm' name='755_v2.6'/> + <cpu type='kvm' name='e5500'/> + <cpu type='kvm' name='mpc8568'/> + <cpu type='kvm' name='mpc8343ea'/> + <cpu type='kvm' name='g2'/> + <cpu type='kvm' name='mpc8541_v10'/> + <cpu type='kvm' name='7455_v1.0'/> + <cpu type='kvm' name='750cxe_v3.0'/> + <cpu type='kvm' name='603e7'/> + <cpu type='kvm' name='power5+_v2.1'/> + <cpu type='kvm' name='g2legp1'/> + <cpu type='kvm' name='7441_v2.3'/> + <cpu type='kvm' name='mpc8541_v11'/> + <cpu type='kvm' name='750cxe_v3.1'/> + <cpu type='kvm' name='7410_v1.3'/> + <cpu type='kvm' name='7451_v2.3'/> + <cpu type='kvm' name='7400_v2.7'/> + <cpu type='kvm' name='e500_v10'/> + <cpu type='kvm' name='603e_v2.2'/> + <cpu type='kvm' name='970fx_v2.1'/> + <cpu type='kvm' name='7410_v1.4'/> + <cpu type='kvm' name='mpc8567e'/> + <cpu type='kvm' name='604e_v2.2'/> + <cpu type='kvm' name='7400_v2.8'/> + <cpu type='kvm' name='740e'/> + <cpu type='kvm' name='e300c2'/> + <cpu type='kvm' name='750gl'/> + <cpu type='kvm' name='mpc8540_v10'/> + <cpu type='kvm' name='7448_v2.0'/> + <cpu type='kvm' name='mpc5200_v10'/> + <cpu type='kvm' name='7400_v2.9'/> + <cpu type='kvm' name='mpc8533e_v11'/> + <cpu type='kvm' name='745_v2.0'/> + <cpu type='kvm' name='e500mc'/> + <cpu type='kvm' name='e300c3'/> + <cpu type='kvm' name='740_v2.1'/> + <cpu type='kvm' name='7448_v2.1'/> + <cpu type='kvm' name='750l_v3.2'/> + <cpu type='kvm' name='mpc8555_v11'/> + <cpu type='kvm' name='mpc5200_v11'/> + <cpu type='kvm' name='740p'/> + <cpu type='kvm' name='750_v2.1'/> + <cpu type='kvm' name='745_v2.1'/> + <cpu type='kvm' name='g2h4'/> + <cpu type='kvm' name='740_v2.2'/> + <cpu type='kvm' name='755_v2.1'/> + <cpu type='kvm' name='mpc603'/> + <cpu type='kvm' name='e500v2_v21'/> + <cpu type='kvm' name='750_v2.2'/> + <cpu type='kvm' name='745_v2.2'/> + <cpu type='kvm' name='405crb'/> + <cpu type='kvm' name='mpc8347et'/> + <cpu type='kvm' name='755_v2.2'/> + <cpu type='kvm' name='e500v2_v22'/> + <cpu type='kvm' name='750cx_v2.1'/> + <cpu type='kvm' name='e6500'/> + <cpu type='kvm' name='e500_v20'/> + <cpu type='kvm' name='7450_v2.0'/> + <cpu type='kvm' name='power8_v2.0'/> + <cpu type='kvm' name='g2hip3'/> + <cpu type='kvm' name='405crc'/> + <cpu type='kvm' name='755_v2.3'/> + <cpu type='kvm' name='mpc8560_v10'/> + <cpu type='kvm' name='mpc8568e'/> + <cpu type='kvm' name='750cx_v2.2'/> + <cpu type='kvm' name='mpc8540_v20'/> + <cpu type='kvm' name='mpc8377e'/> + <cpu type='kvm' name='7450_v2.1'/> + <cpu type='kvm' name='7445_v3.4'/> + <cpu type='kvm' name='7445_v2.1'/> + <cpu type='kvm' name='g2hip4'/> + <cpu type='kvm' name='601_v2'/> + <cpu type='kvm' name='7400_v1.0'/> + <cpu type='kvm' name='7455_v3.4'/> + <cpu type='kvm' name='603e_v1.4'/> + <cpu type='kvm' name='750cxe_v2.4'/> + <cpu type='kvm' name='7455_v2.1'/> + <cpu type='kvm' name='603e_v3'/> + <cpu type='kvm' name='405ep'/> + <cpu type='kvm' name='mpc8540_v21'/> + <cpu type='kvm' name='g2ls'/> + <cpu type='kvm' name='mpc8347at'/> + <cpu type='kvm' name='npe405l'/> + <cpu type='kvm' name='mpc8541e_v10'/> + <cpu type='kvm' name='7400_v1.1'/> + <cpu type='kvm' name='mpc8567'/> + <cpu type='kvm' name='603'/> + <cpu type='kvm' name='mpc8347p'/> + <cpu type='kvm' name='7441_v2.1'/> + <cpu type='kvm' name='7410_v1.1'/> + <cpu type='kvm' name='e500v2_v10'/> + <cpu type='kvm' name='750cl_v2.0'/> + <cpu type='kvm' name='750fx_v2.3'/> + <cpu type='kvm' name='604'/> + <cpu type='kvm' name='mpc8541e_v11'/> + <cpu type='kvm' name='405gpr'/> + <cpu type='kvm' name='750fx_v1.0'/> + <cpu type='kvm' name='mpc8343e'/> + <cpu type='kvm' name='mpc8347eat'/> + <cpu type='kvm' name='7410_v1.2'/> + <cpu type='kvm' name='750gx_v1.0'/> + <cpu type='kvm' name='7400_v2.6'/> + <cpu type='kvm' name='440epb'/> + <cpu type='kvm' name='mpc5200b_v21'/> + <cpu type='kvm' name='405d4'/> + <cpu type='kvm' name='970fx_v2.0'/> + <cpu type='kvm' name='750gx_v1.1'/> + <cpu type='kvm' name='mpc8378'/> + <cpu type='kvm' name='mpc8560_v20'/> + <cpu type='kvm' name='460exb'/> + <cpu type='kvm' name='e300c1'/> + <cpu type='kvm' name='power7+_v2.1'/> + <cpu type='kvm' name='440-xilinx-w-dfpu'/> + <cpu type='kvm' name='mpc8378e'/> + <cpu type='kvm' name='mpc8347ep'/> + <cpu type='kvm' name='750l_v3.0'/> + <cpu type='kvm' name='604r'/> + <cpu type='kvm' name='750gx_v1.2'/> + <cpu type='kvm' name='power10_v1.0'/> + <cpu type='kvm' name='mpc8560_v21'/> + <cpu type='kvm' name='970_v2.2'/> + <cpu type='kvm' name='mpc8533e_v10'/> + <cpu type='kvm' name='mpc8379'/> + <machine type='kvm' name='pseries-7.0' alias='pseries' hotplugCpus='yes' maxCpus='2147483647' default='yes' defaultCPU='host-powerpc64-cpu' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='powernv9' alias='powernv' maxCpus='2048' defaultCPU='power9_v2.0-powerpc64-cpu' defaultRAMid='pnv.ram'/> + <machine type='kvm' name='pseries-5.1' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='g3beige' maxCpus='1' defaultCPU='750_v3.1-powerpc64-cpu' defaultRAMid='ppc_heathrow.ram'/> + <machine type='kvm' name='pseries-2.12' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-2.9' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-5.2' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='ref405ep' maxCpus='1' defaultRAMid='ef405ep.ram'/> + <machine type='kvm' name='pseries-2.2' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='40p' maxCpus='1' defaultCPU='604-powerpc64-cpu'/> + <machine type='kvm' name='pseries-4.2' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-2.12-sxxm' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-2.3' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-2.6' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-6.2' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='sam460ex' maxCpus='1' defaultCPU='460exb-powerpc64-cpu' defaultRAMid='ppc4xx.sdram'/> + <machine type='kvm' name='pegasos2' maxCpus='1' defaultCPU='7400_v2.9-powerpc64-cpu' defaultRAMid='pegasos2.ram'/> + <machine type='kvm' name='virtex-ml507' maxCpus='1' defaultCPU='440-xilinx-powerpc64-cpu' defaultRAMid='ram'/> + <machine type='kvm' name='pseries-3.0' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-2.7' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-5.0' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-2.8' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='x-remote' maxCpus='1'/> + <machine type='kvm' name='pseries-4.0' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='bamboo' maxCpus='1' defaultCPU='440epb-powerpc64-cpu' defaultRAMid='ppc4xx.sdram'/> + <machine type='kvm' name='pseries-2.1' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='taihu' maxCpus='1' defaultRAMid='taihu_405ep.ram' deprecated='yes'/> + <machine type='kvm' name='pseries-2.10' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-2.4' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-6.0' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='mpc8544ds' maxCpus='15' defaultCPU='e500v2_v30-powerpc64-cpu' defaultRAMid='mpc8544ds.ram'/> + <machine type='kvm' name='pseries-4.1' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='powernv8' maxCpus='2048' defaultCPU='power8_v2.0-powerpc64-cpu' defaultRAMid='pnv.ram'/> + <machine type='kvm' name='powernv10' maxCpus='2048' defaultCPU='power10_v2.0-powerpc64-cpu' defaultRAMid='pnv.ram'/> + <machine type='kvm' name='pseries-2.11' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-2.5' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-6.1' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='pseries-3.1' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='host-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='kvm' name='mac99' maxCpus='1' defaultCPU='970fx_v3.1-powerpc64-cpu' defaultRAMid='ppc_core99.ram'/> + <machine type='kvm' name='ppce500' maxCpus='32' defaultCPU='e500v2_v30-powerpc64-cpu' defaultRAMid='mpc8544ds.ram'/> + <cpu type='tcg' name='default' typename='604-powerpc64-cpu'/> + <cpu type='tcg' name='ppc' typename='604-powerpc64-cpu'/> + <cpu type='tcg' name='ppc32' typename='604-powerpc64-cpu'/> + <cpu type='tcg' name='ppc64' typename='970fx_v3.1-powerpc64-cpu'/> + <cpu type='tcg' name='power10' typename='power10_v2.0-powerpc64-cpu'/> + <cpu type='tcg' name='POWER9' typename='power9_v2.0-powerpc64-cpu'/> + <cpu type='tcg' name='power8nvl' typename='power8nvl_v1.0-powerpc64-cpu'/> + <cpu type='tcg' name='POWER8' typename='power8_v2.0-powerpc64-cpu'/> + <cpu type='tcg' name='power8e' typename='power8e_v2.1-powerpc64-cpu'/> + <cpu type='tcg' name='power7+' typename='power7+_v2.1-powerpc64-cpu'/> + <cpu type='tcg' name='POWER7' typename='power7_v2.3-powerpc64-cpu'/> + <cpu type='tcg' name='power5gs' typename='power5+_v2.1-powerpc64-cpu'/> + <cpu type='tcg' name='power5+' typename='power5+_v2.1-powerpc64-cpu'/> + <cpu type='tcg' name='970mp' typename='970mp_v1.1-powerpc64-cpu'/> + <cpu type='tcg' name='970fx' typename='970fx_v3.1-powerpc64-cpu'/> + <cpu type='tcg' name='970' typename='970_v2.2-powerpc64-cpu'/> + <cpu type='tcg' name='apollo7pm' typename='7457a_v1.0-powerpc64-cpu'/> + <cpu type='tcg' name='7457a' typename='7457a_v1.2-powerpc64-cpu'/> + <cpu type='tcg' name='7447a' typename='7447a_v1.2-powerpc64-cpu'/> + <cpu type='tcg' name='apollo7' typename='7457_v1.2-powerpc64-cpu'/> + <cpu type='tcg' name='7457' typename='7457_v1.2-powerpc64-cpu'/> + <cpu type='tcg' name='7447' typename='7447_v1.1-powerpc64-cpu'/> + <cpu type='tcg' name='apollo6' typename='7455_v3.2-powerpc64-cpu'/> + <cpu type='tcg' name='7455' typename='7455_v3.2-powerpc64-cpu'/> + <cpu type='tcg' name='7445' typename='7445_v3.2-powerpc64-cpu'/> + <cpu type='tcg' name='7451' typename='7451_v2.3-powerpc64-cpu'/> + <cpu type='tcg' name='7441' typename='7441_v2.3-powerpc64-cpu'/> + <cpu type='tcg' name='vger' typename='7450_v2.1-powerpc64-cpu'/> + <cpu type='tcg' name='7450' typename='7450_v2.1-powerpc64-cpu'/> + <cpu type='tcg' name='7448' typename='7448_v2.1-powerpc64-cpu'/> + <cpu type='tcg' name='nitro' typename='7410_v1.4-powerpc64-cpu'/> + <cpu type='tcg' name='7410' typename='7410_v1.4-powerpc64-cpu'/> + <cpu type='tcg' name='g4' typename='7400_v2.9-powerpc64-cpu'/> + <cpu type='tcg' name='max' typename='7400_v2.9-powerpc64-cpu'/> + <cpu type='tcg' name='7400' typename='7400_v2.9-powerpc64-cpu'/> + <cpu type='tcg' name='goldfinger' typename='755_v2.8-powerpc64-cpu'/> + <cpu type='tcg' name='755' typename='755_v2.8-powerpc64-cpu'/> + <cpu type='tcg' name='745' typename='745_v2.8-powerpc64-cpu'/> + <cpu type='tcg' name='lonestar' typename='750l_v3.2-powerpc64-cpu'/> + <cpu type='tcg' name='750l' typename='750l_v3.2-powerpc64-cpu'/> + <cpu type='tcg' name='750gx' typename='750gx_v1.2-powerpc64-cpu'/> + <cpu type='tcg' name='750fx' typename='750fx_v2.3-powerpc64-cpu'/> + <cpu type='tcg' name='750cxe' typename='750cxe_v3.1b-powerpc64-cpu'/> + <cpu type='tcg' name='750cx' typename='750cx_v2.2-powerpc64-cpu'/> + <cpu type='tcg' name='750cl' typename='750cl_v2.0-powerpc64-cpu'/> + <cpu type='tcg' name='conan/doyle' typename='750p-powerpc64-cpu'/> + <cpu type='tcg' name='g3' typename='750_v3.1-powerpc64-cpu'/> + <cpu type='tcg' name='typhoon' typename='750_v3.1-powerpc64-cpu'/> + <cpu type='tcg' name='750' typename='750_v3.1-powerpc64-cpu'/> + <cpu type='tcg' name='arthur' typename='740_v3.1-powerpc64-cpu'/> + <cpu type='tcg' name='740' typename='740_v3.1-powerpc64-cpu'/> + <cpu type='tcg' name='mach5' typename='604r-powerpc64-cpu'/> + <cpu type='tcg' name='sirocco' typename='604e_v2.4-powerpc64-cpu'/> + <cpu type='tcg' name='604e' typename='604e_v2.4-powerpc64-cpu'/> + <cpu type='tcg' name='goldeneye' typename='603e7t-powerpc64-cpu'/> + <cpu type='tcg' name='603r' typename='603e7t-powerpc64-cpu'/> + <cpu type='tcg' name='vaillant' typename='603e7v-powerpc64-cpu'/> + <cpu type='tcg' name='stretch' typename='603e_v4.1-powerpc64-cpu'/> + <cpu type='tcg' name='603e' typename='603e_v4.1-powerpc64-cpu'/> + <cpu type='tcg' name='vanilla' typename='603-powerpc64-cpu'/> + <cpu type='tcg' name='601v' typename='601_v2-powerpc64-cpu'/> + <cpu type='tcg' name='601' typename='601_v2-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8560' typename='mpc8560_v21-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8555e' typename='mpc8555e_v11-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8555' typename='mpc8555_v11-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8548e' typename='mpc8548e_v21-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8548' typename='mpc8548_v21-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8547e' typename='mpc8547e_v21-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8545e' typename='mpc8545e_v21-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8545' typename='mpc8545_v21-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8544e' typename='mpc8544e_v11-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8544' typename='mpc8544_v11-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8543e' typename='mpc8543e_v21-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8543' typename='mpc8543_v21-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8541e' typename='mpc8541e_v11-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8541' typename='mpc8541_v11-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8540' typename='mpc8540_v21-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8533e' typename='mpc8533e_v11-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8533' typename='mpc8533_v11-powerpc64-cpu'/> + <cpu type='tcg' name='e500v2' typename='e500v2_v22-powerpc64-cpu'/> + <cpu type='tcg' name='e500v1' typename='e500_v20-powerpc64-cpu'/> + <cpu type='tcg' name='e500' typename='e500v2_v22-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8347ea' typename='mpc8347eat-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8347e' typename='mpc8347et-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8347a' typename='mpc8347at-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8347' typename='mpc8347t-powerpc64-cpu'/> + <cpu type='tcg' name='e300' typename='e300c3-powerpc64-cpu'/> + <cpu type='tcg' name='e200' typename='e200z6-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8280' typename='g2legp3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8275' typename='g2legp3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8272' typename='g2legp3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8271' typename='g2legp3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8270' typename='g2legp3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8266_hip4' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8266_hip3' typename='g2hip3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8266' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8265_hip4' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8265_hip3' typename='g2hip3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8265' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8264_hip4' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8264_hip3' typename='g2hip3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8264' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8260_hip4' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8260_hip3' typename='g2hip3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8260' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8255_hip4' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8255_hip3' typename='g2hip3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8255' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8250_hip4' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8250_hip3' typename='g2hip3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8250' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8248' typename='g2legp3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8247' typename='g2legp3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8245' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8241' typename='g2hip4-powerpc64-cpu'/> + <cpu type='tcg' name='powerquicc-ii' typename='g2legp3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc82xx' typename='g2legp3-powerpc64-cpu'/> + <cpu type='tcg' name='mpc5200b' typename='mpc5200b_v21-powerpc64-cpu'/> + <cpu type='tcg' name='mpc5200' typename='mpc5200_v12-powerpc64-cpu'/> + <cpu type='tcg' name='mpc52xx' typename='mpc5200_v12-powerpc64-cpu'/> + <cpu type='tcg' name='mpc8240' typename='603-powerpc64-cpu'/> + <cpu type='tcg' name='460ex' typename='460exb-powerpc64-cpu'/> + <cpu type='tcg' name='440ep' typename='440epb-powerpc64-cpu'/> + <cpu type='tcg' name='x2vp50' typename='x2vp20-powerpc64-cpu'/> + <cpu type='tcg' name='x2vp7' typename='x2vp4-powerpc64-cpu'/> + <cpu type='tcg' name='405gpe' typename='405crc-powerpc64-cpu'/> + <cpu type='tcg' name='405gp' typename='405gpd-powerpc64-cpu'/> + <cpu type='tcg' name='405cr' typename='405crc-powerpc64-cpu'/> + <cpu type='tcg' name='405' typename='405d4-powerpc64-cpu'/> + <cpu type='tcg' name='740_v2.0'/> + <cpu type='tcg' name='mpc8343'/> + <cpu type='tcg' name='mpc8545e_v21'/> + <cpu type='tcg' name='power8nvl_v1.0'/> + <cpu type='tcg' name='mpc8543e_v10'/> + <cpu type='tcg' name='mpc8555_v10'/> + <cpu type='tcg' name='750_v2.0'/> + <cpu type='tcg' name='405gpb'/> + <cpu type='tcg' name='stb04'/> + <cpu type='tcg' name='mpc8544_v10'/> + <cpu type='tcg' name='g2lels'/> + <cpu type='tcg' name='mpc8548e_v10'/> + <cpu type='tcg' name='440epx'/> + <cpu type='tcg' name='750cxr'/> + <cpu type='tcg' name='g2le'/> + <cpu type='tcg' name='mpc8543e_v11'/> + <cpu type='tcg' name='755_v2.0'/> + <cpu type='tcg' name='e500v2_v20'/> + <cpu type='tcg' name='x2vp20'/> + <cpu type='tcg' name='405gpc'/> + <cpu type='tcg' name='mpc8544_v11'/> + <cpu type='tcg' name='mpc8548e_v11'/> + <cpu type='tcg' name='405cra'/> + <cpu type='tcg' name='npe405h'/> + <cpu type='tcg' name='mpc8533_v11'/> + <cpu type='tcg' name='7441_v2.10'/> + <cpu type='tcg' name='mpc8544e_v10'/> + <cpu type='tcg' name='750cxe_v2.1'/> + <cpu type='tcg' name='750cx_v2.0'/> + <cpu type='tcg' name='405gpd'/> + <cpu type='tcg' name='7445_v3.2'/> + <cpu type='tcg' name='mpc8545_v20'/> + <cpu type='tcg' name='603p'/> + <cpu type='tcg' name='601_v0'/> + <cpu type='tcg' name='7400_v2.1'/> + <cpu type='tcg' name='7455_v3.2'/> + <cpu type='tcg' name='603e_v1.2'/> + <cpu type='tcg' name='mpc8610'/> + <cpu type='tcg' name='mpc8544e_v11'/> + <cpu type='tcg' name='750cxe_v2.2'/> + <cpu type='tcg' name='mpc8547e_v20'/> + <cpu type='tcg' name='7445_v3.3'/> + <cpu type='tcg' name='mpc8545_v21'/> + <cpu type='tcg' name='mpc8379e'/> + <cpu type='tcg' name='mpc8349e'/> + <cpu type='tcg' name='601_v1'/> + <cpu type='tcg' name='7400_v2.2'/> + <cpu type='tcg' name='7455_v3.3'/> + <cpu type='tcg' name='603e_v1.3'/> + <cpu type='tcg' name='750cxe_v2.4b'/> + <cpu type='tcg' name='mpc8543_v11'/> + <cpu type='tcg' name='750cxe_v2.3'/> + <cpu type='tcg' name='mpc8547e_v21'/> + <cpu type='tcg' name='mpc8572e'/> + <cpu type='tcg' name='mpc8543e_v20'/> + <cpu type='tcg' name='750fx_v2.1'/> + <cpu type='tcg' name='602'/> + <cpu type='tcg' name='mpc8555e_v10'/> + <cpu type='tcg' name='7451_v2.10'/> + <cpu type='tcg' name='750l_v2.2'/> + <cpu type='tcg' name='970fx_v3.0'/> + <cpu type='tcg' name='mpc8548e_v20'/> + <cpu type='tcg' name='mpc8641d'/> + <cpu type='tcg' name='7410_v1.0'/> + <cpu type='tcg' name='mpc8543e_v21'/> + <cpu type='tcg' name='750fx_v2.2'/> + <cpu type='tcg' name='e500v2_v30'/> + <cpu type='tcg' name='405ez'/> + <cpu type='tcg' name='mpc8555e_v11'/> + <cpu type='tcg' name='405d2'/> + <cpu type='tcg' name='970fx_v3.1'/> + <cpu type='tcg' name='power10_v2.0'/> + <cpu type='tcg' name='mpc8548e_v21'/> + <cpu type='tcg' name='405lp'/> + <cpu type='tcg' name='mpc8349ea'/> + <cpu type='tcg' name='750e'/> + <cpu type='tcg' name='750cxe_v3.1b'/> + <cpu type='tcg' name='740_v3.0'/> + <cpu type='tcg' name='440epa'/> + <cpu type='tcg' name='mpc5200b_v20'/> + <cpu type='tcg' name='745_v2.6'/> + <cpu type='tcg' name='750_v3.0'/> + <cpu type='tcg' name='603e7v'/> + <cpu type='tcg' name='mpc8377'/> + <cpu type='tcg' name='7445_v1.0'/> + <cpu type='tcg' name='7447a_v1.1'/> + <cpu type='tcg' name='740_v3.1'/> + <cpu type='tcg' name='970mp_v1.0'/> + <cpu type='tcg' name='mpc8641'/> + <cpu type='tcg' name='e200z5'/> + <cpu type='tcg' name='750p'/> + <cpu type='tcg' name='745_v2.7'/> + <cpu type='tcg' name='750_v3.1'/> + <cpu type='tcg' name='7450_v1.1'/> + <cpu type='tcg' name='x2vp4'/> + <cpu type='tcg' name='7447a_v1.2'/> + <cpu type='tcg' name='mpc8543_v21'/> + <cpu type='tcg' name='755_v2.7'/> + <cpu type='tcg' name='970mp_v1.1'/> + <cpu type='tcg' name='mpc8545e_v20'/> + <cpu type='tcg' name='e200z6'/> + <cpu type='tcg' name='745_v2.8'/> + <cpu type='tcg' name='7450_v1.2'/> + <cpu type='tcg' name='405gpa'/> + <cpu type='tcg' name='stb03'/> + <cpu type='tcg' name='755_v2.8'/> + <cpu type='tcg' name='power9_v1.0'/> + <cpu type='tcg' name='7457a_v1.0'/> + <cpu type='tcg' name='mpc8349a'/> + <cpu type='tcg' name='g2gp'/> + <cpu type='tcg' name='stb25'/> + <cpu type='tcg' name='750cl_v1.0'/> + <cpu type='tcg' name='7457a_v1.1'/> + <cpu type='tcg' name='g2legp3'/> + <cpu type='tcg' name='mpc8347t'/> + <cpu type='tcg' name='mpc8533_v10'/> + <cpu type='tcg' name='440-xilinx'/> + <cpu type='tcg' name='mpc8548_v10'/> + <cpu type='tcg' name='mpc8347ap'/> + <cpu type='tcg' name='604e_v1.0'/> + <cpu type='tcg' name='7457a_v1.2'/> + <cpu type='tcg' name='7400_v2.0'/> + <cpu type='tcg' name='603e7v1'/> + <cpu type='tcg' name='7447_v1.0'/> + <cpu type='tcg' name='603e_v4.1'/> + <cpu type='tcg' name='603e_v1.1'/> + <cpu type='tcg' name='npe4gs3'/> + <cpu type='tcg' name='mpc8548_v11'/> + <cpu type='tcg' name='970fx_v1.0'/> + <cpu type='tcg' name='604e_v2.4'/> + <cpu type='tcg' name='7457_v1.0'/> + <cpu type='tcg' name='e300c4'/> + <cpu type='tcg' name='603e7v2'/> + <cpu type='tcg' name='7447_v1.1'/> + <cpu type='tcg' name='mpc8543_v10'/> + <cpu type='tcg' name='power8e_v2.1'/> + <cpu type='tcg' name='mpc5200_v12'/> + <cpu type='tcg' name='750l_v2.0'/> + <cpu type='tcg' name='mpc8343a'/> + <cpu type='tcg' name='mpc8347eap'/> + <cpu type='tcg' name='7457_v1.1'/> + <cpu type='tcg' name='e600'/> + <cpu type='tcg' name='750fx_v2.0'/> + <cpu type='tcg' name='740_v1.0'/> + <cpu type='tcg' name='7448_v1.0'/> + <cpu type='tcg' name='750l_v2.1'/> + <cpu type='tcg' name='7457_v1.2'/> + <cpu type='tcg' name='750_v1.0'/> + <cpu type='tcg' name='745_v2.3'/> + <cpu type='tcg' name='745_v1.0'/> + <cpu type='tcg' name='7448_v1.1'/> + <cpu type='tcg' name='755_v1.0'/> + <cpu type='tcg' name='power7_v2.3'/> + <cpu type='tcg' name='npe405h2'/> + <cpu type='tcg' name='745_v2.4'/> + <cpu type='tcg' name='745_v1.1'/> + <cpu type='tcg' name='603e7t'/> + <cpu type='tcg' name='mpc8572'/> + <cpu type='tcg' name='g2legp'/> + <cpu type='tcg' name='755_v2.4'/> + <cpu type='tcg' name='mpc8548_v20'/> + <cpu type='tcg' name='755_v1.1'/> + <cpu type='tcg' name='750fl'/> + <cpu type='tcg' name='750cx_v1.0'/> + <cpu type='tcg' name='745_v2.5'/> + <cpu type='tcg' name='mpc8349'/> + <cpu type='tcg' name='power9_v2.0'/> + <cpu type='tcg' name='7447a_v1.0'/> + <cpu type='tcg' name='755_v2.5'/> + <cpu type='tcg' name='mpc8548_v21'/> + <cpu type='tcg' name='603e_v4'/> + <cpu type='tcg' name='7450_v1.0'/> + <cpu type='tcg' name='mpc8543_v20'/> + <cpu type='tcg' name='755_v2.6'/> + <cpu type='tcg' name='e5500'/> + <cpu type='tcg' name='mpc8568'/> + <cpu type='tcg' name='mpc8343ea'/> + <cpu type='tcg' name='g2'/> + <cpu type='tcg' name='mpc8541_v10'/> + <cpu type='tcg' name='7455_v1.0'/> + <cpu type='tcg' name='750cxe_v3.0'/> + <cpu type='tcg' name='603e7'/> + <cpu type='tcg' name='power5+_v2.1'/> + <cpu type='tcg' name='g2legp1'/> + <cpu type='tcg' name='7441_v2.3'/> + <cpu type='tcg' name='mpc8541_v11'/> + <cpu type='tcg' name='750cxe_v3.1'/> + <cpu type='tcg' name='7410_v1.3'/> + <cpu type='tcg' name='7451_v2.3'/> + <cpu type='tcg' name='7400_v2.7'/> + <cpu type='tcg' name='e500_v10'/> + <cpu type='tcg' name='603e_v2.2'/> + <cpu type='tcg' name='970fx_v2.1'/> + <cpu type='tcg' name='7410_v1.4'/> + <cpu type='tcg' name='mpc8567e'/> + <cpu type='tcg' name='604e_v2.2'/> + <cpu type='tcg' name='7400_v2.8'/> + <cpu type='tcg' name='740e'/> + <cpu type='tcg' name='e300c2'/> + <cpu type='tcg' name='750gl'/> + <cpu type='tcg' name='mpc8540_v10'/> + <cpu type='tcg' name='7448_v2.0'/> + <cpu type='tcg' name='mpc5200_v10'/> + <cpu type='tcg' name='7400_v2.9'/> + <cpu type='tcg' name='mpc8533e_v11'/> + <cpu type='tcg' name='745_v2.0'/> + <cpu type='tcg' name='e500mc'/> + <cpu type='tcg' name='e300c3'/> + <cpu type='tcg' name='740_v2.1'/> + <cpu type='tcg' name='7448_v2.1'/> + <cpu type='tcg' name='750l_v3.2'/> + <cpu type='tcg' name='mpc8555_v11'/> + <cpu type='tcg' name='mpc5200_v11'/> + <cpu type='tcg' name='740p'/> + <cpu type='tcg' name='750_v2.1'/> + <cpu type='tcg' name='745_v2.1'/> + <cpu type='tcg' name='g2h4'/> + <cpu type='tcg' name='740_v2.2'/> + <cpu type='tcg' name='755_v2.1'/> + <cpu type='tcg' name='mpc603'/> + <cpu type='tcg' name='e500v2_v21'/> + <cpu type='tcg' name='750_v2.2'/> + <cpu type='tcg' name='745_v2.2'/> + <cpu type='tcg' name='405crb'/> + <cpu type='tcg' name='mpc8347et'/> + <cpu type='tcg' name='755_v2.2'/> + <cpu type='tcg' name='e500v2_v22'/> + <cpu type='tcg' name='750cx_v2.1'/> + <cpu type='tcg' name='e6500'/> + <cpu type='tcg' name='e500_v20'/> + <cpu type='tcg' name='7450_v2.0'/> + <cpu type='tcg' name='power8_v2.0'/> + <cpu type='tcg' name='g2hip3'/> + <cpu type='tcg' name='405crc'/> + <cpu type='tcg' name='755_v2.3'/> + <cpu type='tcg' name='mpc8560_v10'/> + <cpu type='tcg' name='mpc8568e'/> + <cpu type='tcg' name='750cx_v2.2'/> + <cpu type='tcg' name='mpc8540_v20'/> + <cpu type='tcg' name='mpc8377e'/> + <cpu type='tcg' name='7450_v2.1'/> + <cpu type='tcg' name='7445_v3.4'/> + <cpu type='tcg' name='7445_v2.1'/> + <cpu type='tcg' name='g2hip4'/> + <cpu type='tcg' name='601_v2'/> + <cpu type='tcg' name='7400_v1.0'/> + <cpu type='tcg' name='7455_v3.4'/> + <cpu type='tcg' name='603e_v1.4'/> + <cpu type='tcg' name='750cxe_v2.4'/> + <cpu type='tcg' name='7455_v2.1'/> + <cpu type='tcg' name='603e_v3'/> + <cpu type='tcg' name='405ep'/> + <cpu type='tcg' name='mpc8540_v21'/> + <cpu type='tcg' name='g2ls'/> + <cpu type='tcg' name='mpc8347at'/> + <cpu type='tcg' name='npe405l'/> + <cpu type='tcg' name='mpc8541e_v10'/> + <cpu type='tcg' name='7400_v1.1'/> + <cpu type='tcg' name='mpc8567'/> + <cpu type='tcg' name='603'/> + <cpu type='tcg' name='mpc8347p'/> + <cpu type='tcg' name='7441_v2.1'/> + <cpu type='tcg' name='7410_v1.1'/> + <cpu type='tcg' name='e500v2_v10'/> + <cpu type='tcg' name='750cl_v2.0'/> + <cpu type='tcg' name='750fx_v2.3'/> + <cpu type='tcg' name='604'/> + <cpu type='tcg' name='mpc8541e_v11'/> + <cpu type='tcg' name='405gpr'/> + <cpu type='tcg' name='750fx_v1.0'/> + <cpu type='tcg' name='mpc8343e'/> + <cpu type='tcg' name='mpc8347eat'/> + <cpu type='tcg' name='7410_v1.2'/> + <cpu type='tcg' name='750gx_v1.0'/> + <cpu type='tcg' name='7400_v2.6'/> + <cpu type='tcg' name='440epb'/> + <cpu type='tcg' name='mpc5200b_v21'/> + <cpu type='tcg' name='405d4'/> + <cpu type='tcg' name='970fx_v2.0'/> + <cpu type='tcg' name='750gx_v1.1'/> + <cpu type='tcg' name='mpc8378'/> + <cpu type='tcg' name='mpc8560_v20'/> + <cpu type='tcg' name='460exb'/> + <cpu type='tcg' name='e300c1'/> + <cpu type='tcg' name='power7+_v2.1'/> + <cpu type='tcg' name='440-xilinx-w-dfpu'/> + <cpu type='tcg' name='mpc8378e'/> + <cpu type='tcg' name='mpc8347ep'/> + <cpu type='tcg' name='750l_v3.0'/> + <cpu type='tcg' name='604r'/> + <cpu type='tcg' name='750gx_v1.2'/> + <cpu type='tcg' name='power10_v1.0'/> + <cpu type='tcg' name='mpc8560_v21'/> + <cpu type='tcg' name='970_v2.2'/> + <cpu type='tcg' name='mpc8533e_v10'/> + <cpu type='tcg' name='mpc8379'/> + <machine type='tcg' name='pseries-7.0' alias='pseries' hotplugCpus='yes' maxCpus='2147483647' default='yes' defaultCPU='power9_v2.0-powerpc64-cpu' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='powernv9' alias='powernv' maxCpus='2048' defaultCPU='power9_v2.0-powerpc64-cpu' defaultRAMid='pnv.ram'/> + <machine type='tcg' name='pseries-5.1' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power9_v2.0-powerpc64-cpu' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='g3beige' maxCpus='1' defaultCPU='750_v3.1-powerpc64-cpu' defaultRAMid='ppc_heathrow.ram'/> + <machine type='tcg' name='pseries-2.12' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power8_v2.0-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-2.9' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power8_v2.0-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-5.2' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power9_v2.0-powerpc64-cpu' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='ref405ep' maxCpus='1' defaultRAMid='ef405ep.ram'/> + <machine type='tcg' name='pseries-2.2' maxCpus='2147483647' defaultCPU='power7_v2.3-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='40p' maxCpus='1' defaultCPU='604-powerpc64-cpu'/> + <machine type='tcg' name='pseries-4.2' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power9_v2.0-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-2.12-sxxm' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power8_v2.0-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-2.3' maxCpus='2147483647' defaultCPU='power7_v2.3-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-2.6' maxCpus='2147483647' defaultCPU='power7_v2.3-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-6.2' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power9_v2.0-powerpc64-cpu' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='sam460ex' maxCpus='1' defaultCPU='460exb-powerpc64-cpu' defaultRAMid='ppc4xx.sdram'/> + <machine type='tcg' name='pegasos2' maxCpus='1' defaultCPU='7400_v2.9-powerpc64-cpu' defaultRAMid='pegasos2.ram'/> + <machine type='tcg' name='virtex-ml507' maxCpus='1' defaultCPU='440-xilinx-powerpc64-cpu' defaultRAMid='ram'/> + <machine type='tcg' name='pseries-3.0' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power8_v2.0-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-2.7' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power7_v2.3-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-5.0' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power9_v2.0-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-2.8' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power8_v2.0-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='x-remote' maxCpus='1'/> + <machine type='tcg' name='pseries-4.0' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power9_v2.0-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='bamboo' maxCpus='1' defaultCPU='440epb-powerpc64-cpu' defaultRAMid='ppc4xx.sdram'/> + <machine type='tcg' name='pseries-2.1' maxCpus='2147483647' defaultCPU='power7_v2.3-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='taihu' maxCpus='1' defaultRAMid='taihu_405ep.ram' deprecated='yes'/> + <machine type='tcg' name='pseries-2.10' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power8_v2.0-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-2.4' maxCpus='2147483647' defaultCPU='power7_v2.3-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-6.0' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power9_v2.0-powerpc64-cpu' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='mpc8544ds' maxCpus='15' defaultCPU='e500v2_v30-powerpc64-cpu' defaultRAMid='mpc8544ds.ram'/> + <machine type='tcg' name='pseries-4.1' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power9_v2.0-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='powernv8' maxCpus='2048' defaultCPU='power8_v2.0-powerpc64-cpu' defaultRAMid='pnv.ram'/> + <machine type='tcg' name='powernv10' maxCpus='2048' defaultCPU='power10_v2.0-powerpc64-cpu' defaultRAMid='pnv.ram'/> + <machine type='tcg' name='pseries-2.11' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power8_v2.0-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-2.5' maxCpus='2147483647' defaultCPU='power7_v2.3-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-6.1' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power9_v2.0-powerpc64-cpu' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='pseries-3.1' hotplugCpus='yes' maxCpus='2147483647' defaultCPU='power8_v2.0-powerpc64-cpu' numaMemSupported='yes' defaultRAMid='ppc_spapr.ram'/> + <machine type='tcg' name='mac99' maxCpus='1' defaultCPU='970fx_v3.1-powerpc64-cpu' defaultRAMid='ppc_core99.ram'/> + <machine type='tcg' name='ppce500' maxCpus='32' defaultCPU='e500v2_v30-powerpc64-cpu' defaultRAMid='mpc8544ds.ram'/> +</qemuCaps> diff --git a/tests/qemuxml2argvdata/default-video-type-ppc64.ppc64-latest.args b/tests/qemuxml2argvdata/default-video-type-ppc64.ppc64-latest.args index 1e70b2a83f..25c5eb3140 100644 --- a/tests/qemuxml2argvdata/default-video-type-ppc64.ppc64-latest.args +++ b/tests/qemuxml2argvdata/default-video-type-ppc64.ppc64-latest.args @@ -25,10 +25,10 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-default-video-type-p/.config \ -rtc base=utc \ -no-shutdown \ -boot strict=on \ --device pci-ohci,id=usb,bus=pci.0,addr=0x1 \ --device usb-kbd,id=input0,bus=usb.0,port=1 \ --device usb-mouse,id=input1,bus=usb.0,port=2 \ +-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \ +-device '{"driver":"usb-kbd","id":"input0","bus":"usb.0","port":"1"}' \ +-device '{"driver":"usb-mouse","id":"input1","bus":"usb.0","port":"2"}' \ -audiodev '{"id":"audio1","driver":"none"}' \ -vnc 127.0.0.1:0,audiodev=audio1 \ --device VGA,id=video0,vgamem_mb=16,bus=pci.0,addr=0x2 \ +-device '{"driver":"VGA","id":"video0","vgamem_mb":16,"bus":"pci.0","addr":"0x2"}' \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.ppc64-latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.ppc64-latest.args index 94802171ad..65ba777f02 100644 --- a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.ppc64-latest.args +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.ppc64-latest.args @@ -26,12 +26,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \ -rtc base=utc \ -no-shutdown \ -boot strict=on \ --device pci-ohci,id=usb,bus=pci.0,addr=0x1 \ +-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.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=pci.0,addr=0x2,drive=libvirt-1-format,id=virtio-disk0,bootindex=1 \ +-device '{"driver":"virtio-blk-pci","bus":"pci.0","addr":"0x2","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -chardev pty,id=charserial0 \ --device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \ +-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x3"}' \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.ppc64-latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.ppc64-latest.args index 140c5b51f3..0e01aa595d 100644 --- a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.ppc64-latest.args +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.ppc64-latest.args @@ -26,12 +26,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \ -rtc base=utc \ -no-shutdown \ -boot strict=on \ --device pci-ohci,id=usb,bus=pci.0,addr=0x1 \ +-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.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=pci.0,addr=0x2,drive=libvirt-1-format,id=virtio-disk0,bootindex=1 \ +-device '{"driver":"virtio-blk-pci","bus":"pci.0","addr":"0x2","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -chardev pty,id=charserial0 \ --device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \ +-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x3"}' \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.ppc64-latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.ppc64-latest.args index 0b5ded5c2d..a44dac6afd 100644 --- a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.ppc64-latest.args +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.ppc64-latest.args @@ -26,12 +26,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \ -rtc base=utc \ -no-shutdown \ -boot strict=on \ --device pci-ohci,id=usb,bus=pci.0,addr=0x1 \ +-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.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=pci.0,addr=0x2,drive=libvirt-1-format,id=virtio-disk0,bootindex=1 \ +-device '{"driver":"virtio-blk-pci","bus":"pci.0","addr":"0x2","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -chardev pty,id=charserial0 \ --device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \ +-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x3"}' \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.ppc64-latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.ppc64-latest.args index cf731aaf4a..029f2312cf 100644 --- a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.ppc64-latest.args +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.ppc64-latest.args @@ -26,12 +26,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \ -rtc base=utc \ -no-shutdown \ -boot strict=on \ --device pci-ohci,id=usb,bus=pci.0,addr=0x1 \ +-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.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=pci.0,addr=0x2,drive=libvirt-1-format,id=virtio-disk0,bootindex=1 \ +-device '{"driver":"virtio-blk-pci","bus":"pci.0","addr":"0x2","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -chardev pty,id=charserial0 \ --device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \ +-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x3"}' \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.ppc64-latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.ppc64-latest.args index 760c0664fa..249d1c1a0b 100644 --- a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.ppc64-latest.args +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.ppc64-latest.args @@ -26,12 +26,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \ -rtc base=utc \ -no-shutdown \ -boot strict=on \ --device pci-ohci,id=usb,bus=pci.0,addr=0x1 \ +-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.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=pci.0,addr=0x2,drive=libvirt-1-format,id=virtio-disk0,bootindex=1 \ +-device '{"driver":"virtio-blk-pci","bus":"pci.0","addr":"0x2","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -chardev pty,id=charserial0 \ --device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \ +-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x3"}' \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.ppc64-latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.ppc64-latest.args index 9b3a846dd4..2577b8e07d 100644 --- a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.ppc64-latest.args +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.ppc64-latest.args @@ -26,12 +26,12 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \ -rtc base=utc \ -no-shutdown \ -boot strict=on \ --device pci-ohci,id=usb,bus=pci.0,addr=0x1 \ +-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.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=pci.0,addr=0x2,drive=libvirt-1-format,id=virtio-disk0,bootindex=1 \ +-device '{"driver":"virtio-blk-pci","bus":"pci.0","addr":"0x2","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -chardev pty,id=charserial0 \ --device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \ +-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x3"}' \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/ppc64-pseries-graphics.ppc64-latest.args b/tests/qemuxml2argvdata/ppc64-pseries-graphics.ppc64-latest.args index 3da23bb782..2a39ac718f 100644 --- a/tests/qemuxml2argvdata/ppc64-pseries-graphics.ppc64-latest.args +++ b/tests/qemuxml2argvdata/ppc64-pseries-graphics.ppc64-latest.args @@ -25,23 +25,23 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \ -rtc base=utc \ -no-shutdown \ -boot strict=on \ --device qemu-xhci,p2=15,p3=15,id=usb,bus=pci.0,addr=0x2 \ --device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x3 \ +-device '{"driver":"qemu-xhci","p2":15,"p3":15,"id":"usb","bus":"pci.0","addr":"0x2"}' \ +-device '{"driver":"virtio-serial-pci","id":"virtio-serial0","bus":"pci.0","addr":"0x3"}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.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=pci.0,addr=0x4,drive=libvirt-1-format,id=virtio-disk0,bootindex=1 \ +-device '{"driver":"virtio-blk-pci","bus":"pci.0","addr":"0x4","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -netdev user,id=hostnet0 \ --device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:a2:44:92,bus=pci.0,addr=0x1 \ +-device '{"driver":"virtio-net-pci","netdev":"hostnet0","id":"net0","mac":"52:54:00:a2:44:92","bus":"pci.0","addr":"0x1"}' \ -chardev pty,id=charserial0 \ --device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \ +-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \ -chardev socket,id=charchannel0,fd=1729,server=on,wait=off \ --device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=org.qemu.guest_agent.0 \ --device usb-tablet,id=input0,bus=usb.0,port=1 \ --device usb-kbd,id=input1,bus=usb.0,port=2 \ +-device '{"driver":"virtserialport","bus":"virtio-serial0.0","nr":1,"chardev":"charchannel0","id":"channel0","name":"org.qemu.guest_agent.0"}' \ +-device '{"driver":"usb-tablet","id":"input0","bus":"usb.0","port":"1"}' \ +-device '{"driver":"usb-kbd","id":"input1","bus":"usb.0","port":"2"}' \ -audiodev '{"id":"audio1","driver":"none"}' \ -vnc 127.0.0.1:0,audiodev=audio1 \ --device VGA,id=video0,vgamem_mb=16,bus=pci.0,addr=0x7 \ --device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5 \ +-device '{"driver":"VGA","id":"video0","vgamem_mb":16,"bus":"pci.0","addr":"0x7"}' \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x5"}' \ -object '{"qom-type":"rng-random","id":"objrng0","filename":"/dev/urandom"}' \ --device virtio-rng-pci,rng=objrng0,id=rng0,bus=pci.0,addr=0x6 \ +-device '{"driver":"virtio-rng-pci","rng":"objrng0","id":"rng0","bus":"pci.0","addr":"0x6"}' \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/ppc64-pseries-headless.ppc64-latest.args b/tests/qemuxml2argvdata/ppc64-pseries-headless.ppc64-latest.args index fb890bb9e0..b8b54b7b80 100644 --- a/tests/qemuxml2argvdata/ppc64-pseries-headless.ppc64-latest.args +++ b/tests/qemuxml2argvdata/ppc64-pseries-headless.ppc64-latest.args @@ -26,19 +26,19 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \ -rtc base=utc \ -no-shutdown \ -boot strict=on \ --device qemu-xhci,p2=15,p3=15,id=usb,bus=pci.0,addr=0x2 \ --device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x3 \ +-device '{"driver":"qemu-xhci","p2":15,"p3":15,"id":"usb","bus":"pci.0","addr":"0x2"}' \ +-device '{"driver":"virtio-serial-pci","id":"virtio-serial0","bus":"pci.0","addr":"0x3"}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.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=pci.0,addr=0x4,drive=libvirt-1-format,id=virtio-disk0,bootindex=1 \ +-device '{"driver":"virtio-blk-pci","bus":"pci.0","addr":"0x4","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -netdev user,id=hostnet0 \ --device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:09:a4:37,bus=pci.0,addr=0x1 \ +-device '{"driver":"virtio-net-pci","netdev":"hostnet0","id":"net0","mac":"52:54:00:09:a4:37","bus":"pci.0","addr":"0x1"}' \ -chardev pty,id=charserial0 \ --device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \ +-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \ -chardev socket,id=charchannel0,fd=1729,server=on,wait=off \ --device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=org.qemu.guest_agent.0 \ +-device '{"driver":"virtserialport","bus":"virtio-serial0.0","nr":1,"chardev":"charchannel0","id":"channel0","name":"org.qemu.guest_agent.0"}' \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5 \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x5"}' \ -object '{"qom-type":"rng-random","id":"objrng0","filename":"/dev/urandom"}' \ --device virtio-rng-pci,rng=objrng0,id=rng0,bus=pci.0,addr=0x6 \ +-device '{"driver":"virtio-rng-pci","rng":"objrng0","id":"rng0","bus":"pci.0","addr":"0x6"}' \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/ppc64-tpmproxy-single.ppc64-latest.args b/tests/qemuxml2argvdata/ppc64-tpmproxy-single.ppc64-latest.args index a6183a47b8..5ed0240e5e 100644 --- a/tests/qemuxml2argvdata/ppc64-tpmproxy-single.ppc64-latest.args +++ b/tests/qemuxml2argvdata/ppc64-tpmproxy-single.ppc64-latest.args @@ -26,8 +26,8 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \ -rtc base=utc \ -no-shutdown \ -boot strict=on \ --device pci-ohci,id=usb,bus=pci.0,addr=0x1 \ --device spapr-tpm-proxy,id=tpm0,host-path=/dev/tpmrm0 \ +-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \ +-device '{"driver":"spapr-tpm-proxy","id":"tpm0","host-path":"/dev/tpmrm0"}' \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6 \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x6"}' \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/ppc64-tpmproxy-with-tpm.ppc64-latest.args b/tests/qemuxml2argvdata/ppc64-tpmproxy-with-tpm.ppc64-latest.args index a962ac6ef4..90a27ca1a8 100644 --- a/tests/qemuxml2argvdata/ppc64-tpmproxy-with-tpm.ppc64-latest.args +++ b/tests/qemuxml2argvdata/ppc64-tpmproxy-with-tpm.ppc64-latest.args @@ -26,11 +26,11 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \ -rtc base=utc \ -no-shutdown \ -boot strict=on \ --device pci-ohci,id=usb,bus=pci.0,addr=0x1 \ --device spapr-tpm-proxy,id=tpm0,host-path=/dev/tpmrm0 \ +-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \ +-device '{"driver":"spapr-tpm-proxy","id":"tpm0","host-path":"/dev/tpmrm0"}' \ -chardev socket,id=chrtpm,path=/dev/test \ -tpmdev emulator,id=tpm-tpm1,chardev=chrtpm \ --device tpm-spapr,tpmdev=tpm-tpm1,id=tpm1,reg=16384 \ +-device '{"driver":"tpm-spapr","tpmdev":"tpm-tpm1","id":"tpm1","reg":16384}' \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6 \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x6"}' \ -msg timestamp=on diff --git a/tests/qemuxml2argvdata/tpm-emulator-spapr.ppc64-latest.args b/tests/qemuxml2argvdata/tpm-emulator-spapr.ppc64-latest.args index 399b588355..97d310d8dc 100644 --- a/tests/qemuxml2argvdata/tpm-emulator-spapr.ppc64-latest.args +++ b/tests/qemuxml2argvdata/tpm-emulator-spapr.ppc64-latest.args @@ -26,19 +26,19 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-TPM-VM/.config \ -rtc base=utc \ -no-shutdown \ -boot menu=on,strict=on \ --device pci-ohci,id=usb,bus=pci.0,addr=0x1 \ --device spapr-vscsi,id=scsi0,reg=8192 \ --device spapr-vscsi,id=scsi1,reg=12288 \ +-device '{"driver":"pci-ohci","id":"usb","bus":"pci.0","addr":"0x1"}' \ +-device '{"driver":"spapr-vscsi","id":"scsi0","reg":8192}' \ +-device '{"driver":"spapr-vscsi","id":"scsi1","reg":12288}' \ -blockdev '{"driver":"file","filename":"/tmp/scsidisk.img","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \ -blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"raw","file":"libvirt-1-storage"}' \ --device scsi-hd,bus=scsi1.0,channel=0,scsi-id=0,lun=0,device_id=drive-scsi1-0-0-0,drive=libvirt-1-format,id=scsi1-0-0-0,bootindex=1 \ +-device '{"driver":"scsi-hd","bus":"scsi1.0","channel":0,"scsi-id":0,"lun":0,"device_id":"drive-scsi1-0-0-0","drive":"libvirt-1-format","id":"scsi1-0-0-0","bootindex":1}' \ -chardev pty,id=charserial0 \ --device spapr-vty,chardev=charserial0,id=serial0,reg=805306368 \ +-device '{"driver":"spapr-vty","chardev":"charserial0","id":"serial0","reg":805306368}' \ -chardev pty,id=charserial1 \ --device spapr-vty,chardev=charserial1,id=serial1,reg=805310464 \ +-device '{"driver":"spapr-vty","chardev":"charserial1","id":"serial1","reg":805310464}' \ -chardev socket,id=chrtpm,path=/dev/test \ -tpmdev emulator,id=tpm-tpm0,chardev=chrtpm \ --device tpm-spapr,tpmdev=tpm-tpm0,id=tpm0,reg=20480 \ +-device '{"driver":"tpm-spapr","tpmdev":"tpm-tpm0","id":"tpm0","reg":20480}' \ -audiodev '{"id":"audio1","driver":"none"}' \ -global spapr-nvram.reg=0x4000 \ -msg timestamp=on -- 2.34.1

The PowerNV (Power Non-Virtualized) QEMU ppc64 machine is the emulation of a bare-metal IBM Power host. It follows the OPAL (OpenPower Abstration Layer) API/ABI, most specifically Skiboot [1]. For now, Libvirt has support for the pSeries QEMU machine, which is the emulation of a logical partition (guest) that would run on top of a bare-metal system. This patch introduces the helpers that are going to be used to add a basic support for PowerNV domains in Libvirt. Given that there are quite a few similarities in how pSeries and PowerNVv should be handled, we're also adding a 'qemuDomainIsPowerPC' helper that will be used in those instances. [1] https://open-power.github.io/skiboot/doc/overview.html Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_domain.c | 41 +++++++++++++++++++++++++++++++++++++++++ src/qemu/qemu_domain.h | 4 ++++ 2 files changed, 45 insertions(+) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index a8401bac30..2accd4f766 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -8727,6 +8727,47 @@ qemuDomainIsPSeries(const virDomainDef *def) } +/* + * The PowerNV machine does not support KVM acceleration in Power + * hosts. We can skip the usual ARCH_IS_PPC64() since this machine + * is usable with TCG in all host archs. + */ +bool +qemuDomainIsPowerNV(const virDomainDef *def) +{ + if (STRPREFIX(def->os.machine, "powernv")) + return true; + + return false; +} + + +/* + * PowerNV and pSeries domains shares a lot of common traits. This + * helper avoids repeating "if (pseries || powernv)" everywhere this + * is applicable. + */ +bool +qemuDomainIsPowerPC(const virDomainDef *def) +{ + return qemuDomainIsPSeries(def) || qemuDomainIsPowerNV(def); +} + + +/* + * Similar to qemuDomainIsPowerPC(). Usable when the caller doesn't + * have access to a virDomainDef pointer. + */ +bool +qemuDomainMachineIsPowerPC(const char *machine, const virArch arch) +{ + if (STRPREFIX(machine, "powernv")) + return true; + + return qemuDomainMachineIsPSeries(machine, arch); +} + + bool qemuDomainHasPCIRoot(const virDomainDef *def) { diff --git a/src/qemu/qemu_domain.h b/src/qemu/qemu_domain.h index e5046367e3..d07a279a1b 100644 --- a/src/qemu/qemu_domain.h +++ b/src/qemu/qemu_domain.h @@ -761,6 +761,8 @@ bool qemuDomainMachineIsARMVirt(const char *machine, const virArch arch); bool qemuDomainMachineIsPSeries(const char *machine, const virArch arch); +bool qemuDomainMachineIsPowerPC(const char *machine, + const virArch arch); bool qemuDomainMachineHasBuiltinIDE(const char *machine, const virArch arch); @@ -770,6 +772,8 @@ bool qemuDomainIsS390CCW(const virDomainDef *def); bool qemuDomainIsARMVirt(const virDomainDef *def); bool qemuDomainIsRISCVVirt(const virDomainDef *def); bool qemuDomainIsPSeries(const virDomainDef *def); +bool qemuDomainIsPowerNV(const virDomainDef *def); +bool qemuDomainIsPowerPC(const virDomainDef *def); bool qemuDomainHasPCIRoot(const virDomainDef *def); bool qemuDomainHasPCIeRoot(const virDomainDef *def); bool qemuDomainHasBuiltinIDE(const virDomainDef *def); -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:05 -0300, Daniel Henrique Barboza wrote:
The PowerNV (Power Non-Virtualized) QEMU ppc64 machine is the emulation of a bare-metal IBM Power host. It follows the OPAL (OpenPower Abstration Layer) API/ABI, most specifically Skiboot [1]. For now, Libvirt has support for the pSeries QEMU machine, which is the emulation of a logical partition (guest) that would run on top of a bare-metal system.
This patch introduces the helpers that are going to be used to add a basic support for PowerNV domains in Libvirt. Given that there are quite a few similarities in how pSeries and PowerNVv should be handled, we're also adding a 'qemuDomainIsPowerPC' helper that will be used in those instances.
[1] https://open-power.github.io/skiboot/doc/overview.html
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_domain.c | 41 +++++++++++++++++++++++++++++++++++++++++ src/qemu/qemu_domain.h | 4 ++++ 2 files changed, 45 insertions(+)
diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index a8401bac30..2accd4f766 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -8727,6 +8727,47 @@ qemuDomainIsPSeries(const virDomainDef *def) }
+/* + * The PowerNV machine does not support KVM acceleration in Power + * hosts. We can skip the usual ARCH_IS_PPC64() since this machine + * is usable with TCG in all host archs. + */ +bool +qemuDomainIsPowerNV(const virDomainDef *def) +{ + if (STRPREFIX(def->os.machine, "powernv")) + return true; + + return false; +} + + +/* + * PowerNV and pSeries domains shares a lot of common traits. This + * helper avoids repeating "if (pseries || powernv)" everywhere this + * is applicable. + */ +bool +qemuDomainIsPowerPC(const virDomainDef *def) +{ + return qemuDomainIsPSeries(def) || qemuDomainIsPowerNV(def); +} + + +/* + * Similar to qemuDomainIsPowerPC(). Usable when the caller doesn't + * have access to a virDomainDef pointer. + */ +bool +qemuDomainMachineIsPowerPC(const char *machine, const virArch arch) +{ + if (STRPREFIX(machine, "powernv")) + return true; + + return qemuDomainMachineIsPSeries(machine, arch); +}
Ideally the helpers which take the domain definition will call into the helper which does not so that the machine type check is not duplicated. Reviewed-by: Peter Krempa <pkrempa@redhat.com>

Both pSeries and PowerNV machines don't have floppy device support. qemuDomainMachineIsPSeries() can be turned into static since it's now unused outside of qemu_domain.c. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_capabilities.c | 4 ++-- src/qemu/qemu_domain.c | 2 +- src/qemu/qemu_domain.h | 2 -- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index ea35948b01..e922309351 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -6075,8 +6075,8 @@ virQEMUCapsFillDomainDeviceDiskCaps(virQEMUCaps *qemuCaps, VIR_DOMAIN_DISK_DEVICE_CDROM, VIR_DOMAIN_DISK_DEVICE_LUN); - /* PowerPC pseries based VMs do not support floppy device */ - if (!qemuDomainMachineIsPSeries(machine, qemuCaps->arch)) { + /* PowerPC domains do not support floppy device */ + if (!qemuDomainMachineIsPowerPC(machine, qemuCaps->arch)) { VIR_DOMAIN_CAPS_ENUM_SET(disk->diskDevice, VIR_DOMAIN_DISK_DEVICE_FLOPPY); VIR_DOMAIN_CAPS_ENUM_SET(disk->bus, VIR_DOMAIN_DISK_BUS_FDC); } diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 2accd4f766..bf418c8e80 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -8639,7 +8639,7 @@ qemuDomainMachineIsRISCVVirt(const char *machine, /* You should normally avoid this function and use * qemuDomainIsPSeries() instead. */ -bool +static bool qemuDomainMachineIsPSeries(const char *machine, const virArch arch) { diff --git a/src/qemu/qemu_domain.h b/src/qemu/qemu_domain.h index d07a279a1b..fe4420bf83 100644 --- a/src/qemu/qemu_domain.h +++ b/src/qemu/qemu_domain.h @@ -759,8 +759,6 @@ virDomainChrDef *qemuFindAgentConfig(virDomainDef *def); * doesn't have "Machine" in the name instead. */ bool qemuDomainMachineIsARMVirt(const char *machine, const virArch arch); -bool qemuDomainMachineIsPSeries(const char *machine, - const virArch arch); bool qemuDomainMachineIsPowerPC(const char *machine, const virArch arch); bool qemuDomainMachineHasBuiltinIDE(const char *machine, -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:06 -0300, Daniel Henrique Barboza wrote:
Both pSeries and PowerNV machines don't have floppy device support.
qemuDomainMachineIsPSeries() can be turned into static since it's now unused outside of qemu_domain.c.
Preferably don't bundle two not related changes into one commit.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_capabilities.c | 4 ++-- src/qemu/qemu_domain.c | 2 +- src/qemu/qemu_domain.h | 2 -- 3 files changed, 3 insertions(+), 5 deletions(-)
With the commits split: Reviewed-by: Peter Krempa <pkrempa@redhat.com>

On 1/21/22 10:44, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:06 -0300, Daniel Henrique Barboza wrote:
Both pSeries and PowerNV machines don't have floppy device support.
qemuDomainMachineIsPSeries() can be turned into static since it's now unused outside of qemu_domain.c.
Preferably don't bundle two not related changes into one commit.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_capabilities.c | 4 ++-- src/qemu/qemu_domain.c | 2 +- src/qemu/qemu_domain.h | 2 -- 3 files changed, 3 insertions(+), 5 deletions(-)
With the commits split:
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
Thanks. I split the commit as suggested. Daniel

Both PowerNV and pSeries machines don't support parallel ports. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_validate.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index ae0ee4e744..da41848761 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -2007,7 +2007,7 @@ qemuValidateDomainChrDef(const virDomainChrDef *dev, return -1; if (dev->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_PARALLEL && - (ARCH_IS_S390(def->os.arch) || qemuDomainIsPSeries(def))) { + (ARCH_IS_S390(def->os.arch) || qemuDomainIsPowerPC(def))) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("parallel ports are not supported")); return -1; -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:07 -0300, Daniel Henrique Barboza wrote:
Both PowerNV and pSeries machines don't support parallel ports.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_validate.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Reviewed-by: Peter Krempa <pkrempa@redhat.com>

The PowerNV machines uses ISA as the default serial type. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_domain.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index bf418c8e80..88487c6293 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -5175,6 +5175,8 @@ qemuDomainChrDefPostParse(virDomainChrDef *chr, chr->targetType = VIR_DOMAIN_CHR_SERIAL_TARGET_TYPE_SYSTEM; } else if (ARCH_IS_S390(def->os.arch)) { chr->targetType = VIR_DOMAIN_CHR_SERIAL_TARGET_TYPE_SCLP; + } else if (qemuDomainIsPowerNV(def)) { + chr->targetType = VIR_DOMAIN_CHR_SERIAL_TARGET_TYPE_ISA; } } -- 2.34.1

On 1/20/22 10:58, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:08 -0300, Daniel Henrique Barboza wrote:
The PowerNV machines uses ISA as the default serial type.
ISA? Are you sure?
ISA is very legacy x86 bus.
Yes, these machines uses ISA buses. I believe that since it's also uses an UART the bus itself isn't that much of a deal. Thanks, Daniel

On Thu, Jan 20, 2022 at 11:22:15 -0300, Daniel Henrique Barboza wrote:
On 1/20/22 10:58, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:08 -0300, Daniel Henrique Barboza wrote:
The PowerNV machines uses ISA as the default serial type.
ISA? Are you sure?
ISA is very legacy x86 bus.
Yes, these machines uses ISA buses.
Okay, I have very hard time believing it, but I'm not an expert on Power machines.
I believe that since it's also uses an UART the bus itself isn't that much of a deal.
Well, it does matter, because with isa-serial you can configure an ISA address for it: <address type='isa' iobase='0x3f8' irq='0x4'/> I also see that 'isa-serial' is mentioned by the ppc64 capability dump, but in this case I'm not sure whether it's because it really supports an ISA device or it's just that qemu exposes all platform-specific serial ports as 'isa-serial'.

On Fri, Jan 21, 2022 at 03:01:32PM +0100, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 11:22:15 -0300, Daniel Henrique Barboza wrote:
On 1/20/22 10:58, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:08 -0300, Daniel Henrique Barboza wrote:
The PowerNV machines uses ISA as the default serial type.
ISA? Are you sure?
ISA is very legacy x86 bus.
Yes, these machines uses ISA buses.
Okay, I have very hard time believing it, but I'm not an expert on Power machines.
You can see it from the qtree: $ qemu-system-ppc64 -monitor stdio -M powernv QEMU 6.1.0 monitor - type 'help' for more information (qemu) info qtree bus: main-system-bus type System dev: isabus-bridge, id "" bus: isa.0 type ISA dev: isa-ipmi-bt, id "" ioport = 228 (0xe4) irq = 10 (0xa) isa irq 10 dev: mc146818rtc, id "" gpio-out "" 1 base_year = 0 (0x0) lost_tick_policy = "discard" isa irq 8 dev: isa-serial, id "" index = 0 (0x0) iobase = 1016 (0x3f8) irq = 4 (0x4) isa irq 4 ...snip.... Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|

On Fri, Jan 21, 2022 at 14:29:05 +0000, Daniel P. Berrangé wrote:
On Fri, Jan 21, 2022 at 03:01:32PM +0100, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 11:22:15 -0300, Daniel Henrique Barboza wrote:
On 1/20/22 10:58, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:08 -0300, Daniel Henrique Barboza wrote:
The PowerNV machines uses ISA as the default serial type.
ISA? Are you sure?
ISA is very legacy x86 bus.
Yes, these machines uses ISA buses.
Okay, I have very hard time believing it, but I'm not an expert on Power machines.
You can see it from the qtree:
$ qemu-system-ppc64 -monitor stdio -M powernv
Ah, I didn't try as minimal of a commandline, and the definitions added by this series don't seem to work.
QEMU 6.1.0 monitor - type 'help' for more information (qemu) info qtree bus: main-system-bus type System dev: isabus-bridge, id "" bus: isa.0 type ISA dev: isa-ipmi-bt, id "" ioport = 228 (0xe4) irq = 10 (0xa) isa irq 10 dev: mc146818rtc, id "" gpio-out "" 1 base_year = 0 (0x0) lost_tick_policy = "discard" isa irq 8 dev: isa-serial, id "" index = 0 (0x0) iobase = 1016 (0x3f8) irq = 4 (0x4) isa irq 4
Bizzare to see ISA used :D

On Thu, Jan 20, 2022 at 10:52:08 -0300, Daniel Henrique Barboza wrote:
The PowerNV machines uses ISA as the default serial type.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_domain.c | 2 ++ 1 file changed, 2 insertions(+)
Reviewed-by: Peter Krempa <pkrempa@redhat.com>

Add 'virt type' to allow for an easier time debugging. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_validate.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index da41848761..95af0ecf3b 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -1101,8 +1101,10 @@ qemuValidateDomainDef(const virDomainDef *def, if (!virQEMUCapsIsMachineSupported(qemuCaps, def->virtType, def->os.machine)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("Emulator '%s' does not support machine type '%s'"), - def->emulator, def->os.machine); + _("Emulator '%s' does not support machine type '%s' " + "for virt type '%s'"), + def->emulator, def->os.machine, + virDomainVirtTypeToString(def->virtType)); return -1; } -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:09 -0300, Daniel Henrique Barboza wrote:
Add 'virt type' to allow for an easier time debugging.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_validate.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index da41848761..95af0ecf3b 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -1101,8 +1101,10 @@ qemuValidateDomainDef(const virDomainDef *def,
if (!virQEMUCapsIsMachineSupported(qemuCaps, def->virtType, def->os.machine)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("Emulator '%s' does not support machine type '%s'"), - def->emulator, def->os.machine); + _("Emulator '%s' does not support machine type '%s' " + "for virt type '%s'"),
No linebreak in the error message please. https://www.libvirt.org/coding-style.html#error-message-format
+ def->emulator, def->os.machine, + virDomainVirtTypeToString(def->virtType));
Reviewed-by: Peter Krempa <pkrempa@redhat.com>

On 1/21/22 11:02, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:09 -0300, Daniel Henrique Barboza wrote:
Add 'virt type' to allow for an easier time debugging.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_validate.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index da41848761..95af0ecf3b 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -1101,8 +1101,10 @@ qemuValidateDomainDef(const virDomainDef *def,
if (!virQEMUCapsIsMachineSupported(qemuCaps, def->virtType, def->os.machine)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("Emulator '%s' does not support machine type '%s'"), - def->emulator, def->os.machine); + _("Emulator '%s' does not support machine type '%s' " + "for virt type '%s'"),
No linebreak in the error message please.
https://www.libvirt.org/coding-style.html#error-message-format
Is this acceptable? if (!virQEMUCapsIsMachineSupported(qemuCaps, def->virtType, def->os.machine)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("Emulator '%s' does not support machine type '%s'"), - def->emulator, def->os.machine); +_("Emulator '%s' does not support machine type '%s' for virt type '%s'"), + def->emulator, def->os.machine, + virDomainVirtTypeToString(def->virtType)); return -1; } i.e. ignoring the identation of the error messsage to avoid going beyond the 80 char limit? Thanks, Daniel
+ def->emulator, def->os.machine, + virDomainVirtTypeToString(def->virtType));
Reviewed-by: Peter Krempa <pkrempa@redhat.com>

On Mon, Jan 24, 2022 at 08:41:38 -0300, Daniel Henrique Barboza wrote:
On 1/21/22 11:02, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:09 -0300, Daniel Henrique Barboza wrote:
Add 'virt type' to allow for an easier time debugging.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_validate.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index da41848761..95af0ecf3b 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -1101,8 +1101,10 @@ qemuValidateDomainDef(const virDomainDef *def, if (!virQEMUCapsIsMachineSupported(qemuCaps, def->virtType, def->os.machine)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("Emulator '%s' does not support machine type '%s'"), - def->emulator, def->os.machine); + _("Emulator '%s' does not support machine type '%s' " + "for virt type '%s'"),
No linebreak in the error message please.
https://www.libvirt.org/coding-style.html#error-message-format
Is this acceptable?
if (!virQEMUCapsIsMachineSupported(qemuCaps, def->virtType, def->os.machine)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("Emulator '%s' does not support machine type '%s'"), - def->emulator, def->os.machine); +_("Emulator '%s' does not support machine type '%s' for virt type '%s'"), + def->emulator, def->os.machine, + virDomainVirtTypeToString(def->virtType)); return -1; }
i.e. ignoring the identation of the error messsage to avoid going beyond the 80 char limit?
No. The correct way is to ignore the 80 char line length limit exactly as the coding style document says.

On 1/24/22 08:43, Peter Krempa wrote:
On Mon, Jan 24, 2022 at 08:41:38 -0300, Daniel Henrique Barboza wrote:
On 1/21/22 11:02, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:09 -0300, Daniel Henrique Barboza wrote:
Add 'virt type' to allow for an easier time debugging.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_validate.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index da41848761..95af0ecf3b 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -1101,8 +1101,10 @@ qemuValidateDomainDef(const virDomainDef *def, if (!virQEMUCapsIsMachineSupported(qemuCaps, def->virtType, def->os.machine)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("Emulator '%s' does not support machine type '%s'"), - def->emulator, def->os.machine); + _("Emulator '%s' does not support machine type '%s' " + "for virt type '%s'"),
No linebreak in the error message please.
https://www.libvirt.org/coding-style.html#error-message-format
Is this acceptable?
if (!virQEMUCapsIsMachineSupported(qemuCaps, def->virtType, def->os.machine)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("Emulator '%s' does not support machine type '%s'"), - def->emulator, def->os.machine); +_("Emulator '%s' does not support machine type '%s' for virt type '%s'"), + def->emulator, def->os.machine, + virDomainVirtTypeToString(def->virtType)); return -1; }
i.e. ignoring the identation of the error messsage to avoid going beyond the 80 char limit?
No. The correct way is to ignore the 80 char line length limit exactly as the coding style document says.
Got it. Amended with identation. Thanks, Daniel

PowerNV domains will support pcie-root devices as PHBs, in a similar fashion as pSeries domains supports the spapr-pci-host-bridge as a pci-root model. Set 'addPCIRoot' to false since we'll not be using this buses in this machine. 'addDefaultMemballoon' is also set to false since the balloon driver wasn't really tested with the PowerNV kernel. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_domain.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 88487c6293..d0bb4938ec 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -3678,6 +3678,15 @@ qemuDomainDefAddDefaultDevices(virQEMUDriver *driver, * add the definition if not already present */ if (qemuDomainIsPSeries(def)) addPanicDevice = true; + + if (qemuDomainIsPowerNV(def)) { + addPCIRoot = false; + addDefaultUSB = false; + addDefaultUSBKBD = false; + addDefaultUSBMouse = false; + addDefaultMemballoon = false; + } + break; case VIR_ARCH_ALPHA: -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:10 -0300, Daniel Henrique Barboza wrote:
PowerNV domains will support pcie-root devices as PHBs, in a similar fashion as pSeries domains supports the spapr-pci-host-bridge as a pci-root model.
Set 'addPCIRoot' to false since we'll not be using this buses in this machine. 'addDefaultMemballoon' is also set to false since the balloon driver wasn't really tested with the PowerNV kernel.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_domain.c | 9 +++++++++ 1 file changed, 9 insertions(+)
Reviewed-by: Peter Krempa <pkrempa@redhat.com>

We're now able to boot a simple PowerNV8 domain in Libvirt. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- tests/qemuxml2argvdata/powernv8-basic.args | 31 +++++++++++++++++++++ tests/qemuxml2argvdata/powernv8-basic.xml | 16 +++++++++++ tests/qemuxml2argvtest.c | 3 ++ tests/qemuxml2xmloutdata/powernv8-basic.xml | 28 +++++++++++++++++++ tests/qemuxml2xmltest.c | 3 ++ tests/testutilsqemu.c | 2 +- 6 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 tests/qemuxml2argvdata/powernv8-basic.args create mode 100644 tests/qemuxml2argvdata/powernv8-basic.xml create mode 100644 tests/qemuxml2xmloutdata/powernv8-basic.xml diff --git a/tests/qemuxml2argvdata/powernv8-basic.args b/tests/qemuxml2argvdata/powernv8-basic.args new file mode 100644 index 0000000000..822cf62bdf --- /dev/null +++ b/tests/qemuxml2argvdata/powernv8-basic.args @@ -0,0 +1,31 @@ +LC_ALL=C \ +PATH=/bin \ +HOME=/tmp/lib/domain--1-QEMUGuest1 \ +USER=test \ +LOGNAME=test \ +XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \ +XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \ +XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \ +QEMU_AUDIO_DRV=none \ +/usr/bin/qemu-system-ppc64 \ +-name guest=QEMUGuest1,debug-threads=on \ +-S \ +-object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \ +-machine powernv8,usb=off,dump-guest-core=off \ +-accel tcg \ +-m 2048 \ +-realtime mlock=off \ +-smp 1,sockets=1,cores=1,threads=1 \ +-uuid b20fcfe3-4a0a-4039-8735-9e024256e0f7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,server=on,wait=off \ +-mon chardev=charmonitor,id=monitor,mode=control \ +-rtc base=utc \ +-no-shutdown \ +-boot strict=on \ +-usb \ +-chardev pty,id=charserial0 \ +-device isa-serial,chardev=charserial0,id=serial0,index=0 \ +-msg timestamp=on diff --git a/tests/qemuxml2argvdata/powernv8-basic.xml b/tests/qemuxml2argvdata/powernv8-basic.xml new file mode 100644 index 0000000000..a92fc1282c --- /dev/null +++ b/tests/qemuxml2argvdata/powernv8-basic.xml @@ -0,0 +1,16 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='ppc64' machine='powernv8'>hvm</type> + </os> + <devices> + <emulator>/usr/bin/qemu-system-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'/> + <console type='pty'> + <target type='serial' port='0'/> + </console> + </devices> +</domain> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 9d2de2a569..7fcfcc83f1 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2217,6 +2217,9 @@ mymain(void) DO_TEST_PARSE_ERROR_NOCAPS("seclabel-multiple"); DO_TEST_PARSE_ERROR_NOCAPS("seclabel-device-duplicates"); + DO_TEST("powernv8-basic", + QEMU_CAPS_DEVICE_ISA_SERIAL); + DO_TEST("pseries-basic", QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, QEMU_CAPS_DEVICE_SPAPR_VTY); diff --git a/tests/qemuxml2xmloutdata/powernv8-basic.xml b/tests/qemuxml2xmloutdata/powernv8-basic.xml new file mode 100644 index 0000000000..7b798b979d --- /dev/null +++ b/tests/qemuxml2xmloutdata/powernv8-basic.xml @@ -0,0 +1,28 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <currentMemory unit='KiB'>2097152</currentMemory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='ppc64' machine='powernv8'>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-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'/> + <serial type='pty'> + <target type='isa-serial' port='0'> + <model name='isa-serial'/> + </target> + </serial> + <console type='pty'> + <target type='serial' port='0'/> + </console> + <audio id='1' type='none'/> + </devices> +</domain> diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index ce1cac31c8..5a19fdbda5 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -637,6 +637,9 @@ mymain(void) QEMU_CAPS_OBJECT_RNG_EGD); DO_TEST_CAPS_LATEST("virtio-rng-builtin"); + DO_TEST("powernv8-basic", + QEMU_CAPS_DEVICE_ISA_SERIAL); + DO_TEST("pseries-nvram", QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, QEMU_CAPS_DEVICE_NVRAM); diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index cb665e501b..5d29125ffa 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -54,7 +54,7 @@ static const char *const arm_machines[] = { "vexpress-a9", "virt", NULL }; static const char *const ppc64_machines[] = { - "pseries", NULL + "pseries", "powernv8", NULL }; static const char *const ppc_machines[] = { "ppce500", NULL -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:11 -0300, Daniel Henrique Barboza wrote:
We're now able to boot a simple PowerNV8 domain in Libvirt.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- tests/qemuxml2argvdata/powernv8-basic.args | 31 +++++++++++++++++++++ tests/qemuxml2argvdata/powernv8-basic.xml | 16 +++++++++++ tests/qemuxml2argvtest.c | 3 ++ tests/qemuxml2xmloutdata/powernv8-basic.xml | 28 +++++++++++++++++++ tests/qemuxml2xmltest.c | 3 ++ tests/testutilsqemu.c | 2 +- 6 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 tests/qemuxml2argvdata/powernv8-basic.args create mode 100644 tests/qemuxml2argvdata/powernv8-basic.xml create mode 100644 tests/qemuxml2xmloutdata/powernv8-basic.xml
[...]
diff --git a/tests/qemuxml2argvdata/powernv8-basic.xml b/tests/qemuxml2argvdata/powernv8-basic.xml new file mode 100644 index 0000000000..a92fc1282c --- /dev/null +++ b/tests/qemuxml2argvdata/powernv8-basic.xml @@ -0,0 +1,16 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='ppc64' machine='powernv8'>hvm</type> + </os> + <devices> + <emulator>/usr/bin/qemu-system-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'/> + <console type='pty'> + <target type='serial' port='0'/> + </console> + </devices> +</domain>
Trying to start this config after this series is applied fails with: error: internal error: process exited while connecting to monitor: 2022-01-21T14:04:54.119602Z qemu-system-ppc64: -device pnv-phb3,index=0,chip-id=0,id=pcie.0: Parameter 'driver' expects a pluggable device type qemu-system-ppc-core-6.2.0-2.fc35.x86_64
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 9d2de2a569..7fcfcc83f1 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2217,6 +2217,9 @@ mymain(void) DO_TEST_PARSE_ERROR_NOCAPS("seclabel-multiple"); DO_TEST_PARSE_ERROR_NOCAPS("seclabel-device-duplicates");
+ DO_TEST("powernv8-basic", + QEMU_CAPS_DEVICE_ISA_SERIAL);
All new test cases shoud use DO_TEST_CAPS_ARCH_LATEST instead of fake capabilities.
+ DO_TEST("pseries-basic", QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, QEMU_CAPS_DEVICE_SPAPR_VTY);
[...]
diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index cb665e501b..5d29125ffa 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -54,7 +54,7 @@ static const char *const arm_machines[] = { "vexpress-a9", "virt", NULL }; static const char *const ppc64_machines[] = { - "pseries", NULL + "pseries", "powernv8", NULL
NACK to this hunk. Use real capabilities instead.
}; static const char *const ppc_machines[] = { "ppce500", NULL -- 2.34.1

On 1/21/22 11:08, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:11 -0300, Daniel Henrique Barboza wrote:
We're now able to boot a simple PowerNV8 domain in Libvirt.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- tests/qemuxml2argvdata/powernv8-basic.args | 31 +++++++++++++++++++++ tests/qemuxml2argvdata/powernv8-basic.xml | 16 +++++++++++ tests/qemuxml2argvtest.c | 3 ++ tests/qemuxml2xmloutdata/powernv8-basic.xml | 28 +++++++++++++++++++ tests/qemuxml2xmltest.c | 3 ++ tests/testutilsqemu.c | 2 +- 6 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 tests/qemuxml2argvdata/powernv8-basic.args create mode 100644 tests/qemuxml2argvdata/powernv8-basic.xml create mode 100644 tests/qemuxml2xmloutdata/powernv8-basic.xml
[...]
diff --git a/tests/qemuxml2argvdata/powernv8-basic.xml b/tests/qemuxml2argvdata/powernv8-basic.xml new file mode 100644 index 0000000000..a92fc1282c --- /dev/null +++ b/tests/qemuxml2argvdata/powernv8-basic.xml @@ -0,0 +1,16 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='ppc64' machine='powernv8'>hvm</type> + </os> + <devices> + <emulator>/usr/bin/qemu-system-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'/> + <console type='pty'> + <target type='serial' port='0'/> + </console> + </devices> +</domain>
Trying to start this config after this series is applied fails with:
error: internal error: process exited while connecting to monitor: 2022-01-21T14:04:54.119602Z qemu-system-ppc64: -device pnv-phb3,index=0,chip-id=0,id=pcie.0: Parameter 'driver' expects a pluggable device type
qemu-system-ppc-core-6.2.0-2.fc35.x86_64
You'll need QEMU upstream to test it. QEMU 6.2.0 doesn't allow the PHBs to be user created. I think I mentioned in the cover letter that I didn't find a good way to block Libvirt users from doing exactly as you attempted to do because the pnv-phb3 is presented, but it's unusable. The places where we bother checking QEMU version is on qemu_process.c when creating a log in qemuLogOperation() and in qemu_driver.c in qemuConnectGetVersion. I didn't find any other case where Libvirt checks for QEMU version to check whether a feature is valid or not, because well, Libvirt uses capabilities to avoid doing that in the first place.
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 9d2de2a569..7fcfcc83f1 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2217,6 +2217,9 @@ mymain(void) DO_TEST_PARSE_ERROR_NOCAPS("seclabel-multiple"); DO_TEST_PARSE_ERROR_NOCAPS("seclabel-device-duplicates");
+ DO_TEST("powernv8-basic", + QEMU_CAPS_DEVICE_ISA_SERIAL);
All new test cases shoud use DO_TEST_CAPS_ARCH_LATEST instead of fake capabilities.
I'll fix it here and in all other tests I ended up adding in this series. Thanks, Daniel
+ DO_TEST("pseries-basic", QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, QEMU_CAPS_DEVICE_SPAPR_VTY);
[...]
diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index cb665e501b..5d29125ffa 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -54,7 +54,7 @@ static const char *const arm_machines[] = { "vexpress-a9", "virt", NULL }; static const char *const ppc64_machines[] = { - "pseries", NULL + "pseries", "powernv8", NULL
NACK to this hunk. Use real capabilities instead.
}; static const char *const ppc_machines[] = { "ppce500", NULL -- 2.34.1

On Mon, Jan 24, 2022 at 08:57:02 -0300, Daniel Henrique Barboza wrote:
On 1/21/22 11:08, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:11 -0300, Daniel Henrique Barboza wrote:
We're now able to boot a simple PowerNV8 domain in Libvirt.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- tests/qemuxml2argvdata/powernv8-basic.args | 31 +++++++++++++++++++++ tests/qemuxml2argvdata/powernv8-basic.xml | 16 +++++++++++ tests/qemuxml2argvtest.c | 3 ++ tests/qemuxml2xmloutdata/powernv8-basic.xml | 28 +++++++++++++++++++ tests/qemuxml2xmltest.c | 3 ++ tests/testutilsqemu.c | 2 +- 6 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 tests/qemuxml2argvdata/powernv8-basic.args create mode 100644 tests/qemuxml2argvdata/powernv8-basic.xml create mode 100644 tests/qemuxml2xmloutdata/powernv8-basic.xml
[...]
diff --git a/tests/qemuxml2argvdata/powernv8-basic.xml b/tests/qemuxml2argvdata/powernv8-basic.xml new file mode 100644 index 0000000000..a92fc1282c --- /dev/null +++ b/tests/qemuxml2argvdata/powernv8-basic.xml @@ -0,0 +1,16 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='ppc64' machine='powernv8'>hvm</type> + </os> + <devices> + <emulator>/usr/bin/qemu-system-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'/> + <console type='pty'> + <target type='serial' port='0'/> + </console> + </devices> +</domain>
Trying to start this config after this series is applied fails with:
error: internal error: process exited while connecting to monitor: 2022-01-21T14:04:54.119602Z qemu-system-ppc64: -device pnv-phb3,index=0,chip-id=0,id=pcie.0: Parameter 'driver' expects a pluggable device type
qemu-system-ppc-core-6.2.0-2.fc35.x86_64
You'll need QEMU upstream to test it. QEMU 6.2.0 doesn't allow the PHBs to be user created. I think I mentioned in the cover letter that I didn't find a good way to block Libvirt users from doing exactly as you attempted to do because the pnv-phb3 is presented, but it's unusable.
The places where we bother checking QEMU version is on qemu_process.c when creating a log in qemuLogOperation() and in qemu_driver.c in qemuConnectGetVersion. I didn't find any other case where Libvirt checks for QEMU version to check whether a feature is valid or not, because well, Libvirt uses capabilities to avoid doing that in the first place.
In very specific cases when there's absolutely no other possibility to do so we assert certain virQEMUCaps based on version number. Currently there's just one. See: virQEMUCapsInitQMPVersionCaps

On 1/24/22 09:04, Peter Krempa wrote:
On Mon, Jan 24, 2022 at 08:57:02 -0300, Daniel Henrique Barboza wrote:
On 1/21/22 11:08, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:11 -0300, Daniel Henrique Barboza wrote:
We're now able to boot a simple PowerNV8 domain in Libvirt.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- tests/qemuxml2argvdata/powernv8-basic.args | 31 +++++++++++++++++++++ tests/qemuxml2argvdata/powernv8-basic.xml | 16 +++++++++++ tests/qemuxml2argvtest.c | 3 ++ tests/qemuxml2xmloutdata/powernv8-basic.xml | 28 +++++++++++++++++++ tests/qemuxml2xmltest.c | 3 ++ tests/testutilsqemu.c | 2 +- 6 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 tests/qemuxml2argvdata/powernv8-basic.args create mode 100644 tests/qemuxml2argvdata/powernv8-basic.xml create mode 100644 tests/qemuxml2xmloutdata/powernv8-basic.xml
[...]
diff --git a/tests/qemuxml2argvdata/powernv8-basic.xml b/tests/qemuxml2argvdata/powernv8-basic.xml new file mode 100644 index 0000000000..a92fc1282c --- /dev/null +++ b/tests/qemuxml2argvdata/powernv8-basic.xml @@ -0,0 +1,16 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='ppc64' machine='powernv8'>hvm</type> + </os> + <devices> + <emulator>/usr/bin/qemu-system-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'/> + <console type='pty'> + <target type='serial' port='0'/> + </console> + </devices> +</domain>
Trying to start this config after this series is applied fails with:
error: internal error: process exited while connecting to monitor: 2022-01-21T14:04:54.119602Z qemu-system-ppc64: -device pnv-phb3,index=0,chip-id=0,id=pcie.0: Parameter 'driver' expects a pluggable device type
qemu-system-ppc-core-6.2.0-2.fc35.x86_64
You'll need QEMU upstream to test it. QEMU 6.2.0 doesn't allow the PHBs to be user created. I think I mentioned in the cover letter that I didn't find a good way to block Libvirt users from doing exactly as you attempted to do because the pnv-phb3 is presented, but it's unusable.
The places where we bother checking QEMU version is on qemu_process.c when creating a log in qemuLogOperation() and in qemu_driver.c in qemuConnectGetVersion. I didn't find any other case where Libvirt checks for QEMU version to check whether a feature is valid or not, because well, Libvirt uses capabilities to avoid doing that in the first place.
In very specific cases when there's absolutely no other possibility to do so we assert certain virQEMUCaps based on version number. Currently there's just one. See: virQEMUCapsInitQMPVersionCaps
Thanks for the pointer. I'll look it up and see if this is possible with these PowerNV capabilities I'm adding in this series. Daniel

The PowerNV machine does not implement any form of migration. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_migration.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c index 2635ef1162..dc2fe92e9b 100644 --- a/src/qemu/qemu_migration.c +++ b/src/qemu/qemu_migration.c @@ -1332,6 +1332,12 @@ qemuMigrationSrcIsAllowed(virQEMUDriver *driver, int pauseReason; size_t i; + if (qemuDomainIsPowerNV(vm->def)) { + virReportError(VIR_ERR_OPERATION_INVALID, "%s", + _("Powernv domains are not migratable")); + return false; + } + /* perform these checks only when migrating to remote hosts */ if (remote) { nsnapshots = virDomainSnapshotObjListNum(vm->snapshots, NULL, 0); -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:12 -0300, Daniel Henrique Barboza wrote:
The PowerNV machine does not implement any form of migration.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_migration.c | 6 ++++++ 1 file changed, 6 insertions(+)
Reviewed-by: Peter Krempa <pkrempa@redhat.com>

On Thu, Jan 20, 2022 at 10:52:12AM -0300, Daniel Henrique Barboza wrote:
The PowerNV machine does not implement any form of migration.
What do you mean by that ? Migration is a general feature in QEMU, not typically something that a machine types opts in/out of. It is possible for devices to register migration blockers to prevent it, but libvirt shouldn't try to second guess that. Overall I'd like to see a clear justification for why libvirt should enforce a policy here, as opposed to letting QEMU accept or reject the migration.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_migration.c | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c index 2635ef1162..dc2fe92e9b 100644 --- a/src/qemu/qemu_migration.c +++ b/src/qemu/qemu_migration.c @@ -1332,6 +1332,12 @@ qemuMigrationSrcIsAllowed(virQEMUDriver *driver, int pauseReason; size_t i;
+ if (qemuDomainIsPowerNV(vm->def)) { + virReportError(VIR_ERR_OPERATION_INVALID, "%s", + _("Powernv domains are not migratable")); + return false; + } + /* perform these checks only when migrating to remote hosts */ if (remote) { nsnapshots = virDomainSnapshotObjListNum(vm->snapshots, NULL, 0); -- 2.34.1
Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|

On 1/21/22 11:33, Daniel P. Berrangé wrote:
On Thu, Jan 20, 2022 at 10:52:12AM -0300, Daniel Henrique Barboza wrote:
The PowerNV machine does not implement any form of migration.
What do you mean by that ?
Migration is a general feature in QEMU, not typically something that a machine types opts in/out of.
What I meant with this patch is that migration, albeit possible, will not work. These emulations doesn't implement vmstate() for their internal states or its specific devices. The reason is a more complicated version of "because no one bother to do it". It's technically doable of course (as you said, every QEMU machine is migratable per default) but not something that we have in our long-term scope. This patch had the intention to tell users to 'don't even bother migrating these domains, it doesn't work'. We can live without it and let QEMU error out normally.
It is possible for devices to register migration blockers to prevent it, but libvirt shouldn't try to second guess that.
I agree that this kind of handling is something that belongs to QEMU and it's best that Libvirt doesn't speculate about it.
Overall I'd like to see a clear justification for why libvirt should enforce a policy here, as opposed to letting QEMU accept or reject the migration.
I'm fine with dropping this patch. Thanks, Daniel
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_migration.c | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c index 2635ef1162..dc2fe92e9b 100644 --- a/src/qemu/qemu_migration.c +++ b/src/qemu/qemu_migration.c @@ -1332,6 +1332,12 @@ qemuMigrationSrcIsAllowed(virQEMUDriver *driver, int pauseReason; size_t i;
+ if (qemuDomainIsPowerNV(vm->def)) { + virReportError(VIR_ERR_OPERATION_INVALID, "%s", + _("Powernv domains are not migratable")); + return false; + } + /* perform these checks only when migrating to remote hosts */ if (remote) { nsnapshots = virDomainSnapshotObjListNum(vm->snapshots, NULL, 0); -- 2.34.1
Regards, Daniel

On Mon, Jan 24, 2022 at 10:09:30AM -0300, Daniel Henrique Barboza wrote:
On 1/21/22 11:33, Daniel P. Berrangé wrote:
On Thu, Jan 20, 2022 at 10:52:12AM -0300, Daniel Henrique Barboza wrote:
The PowerNV machine does not implement any form of migration.
What do you mean by that ?
Migration is a general feature in QEMU, not typically something that a machine types opts in/out of.
What I meant with this patch is that migration, albeit possible, will not work. These emulations doesn't implement vmstate() for their internal states or its specific devices.
The reason is a more complicated version of "because no one bother to do it". It's technically doable of course (as you said, every QEMU machine is migratable per default) but not something that we have in our long-term scope.
This patch had the intention to tell users to 'don't even bother migrating these domains, it doesn't work'. We can live without it and let QEMU error out normally.
It is possible for devices to register migration blockers to prevent it, but libvirt shouldn't try to second guess that.
I agree that this kind of handling is something that belongs to QEMU and it's best that Libvirt doesn't speculate about it.
Overall I'd like to see a clear justification for why libvirt should enforce a policy here, as opposed to letting QEMU accept or reject the migration.
I'm fine with dropping this patch.
Ok, lets drop this one and rely on QEMU reporting the lack of support. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|

The pnv-phb3-root-port device is the pcie-root-port device for PowerNV8 domains. Add its QEMU capability so Libvirt can recognize it. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_capabilities.c | 2 ++ src/qemu/qemu_capabilities.h | 1 + tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml | 1 + 6 files changed, 7 insertions(+) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index e922309351..a4cea7b90e 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -657,6 +657,7 @@ VIR_ENUM_IMPL(virQEMUCaps, /* 420 */ "device.json+hotplug", /* QEMU_CAPS_DEVICE_JSON */ + "pnv-phb3-root-port", /* QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT */ ); @@ -1356,6 +1357,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = { { "virtio-vga-gl", QEMU_CAPS_VIRTIO_VGA_GL }, { "s390-pv-guest", QEMU_CAPS_S390_PV_GUEST }, { "virtio-mem-pci", QEMU_CAPS_DEVICE_VIRTIO_MEM_PCI }, + { "pnv-phb3-root-port", QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT }, }; diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index 7d42e3a714..8ea8bed72d 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -636,6 +636,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */ /* 420 */ QEMU_CAPS_DEVICE_JSON, /* -device accepts JSON (and works with hot-unplug) */ + QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT, /* -device pnv-phb3-root-port */ QEMU_CAPS_LAST /* this must always be the last item */ } virQEMUCapsFlags; diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml index 070d0f2982..399125b6c5 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml @@ -186,6 +186,7 @@ <flag name='input-linux'/> <flag name='query-display-options'/> <flag name='virtio-blk.queue-size'/> + <flag name='pnv-phb3-root-port'/> <version>5000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900241</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml index 0cbbffe4fb..3ff63aceb9 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml @@ -189,6 +189,7 @@ <flag name='query-display-options'/> <flag name='virtio-blk.queue-size'/> <flag name='query-dirty-rate'/> + <flag name='pnv-phb3-root-port'/> <version>5002000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900243</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml index 2c8e5fe533..cc48efebac 100644 --- a/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml @@ -198,6 +198,7 @@ <flag name='piix4.acpi-root-pci-hotplug'/> <flag name='query-dirty-rate'/> <flag name='rbd-encryption'/> + <flag name='pnv-phb3-root-port'/> <version>6001050</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900244</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml index 88eee87587..38dd2bd797 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml @@ -200,6 +200,7 @@ <flag name='rbd-encryption'/> <flag name='sev-guest-kernel-hashes'/> <flag name='device.json+hotplug'/> + <flag name='pnv-phb3-root-port'/> <version>6002050</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900243</microcodeVersion> -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:13 -0300, Daniel Henrique Barboza wrote:
The pnv-phb3-root-port device is the pcie-root-port device for PowerNV8 domains.
Add its QEMU capability so Libvirt can recognize it.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_capabilities.c | 2 ++ src/qemu/qemu_capabilities.h | 1 + tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml | 1 + 6 files changed, 7 insertions(+)
Reviewed-by: Peter Krempa <pkrempa@redhat.com>

Apart from being usable only with pnv-phb3 PCIE host bridges (to be added soon), this device acts as a regular pcie-root-port but with a specific model name. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- docs/schemas/domaincommon.rng | 1 + src/conf/domain_conf.c | 1 + src/conf/domain_conf.h | 1 + src/qemu/qemu_validate.c | 2 ++ 4 files changed, 5 insertions(+) diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng index 169b8d8dee..9e2797ec58 100644 --- a/docs/schemas/domaincommon.rng +++ b/docs/schemas/domaincommon.rng @@ -2601,6 +2601,7 @@ <!-- implementations of "pcie-root-port" --> <value>ioh3420</value> <value>pcie-root-port</value> + <value>pnv-phb3-root-port</value> <!-- implementations of "pcie-switch-upstream-port" --> <value>x3130-upstream</value> <!-- implementations of "pcie-switch-downstream-port" --> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 393f9d9478..c540b740df 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -437,6 +437,7 @@ VIR_ENUM_IMPL(virDomainControllerPCIModelName, "pcie-root-port", "spapr-pci-host-bridge", "pcie-pci-bridge", + "pnv-phb3-root-port", ); VIR_ENUM_IMPL(virDomainControllerModelSCSI, diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index e2f35fe20b..18aa7a885b 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -645,6 +645,7 @@ typedef enum { VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PCIE_ROOT_PORT, VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_SPAPR_PCI_HOST_BRIDGE, VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PCIE_PCI_BRIDGE, + VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT, VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_LAST } virDomainControllerPCIModelName; diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index 95af0ecf3b..bdb7c6f1e6 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -3429,6 +3429,8 @@ virValidateControllerPCIModelNameToQEMUCaps(int modelName) return QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE; case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PCIE_PCI_BRIDGE: return QEMU_CAPS_DEVICE_PCIE_PCI_BRIDGE; + case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT: + return QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT; case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE: return 0; case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_LAST: -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:14 -0300, Daniel Henrique Barboza wrote:
Apart from being usable only with pnv-phb3 PCIE host bridges (to be added soon), this device acts as a regular pcie-root-port but with a specific model name.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- docs/schemas/domaincommon.rng | 1 + src/conf/domain_conf.c | 1 + src/conf/domain_conf.h | 1 + src/qemu/qemu_validate.c | 2 ++ 4 files changed, 5 insertions(+)
[...]
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 393f9d9478..c540b740df 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -437,6 +437,7 @@ VIR_ENUM_IMPL(virDomainControllerPCIModelName, "pcie-root-port", "spapr-pci-host-bridge", "pcie-pci-bridge", + "pnv-phb3-root-port", );
Missing corresponding 'docs/formatdomain.rst' change.

On 1/21/22 11:17, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:14 -0300, Daniel Henrique Barboza wrote:
Apart from being usable only with pnv-phb3 PCIE host bridges (to be added soon), this device acts as a regular pcie-root-port but with a specific model name.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- docs/schemas/domaincommon.rng | 1 + src/conf/domain_conf.c | 1 + src/conf/domain_conf.h | 1 + src/qemu/qemu_validate.c | 2 ++ 4 files changed, 5 insertions(+)
[...]
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 393f9d9478..c540b740df 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -437,6 +437,7 @@ VIR_ENUM_IMPL(virDomainControllerPCIModelName, "pcie-root-port", "spapr-pci-host-bridge", "pcie-pci-bridge", + "pnv-phb3-root-port", );
Missing corresponding 'docs/formatdomain.rst' change.
The reason I didn't add a note in that doc is because of this specific paragraph: "PCI controllers also have an optional subelement <model> with an attribute name. The name attribute holds the name of the specific device that qemu is emulating (e.g. "i82801b11-bridge") rather than simply the class of device ("pcie-to-pci-bridge", "pci-bridge"), which is set in the controller element's model attribute. In almost all cases, you should not manually add a <model> subelement to a controller, nor should you modify one that is automatically generated by libvirt. Since 1.2.19 (QEMU only)." This, summed up with the fact that not all PCI model names are documented in this doc (e.g. the ioh3420 root port model name), gave me the impression that we don't want/bother to specify these details to the user. All this said, I can add a patch that documents all the model names currently supported, then I can add the new stuff on top of it. Thanks, Daniel

On Tue, Jan 25, 2022 at 09:40:48 -0300, Daniel Henrique Barboza wrote:
On 1/21/22 11:17, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:14 -0300, Daniel Henrique Barboza wrote:
Apart from being usable only with pnv-phb3 PCIE host bridges (to be added soon), this device acts as a regular pcie-root-port but with a specific model name.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- docs/schemas/domaincommon.rng | 1 + src/conf/domain_conf.c | 1 + src/conf/domain_conf.h | 1 + src/qemu/qemu_validate.c | 2 ++ 4 files changed, 5 insertions(+)
[...]
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 393f9d9478..c540b740df 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -437,6 +437,7 @@ VIR_ENUM_IMPL(virDomainControllerPCIModelName, "pcie-root-port", "spapr-pci-host-bridge", "pcie-pci-bridge", + "pnv-phb3-root-port", );
Missing corresponding 'docs/formatdomain.rst' change.
The reason I didn't add a note in that doc is because of this specific paragraph:
"PCI controllers also have an optional subelement <model> with an attribute name. The name attribute holds the name of the specific device that qemu is emulating (e.g. "i82801b11-bridge") rather than simply the class of device ("pcie-to-pci-bridge", "pci-bridge"), which is set in the controller element's model attribute. In almost all cases, you should not manually add a <model> subelement to a controller, nor should you modify one that is automatically generated by libvirt. Since 1.2.19 (QEMU only)."
This, summed up with the fact that not all PCI model names are documented in this doc (e.g. the ioh3420 root port model name), gave me the impression that we don't want/bother to specify these details to the user.
All this said, I can add a patch that documents all the model names currently supported, then I can add the new stuff on top of it.
No with the documentation stating that it's not really for users and having an already existing status-quo of not mentioning what we already have it's okay. Just mention in the commit message the reason for not adding docs.

Use the 'modelName' attribute for the pnv-phb3-root-port device. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_domain_address.c | 5 +++++ src/qemu/qemu_validate.c | 10 +++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index 18fc34d049..c62b9b4230 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -2420,6 +2420,11 @@ qemuDomainPCIControllerSetDefaultModelName(virDomainControllerDef *cont, *modelName = VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PCIE_PCI_BRIDGE; break; case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT_PORT: + if (qemuDomainIsPowerNV(def)) { + *modelName = VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT; + break; + } + /* Use generic PCIe Root Ports if available, falling back to * ioh3420 otherwise */ if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_PCIE_ROOT_PORT)) diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index bdb7c6f1e6..a5c11c3a9c 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -3598,10 +3598,18 @@ qemuValidateDomainDeviceDefControllerPCI(const virDomainControllerDef *cont, case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT_PORT: if (pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_IOH3420 && - pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PCIE_ROOT_PORT) { + pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PCIE_ROOT_PORT && + pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT) { virReportControllerInvalidValue(cont, model, modelName, "modelName"); return -1; } + + if (pciopts->modelName == VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT && + !qemuDomainIsPowerNV(def)) { + virReportControllerInvalidValue(cont, model, modelName, "modelName"); + return -1; + } + break; case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_SWITCH_UPSTREAM_PORT: -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:15 -0300, Daniel Henrique Barboza wrote:
Use the 'modelName' attribute for the pnv-phb3-root-port device.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_domain_address.c | 5 +++++ src/qemu/qemu_validate.c | 10 +++++++++- 2 files changed, 14 insertions(+), 1 deletion(-)
Reviewed-by: Peter Krempa <pkrempa@redhat.com>

The pnv-phb3 device is the pcie-root controller for PowerNV8 domains. Add its QEMU capability so Libvirt can recognize it. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_capabilities.c | 2 ++ src/qemu/qemu_capabilities.h | 1 + tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml | 1 + 6 files changed, 7 insertions(+) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index a4cea7b90e..a1012d4795 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -658,6 +658,7 @@ VIR_ENUM_IMPL(virQEMUCaps, /* 420 */ "device.json+hotplug", /* QEMU_CAPS_DEVICE_JSON */ "pnv-phb3-root-port", /* QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT */ + "pnv-phb3", /* QEMU_CAPS_DEVICE_PNV_PHB3 */ ); @@ -1358,6 +1359,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = { { "s390-pv-guest", QEMU_CAPS_S390_PV_GUEST }, { "virtio-mem-pci", QEMU_CAPS_DEVICE_VIRTIO_MEM_PCI }, { "pnv-phb3-root-port", QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT }, + { "pnv-phb3", QEMU_CAPS_DEVICE_PNV_PHB3 }, }; diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index 8ea8bed72d..0d76db484b 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -637,6 +637,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */ /* 420 */ QEMU_CAPS_DEVICE_JSON, /* -device accepts JSON (and works with hot-unplug) */ QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT, /* -device pnv-phb3-root-port */ + QEMU_CAPS_DEVICE_PNV_PHB3, /* -device pnv-phb3 */ QEMU_CAPS_LAST /* this must always be the last item */ } virQEMUCapsFlags; diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml index 399125b6c5..809999734e 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml @@ -187,6 +187,7 @@ <flag name='query-display-options'/> <flag name='virtio-blk.queue-size'/> <flag name='pnv-phb3-root-port'/> + <flag name='pnv-phb3'/> <version>5000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900241</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml index 3ff63aceb9..dc055245ff 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml @@ -190,6 +190,7 @@ <flag name='virtio-blk.queue-size'/> <flag name='query-dirty-rate'/> <flag name='pnv-phb3-root-port'/> + <flag name='pnv-phb3'/> <version>5002000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900243</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml index cc48efebac..dc9fce3a49 100644 --- a/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml @@ -199,6 +199,7 @@ <flag name='query-dirty-rate'/> <flag name='rbd-encryption'/> <flag name='pnv-phb3-root-port'/> + <flag name='pnv-phb3'/> <version>6001050</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900244</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml index 38dd2bd797..1f622d1372 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml @@ -201,6 +201,7 @@ <flag name='sev-guest-kernel-hashes'/> <flag name='device.json+hotplug'/> <flag name='pnv-phb3-root-port'/> + <flag name='pnv-phb3'/> <version>6002050</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900243</microcodeVersion> -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:16 -0300, Daniel Henrique Barboza wrote:
The pnv-phb3 device is the pcie-root controller for PowerNV8 domains.
Add its QEMU capability so Libvirt can recognize it.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_capabilities.c | 2 ++ src/qemu/qemu_capabilities.h | 1 + tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml | 1 + 6 files changed, 7 insertions(+)
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index a4cea7b90e..a1012d4795 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -658,6 +658,7 @@ VIR_ENUM_IMPL(virQEMUCaps, /* 420 */ "device.json+hotplug", /* QEMU_CAPS_DEVICE_JSON */ "pnv-phb3-root-port", /* QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT */ + "pnv-phb3", /* QEMU_CAPS_DEVICE_PNV_PHB3 */
Can the latter exist without the former? I'm trying to see whether it we can't assume that QEMU_CAPS_DEVICE_PNV_PHB3 is supported if QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT or vice versa to not add capabilities that are redundant.

On 1/21/22 11:21, Peter Krempa wrote:
On Thu, Jan 20, 2022 at 10:52:16 -0300, Daniel Henrique Barboza wrote:
The pnv-phb3 device is the pcie-root controller for PowerNV8 domains.
Add its QEMU capability so Libvirt can recognize it.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_capabilities.c | 2 ++ src/qemu/qemu_capabilities.h | 1 + tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml | 1 + 6 files changed, 7 insertions(+)
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index a4cea7b90e..a1012d4795 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -658,6 +658,7 @@ VIR_ENUM_IMPL(virQEMUCaps, /* 420 */ "device.json+hotplug", /* QEMU_CAPS_DEVICE_JSON */ "pnv-phb3-root-port", /* QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT */ + "pnv-phb3", /* QEMU_CAPS_DEVICE_PNV_PHB3 */
Can the latter exist without the former? I'm trying to see whether it we can't assume that QEMU_CAPS_DEVICE_PNV_PHB3 is supported if QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT or vice versa to not add capabilities that are redundant.
Makes sense. Yes, the root-port is dependent of the pnv-phb support. We can check for QEMU_CAPS_DEVICE_PNV_PHB3 and assume that QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT is supported. I believe it's a matter of adding just this capability and then, in virQEMUCapsObjectTypes[], do something like this to allow for both devices be bound to the same cap: @@ -1358,6 +1359,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = { { "s390-pv-guest", QEMU_CAPS_S390_PV_GUEST }, { "virtio-mem-pci", QEMU_CAPS_DEVICE_VIRTIO_MEM_PCI }, + { "pnv-phb3-root-port", QEMU_CAPS_DEVICE_PNV_PHB3 }, + { "pnv-phb3", QEMU_CAPS_DEVICE_PNV_PHB3 }, }; This is a change that reflects on the pnv-phb4 devices so I'll also change those patches accordingly. Thanks, Daniel

Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- docs/schemas/domaincommon.rng | 2 ++ src/conf/domain_conf.c | 1 + src/conf/domain_conf.h | 1 + src/qemu/qemu_validate.c | 2 ++ 4 files changed, 6 insertions(+) diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng index 9e2797ec58..7cfc22bc72 100644 --- a/docs/schemas/domaincommon.rng +++ b/docs/schemas/domaincommon.rng @@ -2596,6 +2596,8 @@ <value>pci-bridge</value> <!-- implementations of "dmi-to-pci-bridge" --> <value>i82801b11-bridge</value> + <!-- implementations of "pcie-root" --> + <value>pnv-phb3</value> <!-- implementations of "pcie-to-pci-bridge" --> <value>pcie-pci-bridge</value> <!-- implementations of "pcie-root-port" --> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index c540b740df..9e405c1f52 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -438,6 +438,7 @@ VIR_ENUM_IMPL(virDomainControllerPCIModelName, "spapr-pci-host-bridge", "pcie-pci-bridge", "pnv-phb3-root-port", + "pnv-phb3", ); VIR_ENUM_IMPL(virDomainControllerModelSCSI, diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index 18aa7a885b..07fbf9780a 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -646,6 +646,7 @@ typedef enum { VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_SPAPR_PCI_HOST_BRIDGE, VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PCIE_PCI_BRIDGE, VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT, + VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3, VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_LAST } virDomainControllerPCIModelName; diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index a5c11c3a9c..337808f4ea 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -3431,6 +3431,8 @@ virValidateControllerPCIModelNameToQEMUCaps(int modelName) return QEMU_CAPS_DEVICE_PCIE_PCI_BRIDGE; case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT: return QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT; + case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3: + return QEMU_CAPS_DEVICE_PNV_PHB3; case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE: return 0; case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_LAST: -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:17 -0300, Daniel Henrique Barboza wrote:
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- docs/schemas/domaincommon.rng | 2 ++ src/conf/domain_conf.c | 1 + src/conf/domain_conf.h | 1 + src/qemu/qemu_validate.c | 2 ++ 4 files changed, 6 insertions(+)
diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng index 9e2797ec58..7cfc22bc72 100644 --- a/docs/schemas/domaincommon.rng +++ b/docs/schemas/domaincommon.rng @@ -2596,6 +2596,8 @@ <value>pci-bridge</value> <!-- implementations of "dmi-to-pci-bridge" --> <value>i82801b11-bridge</value> + <!-- implementations of "pcie-root" --> + <value>pnv-phb3</value> <!-- implementations of "pcie-to-pci-bridge" --> <value>pcie-pci-bridge</value> <!-- implementations of "pcie-root-port" --> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index c540b740df..9e405c1f52 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -438,6 +438,7 @@ VIR_ENUM_IMPL(virDomainControllerPCIModelName, "spapr-pci-host-bridge", "pcie-pci-bridge", "pnv-phb3-root-port", + "pnv-phb3",
Missing docs as with the previous one.

Use the 'modelName' attribute for the pnv-phb3 pcie-root device. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_domain_address.c | 3 +++ src/qemu/qemu_validate.c | 6 ++++-- tests/qemuxml2argvtest.c | 3 ++- tests/qemuxml2xmloutdata/powernv8-basic.xml | 4 +++- tests/qemuxml2xmltest.c | 3 ++- 5 files changed, 14 insertions(+), 5 deletions(-) diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index c62b9b4230..b7d5c14c3a 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -2449,6 +2449,9 @@ qemuDomainPCIControllerSetDefaultModelName(virDomainControllerDef *cont, *modelName = VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_SPAPR_PCI_HOST_BRIDGE; break; case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: + if (qemuDomainIsPowerNV(def)) + *modelName = VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3; + break; case VIR_DOMAIN_CONTROLLER_MODEL_PCI_DEFAULT: case VIR_DOMAIN_CONTROLLER_MODEL_PCI_LAST: break; diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index 337808f4ea..c21611a349 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -3561,7 +3561,8 @@ qemuValidateDomainDeviceDefControllerPCI(const virDomainControllerDef *cont, break; case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: - if (pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE) { + if (pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE && + !qemuDomainIsPowerNV(def)) { virReportControllerInvalidOption(cont, model, modelName, "modelName"); return -1; } @@ -3643,7 +3644,8 @@ qemuValidateDomainDeviceDefControllerPCI(const virDomainControllerDef *cont, break; case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: - if (pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE) { + if (pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE && + !qemuDomainIsPowerNV(def)) { virReportControllerInvalidValue(cont, model, modelName, "modelName"); return -1; } diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 7fcfcc83f1..fea6048731 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2218,7 +2218,8 @@ mymain(void) DO_TEST_PARSE_ERROR_NOCAPS("seclabel-device-duplicates"); DO_TEST("powernv8-basic", - QEMU_CAPS_DEVICE_ISA_SERIAL); + QEMU_CAPS_DEVICE_ISA_SERIAL, + QEMU_CAPS_DEVICE_PNV_PHB3); DO_TEST("pseries-basic", QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, diff --git a/tests/qemuxml2xmloutdata/powernv8-basic.xml b/tests/qemuxml2xmloutdata/powernv8-basic.xml index 7b798b979d..721d2f9a37 100644 --- a/tests/qemuxml2xmloutdata/powernv8-basic.xml +++ b/tests/qemuxml2xmloutdata/powernv8-basic.xml @@ -14,7 +14,9 @@ <on_crash>destroy</on_crash> <devices> <emulator>/usr/bin/qemu-system-ppc64</emulator> - <controller type='pci' index='0' model='pcie-root'/> + <controller type='pci' index='0' model='pcie-root'> + <model name='pnv-phb3'/> + </controller> <serial type='pty'> <target type='isa-serial' port='0'> <model name='isa-serial'/> diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 5a19fdbda5..586da92778 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -638,7 +638,8 @@ mymain(void) DO_TEST_CAPS_LATEST("virtio-rng-builtin"); DO_TEST("powernv8-basic", - QEMU_CAPS_DEVICE_ISA_SERIAL); + QEMU_CAPS_DEVICE_ISA_SERIAL, + QEMU_CAPS_DEVICE_PNV_PHB3); DO_TEST("pseries-nvram", QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:18 -0300, Daniel Henrique Barboza wrote:
Use the 'modelName' attribute for the pnv-phb3 pcie-root device.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_domain_address.c | 3 +++ src/qemu/qemu_validate.c | 6 ++++-- tests/qemuxml2argvtest.c | 3 ++- tests/qemuxml2xmloutdata/powernv8-basic.xml | 4 +++- tests/qemuxml2xmltest.c | 3 ++- 5 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index c62b9b4230..b7d5c14c3a 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -2449,6 +2449,9 @@ qemuDomainPCIControllerSetDefaultModelName(virDomainControllerDef *cont, *modelName = VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_SPAPR_PCI_HOST_BRIDGE; break; case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: + if (qemuDomainIsPowerNV(def)) + *modelName = VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3; + break; case VIR_DOMAIN_CONTROLLER_MODEL_PCI_DEFAULT: case VIR_DOMAIN_CONTROLLER_MODEL_PCI_LAST: break; diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index 337808f4ea..c21611a349 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -3561,7 +3561,8 @@ qemuValidateDomainDeviceDefControllerPCI(const virDomainControllerDef *cont, break;
case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: - if (pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE) { + if (pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE && + !qemuDomainIsPowerNV(def)) { virReportControllerInvalidOption(cont, model, modelName, "modelName"); return -1; } @@ -3643,7 +3644,8 @@ qemuValidateDomainDeviceDefControllerPCI(const virDomainControllerDef *cont, break;
case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: - if (pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE) { + if (pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE && + !qemuDomainIsPowerNV(def)) { virReportControllerInvalidValue(cont, model, modelName, "modelName"); return -1; }
The two hunks above almost look like they belong to the other patch which added them.
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 7fcfcc83f1..fea6048731 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2218,7 +2218,8 @@ mymain(void) DO_TEST_PARSE_ERROR_NOCAPS("seclabel-device-duplicates");
DO_TEST("powernv8-basic", - QEMU_CAPS_DEVICE_ISA_SERIAL); + QEMU_CAPS_DEVICE_ISA_SERIAL, + QEMU_CAPS_DEVICE_PNV_PHB3);
As noted, this wouldn't be necessary if you'd use real capabilities for the test.
DO_TEST("pseries-basic", QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE,

The identation of VIR_DOMAIN_CONTROLLER_TYPE_PCI elements are in the same level as the parent 'if (def->type == ...TYPE_PCI)' clause, and the closing bracket of this 'if' looks like a misplaced bracket of the 'targetIndex' clause that comes right before it. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/conf/domain_conf.c | 56 +++++++++++++++++++++--------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 9e405c1f52..be8dc82ccf 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -9590,40 +9590,40 @@ virDomainControllerDefParseXML(virDomainXMLOption *xmlopt, ntargetNodes = virXPathNodeSet("./target", ctxt, &targetNodes); if (ntargetNodes == 1) { if (def->type == VIR_DOMAIN_CONTROLLER_TYPE_PCI) { - if (virXMLPropInt(targetNodes[0], "chassisNr", 0, VIR_XML_PROP_NONE, - &def->opts.pciopts.chassisNr, - def->opts.pciopts.chassisNr) < 0) - return NULL; + if (virXMLPropInt(targetNodes[0], "chassisNr", 0, VIR_XML_PROP_NONE, + &def->opts.pciopts.chassisNr, + def->opts.pciopts.chassisNr) < 0) + return NULL; - if (virXMLPropInt(targetNodes[0], "chassis", 0, VIR_XML_PROP_NONE, - &def->opts.pciopts.chassis, - def->opts.pciopts.chassis) < 0) - return NULL; + if (virXMLPropInt(targetNodes[0], "chassis", 0, VIR_XML_PROP_NONE, + &def->opts.pciopts.chassis, + def->opts.pciopts.chassis) < 0) + return NULL; - if (virXMLPropInt(targetNodes[0], "port", 0, VIR_XML_PROP_NONE, - &def->opts.pciopts.port, - def->opts.pciopts.port) < 0) - return NULL; + if (virXMLPropInt(targetNodes[0], "port", 0, VIR_XML_PROP_NONE, + &def->opts.pciopts.port, + def->opts.pciopts.port) < 0) + return NULL; - if (virXMLPropInt(targetNodes[0], "busNr", 0, VIR_XML_PROP_NONE, - &def->opts.pciopts.busNr, - def->opts.pciopts.busNr) < 0) - return NULL; + if (virXMLPropInt(targetNodes[0], "busNr", 0, VIR_XML_PROP_NONE, + &def->opts.pciopts.busNr, + def->opts.pciopts.busNr) < 0) + return NULL; - if (virXMLPropTristateSwitch(targetNodes[0], "hotplug", - VIR_XML_PROP_NONE, - &def->opts.pciopts.hotplug) < 0) - return NULL; + if (virXMLPropTristateSwitch(targetNodes[0], "hotplug", + VIR_XML_PROP_NONE, + &def->opts.pciopts.hotplug) < 0) + return NULL; - if ((rc = virXMLPropInt(targetNodes[0], "index", 0, VIR_XML_PROP_NONE, - &def->opts.pciopts.targetIndex, - def->opts.pciopts.targetIndex)) < 0) - return NULL; + if ((rc = virXMLPropInt(targetNodes[0], "index", 0, VIR_XML_PROP_NONE, + &def->opts.pciopts.targetIndex, + def->opts.pciopts.targetIndex)) < 0) + return NULL; - if ((rc == 1) && def->opts.pciopts.targetIndex == -1) - virReportError(VIR_ERR_XML_ERROR, - _("Invalid target index '%i' in PCI controller"), - def->opts.pciopts.targetIndex); + if ((rc == 1) && def->opts.pciopts.targetIndex == -1) + virReportError(VIR_ERR_XML_ERROR, + _("Invalid target index '%i' in PCI controller"), + def->opts.pciopts.targetIndex); } } else if (ntargetNodes > 1) { virReportError(VIR_ERR_XML_ERROR, "%s", -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:19 -0300, Daniel Henrique Barboza wrote:
The identation of VIR_DOMAIN_CONTROLLER_TYPE_PCI elements are in the same level as the parent 'if (def->type == ...TYPE_PCI)' clause, and the closing bracket of this 'if' looks like a misplaced bracket of the 'targetIndex' clause that comes right before it.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/conf/domain_conf.c | 56 +++++++++++++++++++++--------------------- 1 file changed, 28 insertions(+), 28 deletions(-)
Reviewed-by: Peter Krempa <pkrempa@redhat.com>

The 'chip-id' attribute indicates which chip/socket that owns the PowerNV pcie-root controller. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- docs/formatdomain.rst | 4 ++++ docs/schemas/domaincommon.rng | 5 +++++ src/conf/domain_conf.c | 15 +++++++++++++++ src/conf/domain_conf.h | 1 + 4 files changed, 25 insertions(+) diff --git a/docs/formatdomain.rst b/docs/formatdomain.rst index acd9020830..d38c566650 100644 --- a/docs/formatdomain.rst +++ b/docs/formatdomain.rst @@ -3896,6 +3896,10 @@ generated by libvirt. :since:`Since 1.2.19 (QEMU only).` ``index`` pci-root controllers for pSeries guests use this attribute to record the order they will show up in the guest. :since:`Since 3.6.0` +``chip-id`` + pcie-root controllers for powernv domains use this attribute to indicate the + chip that will own the controller. A single chip can hold multiple pcie-root + controllers. :since:`Since 8.1.0` For machine types which provide an implicit PCI bus, the pci-root controller with index=0 is auto-added and required to use PCI devices. pci-root has no diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng index 7cfc22bc72..fed82c79e1 100644 --- a/docs/schemas/domaincommon.rng +++ b/docs/schemas/domaincommon.rng @@ -2654,6 +2654,11 @@ <ref name="unsignedInt"/> </element> </optional> + <optional> + <attribute name="chip-id"> + <ref name="uint8"/> + </attribute> + </optional> </element> </optional> <!-- *-root controllers have an optional element "pcihole64"--> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index be8dc82ccf..d1cda8c3f5 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -2379,6 +2379,7 @@ virDomainControllerDefNew(virDomainControllerType type) def->opts.pciopts.busNr = -1; def->opts.pciopts.targetIndex = -1; def->opts.pciopts.numaNode = -1; + def->opts.pciopts.chipId = -1; break; case VIR_DOMAIN_CONTROLLER_TYPE_XENBUS: def->opts.xenbusopts.maxGrantFrames = -1; @@ -9624,6 +9625,16 @@ virDomainControllerDefParseXML(virDomainXMLOption *xmlopt, virReportError(VIR_ERR_XML_ERROR, _("Invalid target index '%i' in PCI controller"), def->opts.pciopts.targetIndex); + + if ((rc = virXMLPropInt(targetNodes[0], "chip-id", 0, VIR_XML_PROP_NONE, + &def->opts.pciopts.chipId, + def->opts.pciopts.chipId)) < 0) + return NULL; + + if ((rc == 1) && def->opts.pciopts.chipId == -1) + virReportError(VIR_ERR_XML_ERROR, + _("Invalid target chip-id '%i' in PCI controller"), + def->opts.pciopts.chipId); } } else if (ntargetNodes > 1) { virReportError(VIR_ERR_XML_ERROR, "%s", @@ -24081,6 +24092,7 @@ virDomainControllerDefFormat(virBuffer *buf, def->opts.pciopts.busNr != -1 || def->opts.pciopts.targetIndex != -1 || def->opts.pciopts.numaNode != -1 || + def->opts.pciopts.chipId != -1 || def->opts.pciopts.hotplug != VIR_TRISTATE_SWITCH_ABSENT) { virBufferAddLit(&childBuf, "<target"); if (def->opts.pciopts.chassisNr != -1) @@ -24098,6 +24110,9 @@ virDomainControllerDefFormat(virBuffer *buf, if (def->opts.pciopts.targetIndex != -1) virBufferAsprintf(&childBuf, " index='%d'", def->opts.pciopts.targetIndex); + if (def->opts.pciopts.chipId != -1) + virBufferAsprintf(&childBuf, " chip-id='%d'", + def->opts.pciopts.chipId); if (def->opts.pciopts.hotplug != VIR_TRISTATE_SWITCH_ABSENT) { virBufferAsprintf(&childBuf, " hotplug='%s'", virTristateSwitchTypeToString(def->opts.pciopts.hotplug)); diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index 07fbf9780a..db9021146d 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -750,6 +750,7 @@ struct _virDomainPCIControllerOpts { int port; int busNr; /* used by pci-expander-bus, -1 == unspecified */ int targetIndex; /* used by spapr-pci-host-bridge, -1 == unspecified */ + int chipId; /* used by powernv pcie-root controllers, -1 == unspecified */ /* numaNode is a *subelement* of target (to match existing * item in memory target config) -1 == unspecified */ -- 2.34.1

On Thu, Jan 20, 2022 at 10:52:20 -0300, Daniel Henrique Barboza wrote:
The 'chip-id' attribute indicates which chip/socket that owns the PowerNV pcie-root controller.
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- docs/formatdomain.rst | 4 ++++ docs/schemas/domaincommon.rng | 5 +++++ src/conf/domain_conf.c | 15 +++++++++++++++ src/conf/domain_conf.h | 1 + 4 files changed, 25 insertions(+)
diff --git a/docs/formatdomain.rst b/docs/formatdomain.rst index acd9020830..d38c566650 100644 --- a/docs/formatdomain.rst +++ b/docs/formatdomain.rst @@ -3896,6 +3896,10 @@ generated by libvirt. :since:`Since 1.2.19 (QEMU only).` ``index`` pci-root controllers for pSeries guests use this attribute to record the order they will show up in the guest. :since:`Since 3.6.0` +``chip-id`` + pcie-root controllers for powernv domains use this attribute to indicate the
``powernv``
+ chip that will own the controller. A single chip can hold multiple pcie-root + controllers. :since:`Since 8.1.0`
This doesn't clarify what a 'chip' is.
For machine types which provide an implicit PCI bus, the pci-root controller with index=0 is auto-added and required to use PCI devices. pci-root has no
[...]
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index be8dc82ccf..d1cda8c3f5 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c
[...]
@@ -9624,6 +9625,16 @@ virDomainControllerDefParseXML(virDomainXMLOption *xmlopt, virReportError(VIR_ERR_XML_ERROR, _("Invalid target index '%i' in PCI controller"), def->opts.pciopts.targetIndex); + + if ((rc = virXMLPropInt(targetNodes[0], "chip-id", 0, VIR_XML_PROP_NONE, + &def->opts.pciopts.chipId, + def->opts.pciopts.chipId)) < 0)
Misaligned line.
+ return NULL; + + if ((rc == 1) && def->opts.pciopts.chipId == -1) + virReportError(VIR_ERR_XML_ERROR, + _("Invalid target chip-id '%i' in PCI controller"), + def->opts.pciopts.chipId); } } else if (ntargetNodes > 1) { virReportError(VIR_ERR_XML_ERROR, "%s",
With docs and alignment fixed: Reviewed-by: Peter Krempa <pkrempa@redhat.com>

Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/conf/domain_conf.c | 21 +++++++++++++++++++++ src/conf/domain_conf.h | 1 + src/libvirt_private.syms | 1 + 3 files changed, 23 insertions(+) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index d1cda8c3f5..1815308a8c 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -2441,6 +2441,27 @@ virDomainControllerIsPSeriesPHB(const virDomainControllerDef *cont) } +bool +virDomainControllerIsPowerNVPHB(const virDomainControllerDef *cont) +{ + virDomainControllerPCIModelName name; + + /* PowerNV PHBs are pcie-root controllers */ + if (cont->type != VIR_DOMAIN_CONTROLLER_TYPE_PCI || + cont->model != VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT) { + return false; + } + + name = cont->opts.pciopts.modelName; + + /* The actual device used for PHBs is pnv-phb3 */ + if (name != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3) + return false; + + return true; +} + + virDomainFSDef * virDomainFSDefNew(virDomainXMLOption *xmlopt) { diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index db9021146d..4317039e8b 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -3333,6 +3333,7 @@ virDomainControllerDef *virDomainControllerDefNew(virDomainControllerType type); void virDomainControllerDefFree(virDomainControllerDef *def); G_DEFINE_AUTOPTR_CLEANUP_FUNC(virDomainControllerDef, virDomainControllerDefFree); bool virDomainControllerIsPSeriesPHB(const virDomainControllerDef *cont); +bool virDomainControllerIsPowerNVPHB(const virDomainControllerDef *cont); virDomainFSDef *virDomainFSDefNew(virDomainXMLOption *xmlopt); void virDomainFSDefFree(virDomainFSDef *def); diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index ba3462d849..a18fbd4bb8 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -287,6 +287,7 @@ virDomainControllerFindByType; virDomainControllerFindUnusedIndex; virDomainControllerInsert; virDomainControllerInsertPreAlloced; +virDomainControllerIsPowerNVPHB; virDomainControllerIsPSeriesPHB; virDomainControllerModelIDETypeFromString; virDomainControllerModelIDETypeToString; -- 2.34.1

If ommited from the controller definition, chip-id defaults to zero. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_domain_address.c | 16 +++++++++++++++- src/qemu/qemu_validate.c | 5 +++++ tests/qemuxml2xmloutdata/powernv8-basic.xml | 1 + 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index b7d5c14c3a..9c2ea5cf00 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -2844,10 +2844,24 @@ qemuDomainAssignPCIAddresses(virDomainDef *def, goto cleanup; } break; + case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: + if (!qemuDomainIsPowerNV(def)) + break; + + /* + * Default to chip-id = 0 since it's guaranteed that one socket + * will always be present. + * + * chipId validation requires CPU topology information that isn't + * available at this point and will be done later on. + */ + if (options->chipId == -1) + options->chipId = 0; + + break; case VIR_DOMAIN_CONTROLLER_MODEL_DMI_TO_PCI_BRIDGE: case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_TO_PCI_BRIDGE: case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_SWITCH_UPSTREAM_PORT: - case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: case VIR_DOMAIN_CONTROLLER_MODEL_PCI_DEFAULT: case VIR_DOMAIN_CONTROLLER_MODEL_PCI_LAST: break; diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index c21611a349..f7d73f7c2e 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -3649,6 +3649,11 @@ qemuValidateDomainDeviceDefControllerPCI(const virDomainControllerDef *cont, virReportControllerInvalidValue(cont, model, modelName, "modelName"); return -1; } + + if (pciopts->chipId != -1 && !virDomainControllerIsPowerNVPHB(cont)) { + virReportControllerInvalidOption(cont, model, modelName, "chip-id"); + return -1; + } break; case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_TO_PCI_BRIDGE: diff --git a/tests/qemuxml2xmloutdata/powernv8-basic.xml b/tests/qemuxml2xmloutdata/powernv8-basic.xml index 721d2f9a37..0a093367f2 100644 --- a/tests/qemuxml2xmloutdata/powernv8-basic.xml +++ b/tests/qemuxml2xmloutdata/powernv8-basic.xml @@ -16,6 +16,7 @@ <emulator>/usr/bin/qemu-system-ppc64</emulator> <controller type='pci' index='0' model='pcie-root'> <model name='pnv-phb3'/> + <target chip-id='0'/> </controller> <serial type='pty'> <target type='isa-serial' port='0'> -- 2.34.1

As done with the 'chip-id' attribute, use zero as a default targetIndex value for pnv-phb3 devices in case it's absent from the controller definition. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_domain_address.c | 2 ++ src/qemu/qemu_validate.c | 19 ++++++++++++++++++- tests/qemuxml2xmloutdata/powernv8-basic.xml | 2 +- 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index 9c2ea5cf00..7ffdfa6478 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -2858,6 +2858,8 @@ qemuDomainAssignPCIAddresses(virDomainDef *def, if (options->chipId == -1) options->chipId = 0; + if (options->targetIndex == -1) + options->targetIndex = 0; break; case VIR_DOMAIN_CONTROLLER_MODEL_DMI_TO_PCI_BRIDGE: case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_TO_PCI_BRIDGE: diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index f7d73f7c2e..b101ea8064 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -3733,6 +3733,24 @@ qemuValidateDomainDeviceDefControllerPCI(const virDomainControllerDef *cont, } break; + case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: + /* PHBs for PowerNV domains must have a targetIndex */ + if (pciopts->targetIndex == -1 && + virDomainControllerIsPowerNVPHB(cont)) { + virReportControllerMissingOption(cont, model, modelName, "targetIndex"); + return -1; + } + + /* + * targetIndex for pcie-root controllers only applies to + * PowerNV PHBs. + */ + if (pciopts->targetIndex != -1 && + !virDomainControllerIsPowerNVPHB(cont)) { + virReportControllerInvalidOption(cont, model, modelName, "targetIndex"); + return -1; + } + break; case VIR_DOMAIN_CONTROLLER_MODEL_PCI_BRIDGE: case VIR_DOMAIN_CONTROLLER_MODEL_DMI_TO_PCI_BRIDGE: case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT_PORT: @@ -3740,7 +3758,6 @@ qemuValidateDomainDeviceDefControllerPCI(const virDomainControllerDef *cont, case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_SWITCH_DOWNSTREAM_PORT: case VIR_DOMAIN_CONTROLLER_MODEL_PCI_EXPANDER_BUS: case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_EXPANDER_BUS: - case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_TO_PCI_BRIDGE: if (pciopts->targetIndex != -1) { virReportControllerInvalidOption(cont, model, modelName, "targetIndex"); diff --git a/tests/qemuxml2xmloutdata/powernv8-basic.xml b/tests/qemuxml2xmloutdata/powernv8-basic.xml index 0a093367f2..fe918480eb 100644 --- a/tests/qemuxml2xmloutdata/powernv8-basic.xml +++ b/tests/qemuxml2xmloutdata/powernv8-basic.xml @@ -16,7 +16,7 @@ <emulator>/usr/bin/qemu-system-ppc64</emulator> <controller type='pci' index='0' model='pcie-root'> <model name='pnv-phb3'/> - <target chip-id='0'/> + <target index='0' chip-id='0'/> </controller> <serial type='pty'> <target type='isa-serial' port='0'> -- 2.34.1

The command line for the pnv-phb3 device is similar to the spapr-pci-host-bridge command line but adding the extra 'chip-id' attribute. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_command.c | 21 +++++++++++++++++++-- tests/qemuxml2argvdata/powernv8-basic.args | 1 + 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 60b4f96e06..1948eff91f 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -3220,6 +3220,22 @@ qemuBuildControllerPCIDevProps(virDomainControllerDef *def, break; case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: + if (!virDomainControllerIsPowerNVPHB(def)) { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", + _("Unsupported PCI Express root controller")); + return -1; + } + + if (virJSONValueObjectAdd(&props, + "s:driver", modelName, + "i:index", pciopts->targetIndex, + "i:chip-id", pciopts->chipId, + "s:id", def->info.alias, + NULL) < 0) + return -1; + + break; + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("Unsupported PCI Express root controller")); return -1; @@ -3407,8 +3423,9 @@ static bool qemuBuildSkipController(const virDomainControllerDef *controller, const virDomainDef *def) { - /* skip pcie-root */ - if (controller->type == VIR_DOMAIN_CONTROLLER_TYPE_PCI && + /* skip pcie-root for non PowerVM domains */ + if (!qemuDomainIsPowerNV(def) && + controller->type == VIR_DOMAIN_CONTROLLER_TYPE_PCI && controller->model == VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT) return true; diff --git a/tests/qemuxml2argvdata/powernv8-basic.args b/tests/qemuxml2argvdata/powernv8-basic.args index 822cf62bdf..aa81454b08 100644 --- a/tests/qemuxml2argvdata/powernv8-basic.args +++ b/tests/qemuxml2argvdata/powernv8-basic.args @@ -25,6 +25,7 @@ QEMU_AUDIO_DRV=none \ -rtc base=utc \ -no-shutdown \ -boot strict=on \ +-device pnv-phb3,index=0,chip-id=0,id=pcie.0 \ -usb \ -chardev pty,id=charserial0 \ -device isa-serial,chardev=charserial0,id=serial0,index=0 \ -- 2.34.1

The PowerNV PHB3 bus has minimal slot zero. In fact, at this moment, the root complex accepts only a single device, at slot 0x0, due to firmware limitations. The single device restriction is subject to change in upstream QEMU and it's not worth adding this limitation to Libvirt. However, the minimal slot presents a problem. When setting a pnv-phb3-root-port address with slot=0x0, Libvirt changes it to 0x1. This happens because the pnv-phb3 controller is a PCIE_ROOT model, and this model is being set with 'bus->minSlot=1' in domain_addr.c, virDomainPCIAddressBusSetModel(). This means that the root-port is launched with 'addr=0x1' in the QEMU command line and it's not usable by the domain. It is not worth to create a new controller model, replicating all the already existing logic for PCIE_ROOT controllers, just to have a similar PCIE_ROOT bus with minSlots=0. Changing the existing PCIE_ROOT min slot to 0 doesn't make sense either - we would change existing behavior of existing devices. This patch works around this situation by adding a verification in qemuDomainPCIAddressSetCreate() to change the minBus values of the pnv-phb3 devices right before virDomainDeviceInfoIterate(). This is enough to allow for a root port to be added in slot 0 of a pnv-phb3 bus while not being intrusive with existing devices. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_domain_address.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index 7ffdfa6478..5d65049c34 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -1628,6 +1628,17 @@ qemuDomainCollectPCIAddressExtension(virDomainDef *def G_GNUC_UNUSED, return virDomainPCIAddressExtensionReserveAddr(addrs, addr); } +static void +qemuDomainTunePowerNVPhbBuses(virDomainPCIAddressSet *addrs) +{ + size_t i; + + for (i = 0; i < addrs->nbuses; i++) { + if (addrs->buses[i].model == VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT) + addrs->buses[i].minSlot = 0; + } +} + static virDomainPCIAddressSet * qemuDomainPCIAddressSetCreate(virDomainDef *def, virQEMUCaps *qemuCaps, @@ -1720,6 +1731,9 @@ qemuDomainPCIAddressSetCreate(virDomainDef *def, virDomainControllerModelPCITypeToString(defaultModel), i); } + if (qemuDomainIsPowerNV(def)) + qemuDomainTunePowerNVPhbBuses(addrs); + if (virDomainDeviceInfoIterate(def, qemuDomainCollectPCIAddress, addrs) < 0) goto error; -- 2.34.1

Hiding the empty (0000:00:0.0) PCI address in the case of devices that will connect to slot 0x0 can be counterintuitive to the user, which will see something like this: <controller type='pci' index='0' model='pcie-root'/> <controller type='pci' index='1' model='pcie-root-port'> <model name='pnv-phb3-root-port'/> <target chassis='1' port='0x8'/> </controller> Even if the user deliberately adds the root-port <address> element: <address type='pci' domain='0x0000' bus='0x00' slot='0x00' function='0x0'/> We end up removing the <address> element after saving the domain file. This happens because virPCIDeviceAddressIsEmpty() can't distinguish between a zeroed address that was set by the user versus an address that wasn't filled at all. Given that all root-ports of PowerNV domains will connect to slot 0 of the PHB, if the PHB controller has index = 0 this scenario will occur every time. This patch aims to alleaviate this behavior by adding a new virDomainDefFormatFlags that will allow an empty address to be formatted in the XML. This flag is then used only when formatting PowerNV root ports. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/conf/domain_conf.c | 25 ++++++++++++++++++++++++- src/conf/domain_conf.h | 2 ++ 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 1815308a8c..8e44e4b53c 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -2462,6 +2462,25 @@ virDomainControllerIsPowerNVPHB(const virDomainControllerDef *cont) } +static bool +virDomainControllerIsPowerNVRootPort(const virDomainControllerDef *cont) +{ + virDomainControllerPCIModelName name; + + if (cont->type != VIR_DOMAIN_CONTROLLER_TYPE_PCI || + cont->model != VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT_PORT) { + return false; + } + + name = cont->opts.pciopts.modelName; + + if (name != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT) + return false; + + return true; +} + + virDomainFSDef * virDomainFSDefNew(virDomainXMLOption *xmlopt) { @@ -6489,7 +6508,8 @@ virDomainDeviceInfoFormat(virBuffer *buf, switch ((virDomainDeviceAddressType) info->type) { case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI: - if (!virPCIDeviceAddressIsEmpty(&info->addr.pci)) { + if (!virPCIDeviceAddressIsEmpty(&info->addr.pci) || + flags & VIR_DOMAIN_DEF_FORMAT_EMPTY_PCI_ADDR) { virBufferAsprintf(&attrBuf, " domain='0x%04x' bus='0x%02x' " "slot='0x%02x' function='0x%d'", info->addr.pci.domain, @@ -24151,6 +24171,9 @@ virDomainControllerDefFormat(virBuffer *buf, } } + if (virDomainControllerIsPowerNVRootPort(def)) + flags |= VIR_DOMAIN_DEF_FORMAT_EMPTY_PCI_ADDR; + virDomainControllerDriverFormat(&childBuf, def); virDomainDeviceInfoFormat(&childBuf, &def->info, flags); diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index 4317039e8b..e4323d0e6f 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -3502,6 +3502,8 @@ typedef enum { VIR_DOMAIN_DEF_FORMAT_ALLOW_ROM = 1 << 6, VIR_DOMAIN_DEF_FORMAT_ALLOW_BOOT = 1 << 7, VIR_DOMAIN_DEF_FORMAT_CLOCK_ADJUST = 1 << 8, + /* format empty PCI addr (0000:00:0.0) */ + VIR_DOMAIN_DEF_FORMAT_EMPTY_PCI_ADDR = 1 << 9, } virDomainDefFormatFlags; /* Use these flags to skip specific domain ABI consistency checks done -- 2.34.1

Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- .../qemuxml2argvdata/powernv8-root-port.args | 33 +++++++++++++++++ tests/qemuxml2argvdata/powernv8-root-port.xml | 17 +++++++++ tests/qemuxml2argvtest.c | 4 +++ .../qemuxml2xmloutdata/powernv8-root-port.xml | 36 +++++++++++++++++++ tests/qemuxml2xmltest.c | 4 +++ 5 files changed, 94 insertions(+) create mode 100644 tests/qemuxml2argvdata/powernv8-root-port.args create mode 100644 tests/qemuxml2argvdata/powernv8-root-port.xml create mode 100644 tests/qemuxml2xmloutdata/powernv8-root-port.xml diff --git a/tests/qemuxml2argvdata/powernv8-root-port.args b/tests/qemuxml2argvdata/powernv8-root-port.args new file mode 100644 index 0000000000..c78aa0e8f4 --- /dev/null +++ b/tests/qemuxml2argvdata/powernv8-root-port.args @@ -0,0 +1,33 @@ +LC_ALL=C \ +PATH=/bin \ +HOME=/tmp/lib/domain--1-QEMUGuest1 \ +USER=test \ +LOGNAME=test \ +XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \ +XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \ +XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \ +QEMU_AUDIO_DRV=none \ +/usr/bin/qemu-system-ppc64 \ +-name guest=QEMUGuest1,debug-threads=on \ +-S \ +-object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \ +-machine powernv8,usb=off,dump-guest-core=off \ +-accel tcg \ +-m 2048 \ +-realtime mlock=off \ +-smp 1,sockets=1,cores=1,threads=1 \ +-uuid b20fcfe3-4a0a-4039-8735-9e024256e0f7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,server=on,wait=off \ +-mon chardev=charmonitor,id=monitor,mode=control \ +-rtc base=utc \ +-no-shutdown \ +-boot strict=on \ +-device pnv-phb3,index=0,chip-id=0,id=pcie.0 \ +-device pnv-phb3-root-port,port=0,chassis=1,id=pci.1,bus=pcie.0,addr=0x0 \ +-usb \ +-chardev pty,id=charserial0 \ +-device isa-serial,chardev=charserial0,id=serial0,index=0 \ +-msg timestamp=on diff --git a/tests/qemuxml2argvdata/powernv8-root-port.xml b/tests/qemuxml2argvdata/powernv8-root-port.xml new file mode 100644 index 0000000000..1acb37222d --- /dev/null +++ b/tests/qemuxml2argvdata/powernv8-root-port.xml @@ -0,0 +1,17 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='ppc64' machine='powernv8'>hvm</type> + </os> + <devices> + <emulator>/usr/bin/qemu-system-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'/> + <controller type='pci' index='1' model='pcie-root-port'/> + <console type='pty'> + <target type='serial' port='0'/> + </console> + </devices> +</domain> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index fea6048731..a0bc5ed169 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2220,6 +2220,10 @@ mymain(void) DO_TEST("powernv8-basic", QEMU_CAPS_DEVICE_ISA_SERIAL, QEMU_CAPS_DEVICE_PNV_PHB3); + DO_TEST("powernv8-root-port", + QEMU_CAPS_DEVICE_ISA_SERIAL, + QEMU_CAPS_DEVICE_PNV_PHB3, + QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT); DO_TEST("pseries-basic", QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, diff --git a/tests/qemuxml2xmloutdata/powernv8-root-port.xml b/tests/qemuxml2xmloutdata/powernv8-root-port.xml new file mode 100644 index 0000000000..b6d2f6eaf5 --- /dev/null +++ b/tests/qemuxml2xmloutdata/powernv8-root-port.xml @@ -0,0 +1,36 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <currentMemory unit='KiB'>2097152</currentMemory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='ppc64' machine='powernv8'>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-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'> + <model name='pnv-phb3'/> + <target index='0' chip-id='0'/> + </controller> + <controller type='pci' index='1' model='pcie-root-port'> + <model name='pnv-phb3-root-port'/> + <target chassis='1' port='0x0'/> + <address type='pci' domain='0x0000' bus='0x00' slot='0x00' function='0x0'/> + </controller> + <serial type='pty'> + <target type='isa-serial' port='0'> + <model name='isa-serial'/> + </target> + </serial> + <console type='pty'> + <target type='serial' port='0'/> + </console> + <audio id='1' type='none'/> + </devices> +</domain> diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 586da92778..322a1b47cc 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -640,6 +640,10 @@ mymain(void) DO_TEST("powernv8-basic", QEMU_CAPS_DEVICE_ISA_SERIAL, QEMU_CAPS_DEVICE_PNV_PHB3); + DO_TEST("powernv8-root-port", + QEMU_CAPS_DEVICE_ISA_SERIAL, + QEMU_CAPS_DEVICE_PNV_PHB3, + QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT); DO_TEST("pseries-nvram", QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, -- 2.34.1

PowerNV PHBs uses the 'targetIndex' attribute in a different manner than pSeries PHBs, having no restiction of targetIndex = 0 in controllers with non-zero indexes. This can happen when the domain has 2 or more sockets and the pnv-phb3 controller can have targetIndex=0 in a different chip-id. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/conf/domain_validate.c | 5 ++- src/qemu/qemu_domain.c | 2 +- src/qemu/qemu_validate.c | 5 +++ .../qemuxml2argvdata/powernv8-two-sockets.xml | 26 +++++++++++++ .../powernv8-two-sockets.xml | 38 +++++++++++++++++++ tests/qemuxml2xmltest.c | 3 ++ 6 files changed, 76 insertions(+), 3 deletions(-) create mode 100644 tests/qemuxml2argvdata/powernv8-two-sockets.xml create mode 100644 tests/qemuxml2xmloutdata/powernv8-two-sockets.xml diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c index e9baf1d41a..5510cb073b 100644 --- a/src/conf/domain_validate.c +++ b/src/conf/domain_validate.c @@ -1055,8 +1055,9 @@ virDomainControllerDefValidate(const virDomainControllerDef *controller) return -1; } - if ((controller->idx == 0 && opts->targetIndex != 0) || - (controller->idx != 0 && opts->targetIndex == 0)) { + if (!virDomainControllerIsPowerNVPHB(controller) && + ((controller->idx == 0 && opts->targetIndex != 0) || + (controller->idx != 0 && opts->targetIndex == 0))) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("Only the PCI controller with index 0 can " "have target index 0, and vice versa")); diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index d0bb4938ec..25523a6020 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -5100,7 +5100,7 @@ qemuDomainControllerDefPostParse(virDomainControllerDef *cont, /* pSeries guests can have multiple pci-root controllers, * but other machine types only support a single one */ - if (!qemuDomainIsPSeries(def) && + if (!qemuDomainIsPowerPC(def) && (cont->model == VIR_DOMAIN_CONTROLLER_MODEL_PCI_ROOT || cont->model == VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT) && cont->idx != 0) { diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index b101ea8064..3be29af958 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -3697,6 +3697,11 @@ qemuValidateDomainDeviceDefControllerPCI(const virDomainControllerDef *cont, break; } + /* PowerNV domains, like pSeries guest, can also have + * multiple PHBs. */ + if (virDomainControllerIsPowerNVPHB(cont)) + break; + /* For all other pci-root and pcie-root controllers, though, * the index must be zero */ if (cont->idx != 0) { diff --git a/tests/qemuxml2argvdata/powernv8-two-sockets.xml b/tests/qemuxml2argvdata/powernv8-two-sockets.xml new file mode 100644 index 0000000000..c6f2024a33 --- /dev/null +++ b/tests/qemuxml2argvdata/powernv8-two-sockets.xml @@ -0,0 +1,26 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <vcpu placement='static'>2</vcpu> + <os> + <type arch='ppc64' machine='powernv8'>hvm</type> + </os> + <cpu> + <topology sockets='2' dies='1' cores='1' threads='1'/> + </cpu> + <devices> + <emulator>/usr/bin/qemu-system-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'> + <model name='pnv-phb3'/> + <target index='0' chip-id='0'/> + </controller> + <controller type='pci' index='1' model='pcie-root'> + <model name='pnv-phb3'/> + <target index='0' chip-id='1'/> + </controller> + <console type='pty'> + <target type='serial' port='0'/> + </console> + </devices> +</domain> diff --git a/tests/qemuxml2xmloutdata/powernv8-two-sockets.xml b/tests/qemuxml2xmloutdata/powernv8-two-sockets.xml new file mode 100644 index 0000000000..10b4794877 --- /dev/null +++ b/tests/qemuxml2xmloutdata/powernv8-two-sockets.xml @@ -0,0 +1,38 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <currentMemory unit='KiB'>2097152</currentMemory> + <vcpu placement='static'>2</vcpu> + <os> + <type arch='ppc64' machine='powernv8'>hvm</type> + <boot dev='hd'/> + </os> + <cpu> + <topology sockets='2' dies='1' cores='1' threads='1'/> + </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-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'> + <model name='pnv-phb3'/> + <target index='0' chip-id='0'/> + </controller> + <controller type='pci' index='1' model='pcie-root'> + <model name='pnv-phb3'/> + <target index='0' chip-id='1'/> + </controller> + <serial type='pty'> + <target type='isa-serial' port='0'> + <model name='isa-serial'/> + </target> + </serial> + <console type='pty'> + <target type='serial' port='0'/> + </console> + <audio id='1' type='none'/> + </devices> +</domain> diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 322a1b47cc..5ed8283546 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -644,6 +644,9 @@ mymain(void) QEMU_CAPS_DEVICE_ISA_SERIAL, QEMU_CAPS_DEVICE_PNV_PHB3, QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT); + DO_TEST("powernv8-two-sockets", + QEMU_CAPS_DEVICE_ISA_SERIAL, + QEMU_CAPS_DEVICE_PNV_PHB3); DO_TEST("pseries-nvram", QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, -- 2.34.1

These devices must have unique targetIndex/chip-id pairs. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/conf/domain_conf.c | 35 +++++++++++++++++++++ tests/qemuxml2argvdata/powernv8-dupPHBs.err | 1 + tests/qemuxml2argvdata/powernv8-dupPHBs.xml | 27 ++++++++++++++++ tests/qemuxml2argvtest.c | 3 ++ 4 files changed, 66 insertions(+) create mode 100644 tests/qemuxml2argvdata/powernv8-dupPHBs.err create mode 100644 tests/qemuxml2argvdata/powernv8-dupPHBs.xml diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 8e44e4b53c..442b3812b7 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -2481,6 +2481,33 @@ virDomainControllerIsPowerNVRootPort(const virDomainControllerDef *cont) } +/* Caller must ensure that 'cont' is a PowerNV PHB device */ +static bool +virDomainControllerDuplicatedPHB(virDomainDef *def, + virDomainControllerDef *cont) +{ + int chipId = cont->opts.pciopts.chipId; + int targetIndex = cont->opts.pciopts.targetIndex; + size_t i; + + for (i = 0; i < def->ncontrollers; i++) { + virDomainControllerDef *cont2 = def->controllers[i]; + + if (!virDomainControllerIsPowerNVPHB(cont2)) + continue; + + if (cont2 == cont) + continue; + + if (cont2->opts.pciopts.chipId == chipId && + cont2->opts.pciopts.targetIndex == targetIndex) + return true; + } + + return false; +} + + virDomainFSDef * virDomainFSDefNew(virDomainXMLOption *xmlopt) { @@ -4737,6 +4764,14 @@ virDomainDefRejectDuplicateControllers(virDomainDef *def) cont->idx); goto cleanup; } + + if (virDomainControllerIsPowerNVPHB(cont) && + virDomainControllerDuplicatedPHB(def, cont)) { + virReportError(VIR_ERR_XML_ERROR, "%s", + _("Multiple pnv-phb controllers with same chip-id and index")); + goto cleanup; + } + ignore_value(virBitmapSetBit(bitmaps[cont->type], cont->idx)); } diff --git a/tests/qemuxml2argvdata/powernv8-dupPHBs.err b/tests/qemuxml2argvdata/powernv8-dupPHBs.err new file mode 100644 index 0000000000..bc5879640d --- /dev/null +++ b/tests/qemuxml2argvdata/powernv8-dupPHBs.err @@ -0,0 +1 @@ +XML error: Multiple pnv-phb controllers with same chip-id and index diff --git a/tests/qemuxml2argvdata/powernv8-dupPHBs.xml b/tests/qemuxml2argvdata/powernv8-dupPHBs.xml new file mode 100644 index 0000000000..43ee3051eb --- /dev/null +++ b/tests/qemuxml2argvdata/powernv8-dupPHBs.xml @@ -0,0 +1,27 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='ppc64' machine='powernv8'>hvm</type> + </os> + <devices> + <emulator>/usr/bin/qemu-system-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'> + <model name='pnv-phb3'/> + <target index='0' chip-id='0'/> + </controller> + <controller type='pci' index='1' model='pcie-root'> + <model name='pnv-phb3'/> + <target index='1' chip-id='0'/> + </controller> + <controller type='pci' index='2' model='pcie-root'> + <model name='pnv-phb3'/> + <target index='1' chip-id='0'/> + </controller> + <console type='pty'> + <target type='serial' port='0'/> + </console> + </devices> +</domain> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index a0bc5ed169..ff8698927e 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2224,6 +2224,9 @@ mymain(void) QEMU_CAPS_DEVICE_ISA_SERIAL, QEMU_CAPS_DEVICE_PNV_PHB3, QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT); + DO_TEST_PARSE_ERROR("powernv8-dupPHBs", + QEMU_CAPS_DEVICE_ISA_SERIAL, + QEMU_CAPS_DEVICE_PNV_PHB3); DO_TEST("pseries-basic", QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, -- 2.34.1

The pnv-phb4-root-port device is the pcie-root-port for PowerNV9 domains. Aside from being usable only by the 'powernv9' machine to connect into the soon to be added 'pnv-phb4' host bridges, its usage and semantics are similar to what was introduced with the pnv-phb3-root-port support. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_capabilities.c | 2 ++ src/qemu/qemu_capabilities.h | 1 + tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml | 1 + 6 files changed, 7 insertions(+) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index a1012d4795..c049dda627 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -659,6 +659,7 @@ VIR_ENUM_IMPL(virQEMUCaps, "device.json+hotplug", /* QEMU_CAPS_DEVICE_JSON */ "pnv-phb3-root-port", /* QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT */ "pnv-phb3", /* QEMU_CAPS_DEVICE_PNV_PHB3 */ + "pnv-phb4-root-port", /* QEMU_CAPS_DEVICE_PNV_PHB4_ROOT_PORT */ ); @@ -1360,6 +1361,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = { { "virtio-mem-pci", QEMU_CAPS_DEVICE_VIRTIO_MEM_PCI }, { "pnv-phb3-root-port", QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT }, { "pnv-phb3", QEMU_CAPS_DEVICE_PNV_PHB3 }, + { "pnv-phb4-root-port", QEMU_CAPS_DEVICE_PNV_PHB4_ROOT_PORT }, }; diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index 0d76db484b..d7bf211723 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -638,6 +638,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */ QEMU_CAPS_DEVICE_JSON, /* -device accepts JSON (and works with hot-unplug) */ QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT, /* -device pnv-phb3-root-port */ QEMU_CAPS_DEVICE_PNV_PHB3, /* -device pnv-phb3 */ + QEMU_CAPS_DEVICE_PNV_PHB4_ROOT_PORT, /* -device pnv-phb3-root-port */ QEMU_CAPS_LAST /* this must always be the last item */ } virQEMUCapsFlags; diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml index 809999734e..047ed74bed 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml @@ -188,6 +188,7 @@ <flag name='virtio-blk.queue-size'/> <flag name='pnv-phb3-root-port'/> <flag name='pnv-phb3'/> + <flag name='pnv-phb4-root-port'/> <version>5000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900241</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml index dc055245ff..22725f1eea 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml @@ -191,6 +191,7 @@ <flag name='query-dirty-rate'/> <flag name='pnv-phb3-root-port'/> <flag name='pnv-phb3'/> + <flag name='pnv-phb4-root-port'/> <version>5002000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900243</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml index dc9fce3a49..c4ab974141 100644 --- a/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml @@ -200,6 +200,7 @@ <flag name='rbd-encryption'/> <flag name='pnv-phb3-root-port'/> <flag name='pnv-phb3'/> + <flag name='pnv-phb4-root-port'/> <version>6001050</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900244</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml index 1f622d1372..2be5786f4e 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml @@ -202,6 +202,7 @@ <flag name='device.json+hotplug'/> <flag name='pnv-phb3-root-port'/> <flag name='pnv-phb3'/> + <flag name='pnv-phb4-root-port'/> <version>6002050</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900243</microcodeVersion> -- 2.34.1

This device is an implementation of pcie-root-port, similar to its sibling pnv-phb3-root-port. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- docs/schemas/domaincommon.rng | 1 + src/conf/domain_conf.c | 1 + src/conf/domain_conf.h | 1 + src/qemu/qemu_validate.c | 2 ++ 4 files changed, 5 insertions(+) diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng index fed82c79e1..38619247e4 100644 --- a/docs/schemas/domaincommon.rng +++ b/docs/schemas/domaincommon.rng @@ -2604,6 +2604,7 @@ <value>ioh3420</value> <value>pcie-root-port</value> <value>pnv-phb3-root-port</value> + <value>pnv-phb4-root-port</value> <!-- implementations of "pcie-switch-upstream-port" --> <value>x3130-upstream</value> <!-- implementations of "pcie-switch-downstream-port" --> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 442b3812b7..ca22d42f0a 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -439,6 +439,7 @@ VIR_ENUM_IMPL(virDomainControllerPCIModelName, "pcie-pci-bridge", "pnv-phb3-root-port", "pnv-phb3", + "pnv-phb4-root-port", ); VIR_ENUM_IMPL(virDomainControllerModelSCSI, diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index e4323d0e6f..bbe8ffdf5a 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -647,6 +647,7 @@ typedef enum { VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PCIE_PCI_BRIDGE, VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT, VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3, + VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB4_ROOT_PORT, VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_LAST } virDomainControllerPCIModelName; diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index 3be29af958..cfcad91499 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -3433,6 +3433,8 @@ virValidateControllerPCIModelNameToQEMUCaps(int modelName) return QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT; case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3: return QEMU_CAPS_DEVICE_PNV_PHB3; + case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB4_ROOT_PORT: + return QEMU_CAPS_DEVICE_PNV_PHB4_ROOT_PORT; case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE: return 0; case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_LAST: -- 2.34.1

Use the 'modelName' attribute for the pnv-phb4-root-port device. Let's also take this opportunity to adapt the virDomainControllerIsPowerNVRootPort() helper to also recognize pnv-phb4-root-port as a PowerNV root port. This will spare us from duplicating checks where the constraints of pnv-phb3-root-port also applies for the pnv-phb4-root-port device. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/conf/domain_conf.c | 3 ++- src/qemu/qemu_domain_address.c | 14 +++++++++++++- src/qemu/qemu_validate.c | 6 ++++-- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index ca22d42f0a..c4d79548cf 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -2475,7 +2475,8 @@ virDomainControllerIsPowerNVRootPort(const virDomainControllerDef *cont) name = cont->opts.pciopts.modelName; - if (name != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT) + if ((name != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT) && + (name != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB4_ROOT_PORT)) return false; return true; diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index 5d65049c34..f8b5da8b55 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -2412,6 +2412,18 @@ qemuDomainAssignDevicePCISlots(virDomainDef *def, } +static virDomainControllerPCIModelName +virDomainControllerGetPowerNVRootPortName(virDomainDef *def) +{ + if (STREQ(def->os.machine, "powernv8")) + return VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT; + else if (STREQ(def->os.machine, "powernv9")) + return VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB4_ROOT_PORT; + + return VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE; +} + + static void qemuDomainPCIControllerSetDefaultModelName(virDomainControllerDef *cont, virDomainDef *def, @@ -2435,7 +2447,7 @@ qemuDomainPCIControllerSetDefaultModelName(virDomainControllerDef *cont, break; case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT_PORT: if (qemuDomainIsPowerNV(def)) { - *modelName = VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT; + *modelName = virDomainControllerGetPowerNVRootPortName(def); break; } diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index cfcad91499..e43c49a01a 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -3604,12 +3604,14 @@ qemuValidateDomainDeviceDefControllerPCI(const virDomainControllerDef *cont, case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT_PORT: if (pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_IOH3420 && pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PCIE_ROOT_PORT && - pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT) { + pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT && + pciopts->modelName != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB4_ROOT_PORT) { virReportControllerInvalidValue(cont, model, modelName, "modelName"); return -1; } - if (pciopts->modelName == VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT && + if ((pciopts->modelName == VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT || + pciopts->modelName == VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB4_ROOT_PORT) && !qemuDomainIsPowerNV(def)) { virReportControllerInvalidValue(cont, model, modelName, "modelName"); return -1; -- 2.34.1

The pnv-phb4 device is the pcie-root controller for PowerNV9 domains. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/qemu/qemu_capabilities.c | 2 ++ src/qemu/qemu_capabilities.h | 1 + tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml | 1 + 6 files changed, 7 insertions(+) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index c049dda627..dce7a1dce7 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -660,6 +660,7 @@ VIR_ENUM_IMPL(virQEMUCaps, "pnv-phb3-root-port", /* QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT */ "pnv-phb3", /* QEMU_CAPS_DEVICE_PNV_PHB3 */ "pnv-phb4-root-port", /* QEMU_CAPS_DEVICE_PNV_PHB4_ROOT_PORT */ + "pnv-phb4", /* QEMU_CAPS_DEVICE_PNV_PHB4 */ ); @@ -1362,6 +1363,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = { { "pnv-phb3-root-port", QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT }, { "pnv-phb3", QEMU_CAPS_DEVICE_PNV_PHB3 }, { "pnv-phb4-root-port", QEMU_CAPS_DEVICE_PNV_PHB4_ROOT_PORT }, + { "pnv-phb4", QEMU_CAPS_DEVICE_PNV_PHB4 }, }; diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index d7bf211723..1bf3a75543 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -639,6 +639,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */ QEMU_CAPS_DEVICE_PNV_PHB3_ROOT_PORT, /* -device pnv-phb3-root-port */ QEMU_CAPS_DEVICE_PNV_PHB3, /* -device pnv-phb3 */ QEMU_CAPS_DEVICE_PNV_PHB4_ROOT_PORT, /* -device pnv-phb3-root-port */ + QEMU_CAPS_DEVICE_PNV_PHB4, /* -device pnv-phb4 */ QEMU_CAPS_LAST /* this must always be the last item */ } virQEMUCapsFlags; diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml index 047ed74bed..525ee70b67 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml @@ -189,6 +189,7 @@ <flag name='pnv-phb3-root-port'/> <flag name='pnv-phb3'/> <flag name='pnv-phb4-root-port'/> + <flag name='pnv-phb4'/> <version>5000000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900241</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml index 22725f1eea..82babb370d 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml @@ -192,6 +192,7 @@ <flag name='pnv-phb3-root-port'/> <flag name='pnv-phb3'/> <flag name='pnv-phb4-root-port'/> + <flag name='pnv-phb4'/> <version>5002000</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900243</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml index c4ab974141..71c0133069 100644 --- a/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml @@ -201,6 +201,7 @@ <flag name='pnv-phb3-root-port'/> <flag name='pnv-phb3'/> <flag name='pnv-phb4-root-port'/> + <flag name='pnv-phb4'/> <version>6001050</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900244</microcodeVersion> diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml index 2be5786f4e..43cff73de0 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml @@ -203,6 +203,7 @@ <flag name='pnv-phb3-root-port'/> <flag name='pnv-phb3'/> <flag name='pnv-phb4-root-port'/> + <flag name='pnv-phb4'/> <version>6002050</version> <kvmVersion>0</kvmVersion> <microcodeVersion>42900243</microcodeVersion> -- 2.34.1

Similar to the existing pnv-phb3 device, pnv-phb4 is also an implementation of pcie-root. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- docs/schemas/domaincommon.rng | 1 + src/conf/domain_conf.c | 1 + src/conf/domain_conf.h | 1 + src/qemu/qemu_validate.c | 2 ++ 4 files changed, 5 insertions(+) diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng index 38619247e4..dc736a34ca 100644 --- a/docs/schemas/domaincommon.rng +++ b/docs/schemas/domaincommon.rng @@ -2598,6 +2598,7 @@ <value>i82801b11-bridge</value> <!-- implementations of "pcie-root" --> <value>pnv-phb3</value> + <value>pnv-phb4</value> <!-- implementations of "pcie-to-pci-bridge" --> <value>pcie-pci-bridge</value> <!-- implementations of "pcie-root-port" --> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index c4d79548cf..8e7808ac9b 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -440,6 +440,7 @@ VIR_ENUM_IMPL(virDomainControllerPCIModelName, "pnv-phb3-root-port", "pnv-phb3", "pnv-phb4-root-port", + "pnv-phb4", ); VIR_ENUM_IMPL(virDomainControllerModelSCSI, diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index bbe8ffdf5a..b183394f26 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -648,6 +648,7 @@ typedef enum { VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3_ROOT_PORT, VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3, VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB4_ROOT_PORT, + VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB4, VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_LAST } virDomainControllerPCIModelName; diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index e43c49a01a..5fb30e1fdb 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -3435,6 +3435,8 @@ virValidateControllerPCIModelNameToQEMUCaps(int modelName) return QEMU_CAPS_DEVICE_PNV_PHB3; case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB4_ROOT_PORT: return QEMU_CAPS_DEVICE_PNV_PHB4_ROOT_PORT; + case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB4: + return QEMU_CAPS_DEVICE_PNV_PHB4; case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE: return 0; case VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_LAST: -- 2.34.1

Use the 'modelName' attribute for the pnv-phb4 pcie-root device. Update the virDomainControllerIsPowerNVPHB() helper as well so this device receives the same handling the existing pnv-phb3 has. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- src/conf/domain_conf.c | 4 ++-- src/qemu/qemu_domain_address.c | 14 +++++++++++++- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 8e7808ac9b..1c2b182c03 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -2456,8 +2456,8 @@ virDomainControllerIsPowerNVPHB(const virDomainControllerDef *cont) name = cont->opts.pciopts.modelName; - /* The actual device used for PHBs is pnv-phb3 */ - if (name != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3) + if ((name != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3) && + (name != VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB4)) return false; return true; diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index f8b5da8b55..73dafdfda9 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -2424,6 +2424,18 @@ virDomainControllerGetPowerNVRootPortName(virDomainDef *def) } +static virDomainControllerPCIModelName +virDomainControllerGetPowerNVPHBName(virDomainDef *def) +{ + if (STREQ(def->os.machine, "powernv8")) + return VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3; + else if (STREQ(def->os.machine, "powernv9")) + return VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB4; + + return VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_NONE; +} + + static void qemuDomainPCIControllerSetDefaultModelName(virDomainControllerDef *cont, virDomainDef *def, @@ -2476,7 +2488,7 @@ qemuDomainPCIControllerSetDefaultModelName(virDomainControllerDef *cont, break; case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: if (qemuDomainIsPowerNV(def)) - *modelName = VIR_DOMAIN_CONTROLLER_PCI_MODEL_NAME_PNV_PHB3; + *modelName = virDomainControllerGetPowerNVPHBName(def); break; case VIR_DOMAIN_CONTROLLER_MODEL_PCI_DEFAULT: case VIR_DOMAIN_CONTROLLER_MODEL_PCI_LAST: -- 2.34.1

Since the nuances of PowerNV PHBs and root ports were already handled when adding support for pnv-phb3* devices, we're already set to support PowerNV9 PHBs and root ports as well. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- tests/qemuxml2argvdata/powernv9-dupPHBs.err | 1 + tests/qemuxml2argvdata/powernv9-dupPHBs.xml | 27 ++++++++++++++ .../qemuxml2argvdata/powernv9-root-port.args | 33 +++++++++++++++++ tests/qemuxml2argvdata/powernv9-root-port.xml | 17 +++++++++ tests/qemuxml2argvtest.c | 7 ++++ .../qemuxml2xmloutdata/powernv9-root-port.xml | 36 +++++++++++++++++++ tests/qemuxml2xmltest.c | 4 +++ tests/testutilsqemu.c | 2 +- 8 files changed, 126 insertions(+), 1 deletion(-) create mode 100644 tests/qemuxml2argvdata/powernv9-dupPHBs.err create mode 100644 tests/qemuxml2argvdata/powernv9-dupPHBs.xml create mode 100644 tests/qemuxml2argvdata/powernv9-root-port.args create mode 100644 tests/qemuxml2argvdata/powernv9-root-port.xml create mode 100644 tests/qemuxml2xmloutdata/powernv9-root-port.xml diff --git a/tests/qemuxml2argvdata/powernv9-dupPHBs.err b/tests/qemuxml2argvdata/powernv9-dupPHBs.err new file mode 100644 index 0000000000..bc5879640d --- /dev/null +++ b/tests/qemuxml2argvdata/powernv9-dupPHBs.err @@ -0,0 +1 @@ +XML error: Multiple pnv-phb controllers with same chip-id and index diff --git a/tests/qemuxml2argvdata/powernv9-dupPHBs.xml b/tests/qemuxml2argvdata/powernv9-dupPHBs.xml new file mode 100644 index 0000000000..49af69e6c4 --- /dev/null +++ b/tests/qemuxml2argvdata/powernv9-dupPHBs.xml @@ -0,0 +1,27 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='ppc64' machine='powernv9'>hvm</type> + </os> + <devices> + <emulator>/usr/bin/qemu-system-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'> + <model name='pnv-phb4'/> + <target index='0' chip-id='0'/> + </controller> + <controller type='pci' index='1' model='pcie-root'> + <model name='pnv-phb4'/> + <target index='1' chip-id='0'/> + </controller> + <controller type='pci' index='2' model='pcie-root'> + <model name='pnv-phb4'/> + <target index='1' chip-id='0'/> + </controller> + <console type='pty'> + <target type='serial' port='0'/> + </console> + </devices> +</domain> diff --git a/tests/qemuxml2argvdata/powernv9-root-port.args b/tests/qemuxml2argvdata/powernv9-root-port.args new file mode 100644 index 0000000000..a754f2bc17 --- /dev/null +++ b/tests/qemuxml2argvdata/powernv9-root-port.args @@ -0,0 +1,33 @@ +LC_ALL=C \ +PATH=/bin \ +HOME=/tmp/lib/domain--1-QEMUGuest1 \ +USER=test \ +LOGNAME=test \ +XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \ +XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \ +XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \ +QEMU_AUDIO_DRV=none \ +/usr/bin/qemu-system-ppc64 \ +-name guest=QEMUGuest1,debug-threads=on \ +-S \ +-object secret,id=masterKey0,format=raw,file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \ +-machine powernv9,usb=off,dump-guest-core=off \ +-accel tcg \ +-m 2048 \ +-realtime mlock=off \ +-smp 1,sockets=1,cores=1,threads=1 \ +-uuid b20fcfe3-4a0a-4039-8735-9e024256e0f7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,server=on,wait=off \ +-mon chardev=charmonitor,id=monitor,mode=control \ +-rtc base=utc \ +-no-shutdown \ +-boot strict=on \ +-device pnv-phb4,index=0,chip-id=0,id=pcie.0 \ +-device pnv-phb4-root-port,port=0,chassis=1,id=pci.1,bus=pcie.0,addr=0x0 \ +-usb \ +-chardev pty,id=charserial0 \ +-device isa-serial,chardev=charserial0,id=serial0,index=0 \ +-msg timestamp=on diff --git a/tests/qemuxml2argvdata/powernv9-root-port.xml b/tests/qemuxml2argvdata/powernv9-root-port.xml new file mode 100644 index 0000000000..dfd74446f9 --- /dev/null +++ b/tests/qemuxml2argvdata/powernv9-root-port.xml @@ -0,0 +1,17 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='ppc64' machine='powernv9'>hvm</type> + </os> + <devices> + <emulator>/usr/bin/qemu-system-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'/> + <controller type='pci' index='1' model='pcie-root-port'/> + <console type='pty'> + <target type='serial' port='0'/> + </console> + </devices> +</domain> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index ff8698927e..ed3abcc13b 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2227,6 +2227,13 @@ mymain(void) DO_TEST_PARSE_ERROR("powernv8-dupPHBs", QEMU_CAPS_DEVICE_ISA_SERIAL, QEMU_CAPS_DEVICE_PNV_PHB3); + DO_TEST("powernv9-root-port", + QEMU_CAPS_DEVICE_ISA_SERIAL, + QEMU_CAPS_DEVICE_PNV_PHB4, + QEMU_CAPS_DEVICE_PNV_PHB4_ROOT_PORT); + DO_TEST_PARSE_ERROR("powernv9-dupPHBs", + QEMU_CAPS_DEVICE_ISA_SERIAL, + QEMU_CAPS_DEVICE_PNV_PHB4); DO_TEST("pseries-basic", QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, diff --git a/tests/qemuxml2xmloutdata/powernv9-root-port.xml b/tests/qemuxml2xmloutdata/powernv9-root-port.xml new file mode 100644 index 0000000000..5649526969 --- /dev/null +++ b/tests/qemuxml2xmloutdata/powernv9-root-port.xml @@ -0,0 +1,36 @@ +<domain type='qemu'> + <name>QEMUGuest1</name> + <uuid>b20fcfe3-4a0a-4039-8735-9e024256e0f7</uuid> + <memory unit='KiB'>2097152</memory> + <currentMemory unit='KiB'>2097152</currentMemory> + <vcpu placement='static'>1</vcpu> + <os> + <type arch='ppc64' machine='powernv9'>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-ppc64</emulator> + <controller type='pci' index='0' model='pcie-root'> + <model name='pnv-phb4'/> + <target index='0' chip-id='0'/> + </controller> + <controller type='pci' index='1' model='pcie-root-port'> + <model name='pnv-phb4-root-port'/> + <target chassis='1' port='0x0'/> + <address type='pci' domain='0x0000' bus='0x00' slot='0x00' function='0x0'/> + </controller> + <serial type='pty'> + <target type='isa-serial' port='0'> + <model name='isa-serial'/> + </target> + </serial> + <console type='pty'> + <target type='serial' port='0'/> + </console> + <audio id='1' type='none'/> + </devices> +</domain> diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 5ed8283546..c385dd4d5b 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -647,6 +647,10 @@ mymain(void) DO_TEST("powernv8-two-sockets", QEMU_CAPS_DEVICE_ISA_SERIAL, QEMU_CAPS_DEVICE_PNV_PHB3); + DO_TEST("powernv9-root-port", + QEMU_CAPS_DEVICE_ISA_SERIAL, + QEMU_CAPS_DEVICE_PNV_PHB4, + QEMU_CAPS_DEVICE_PNV_PHB4_ROOT_PORT); DO_TEST("pseries-nvram", QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index 5d29125ffa..96d1d0db56 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -54,7 +54,7 @@ static const char *const arm_machines[] = { "vexpress-a9", "virt", NULL }; static const char *const ppc64_machines[] = { - "pseries", "powernv8", NULL + "pseries", "powernv8", "powernv9", NULL }; static const char *const ppc_machines[] = { "ppce500", NULL -- 2.34.1
participants (3)
-
Daniel Henrique Barboza
-
Daniel P. Berrangé
-
Peter Krempa