[libvirt] [PATCH] storage: Don't remove the pool for buildPool failure in storagePoolCreate
by John Ferlan
https://bugzilla.redhat.com/show_bug.cgi?id=1362349
When adding the ability to build the pool during the start pool processing
using the similar flags as buildPool processing would use, the code was
essentially cut-n-pasted from storagePoolCreateXML. However, that included
a call to virStoragePoolObjRemove which shouldn't happen within the
storagePoolCreate path since that'll remove the pool from the list of
pools only to be rediscovered if libvirtd restarts.
So on failure, just fail and return as we should expect
Signed-off-by: John Ferlan <jferlan(a)redhat.com>
---
src/storage/storage_driver.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/src/storage/storage_driver.c b/src/storage/storage_driver.c
index dedc5c6..6f1e372 100644
--- a/src/storage/storage_driver.c
+++ b/src/storage/storage_driver.c
@@ -931,11 +931,8 @@ storagePoolCreate(virStoragePoolPtr obj,
if (build_flags ||
(flags & VIR_STORAGE_POOL_CREATE_WITH_BUILD)) {
- if (backend->buildPool(obj->conn, pool, build_flags) < 0) {
- virStoragePoolObjRemove(&driver->pools, pool);
- pool = NULL;
+ if (backend->buildPool(obj->conn, pool, build_flags) < 0)
goto cleanup;
- }
}
}
--
2.7.4
8 years, 3 months
[libvirt] [PATCH 0/3] qemu: Fix virQEMUCapsNewCopy
by Jiri Denemark
Jiri Denemark (3):
qemu: Copy QEMU caps elements in order of definition
qemu: Copy missing QEMU caps elements
qemu: Add tests for virQEMUCapsNewCopy
src/qemu/qemu_capabilities.c | 24 +++++++++++++++++++---
src/qemu/qemu_capabilities.h | 1 -
src/qemu/qemu_capspriv.h | 2 ++
tests/qemucapabilitiestest.c | 47 ++++++++++++++++++++++++++++++++++++++++++++
4 files changed, 70 insertions(+), 4 deletions(-)
--
2.9.2
8 years, 3 months
[libvirt] [PATCH] tests: qemucapabilities: Add data for qemu 2.7.0
by Peter Krempa
As of (v2.7.0-rc1-52-g42e0d60)
---
.../qemucapabilitiesdata/caps_2.7.0.x86_64.replies | 4968 ++++++++++++++++++++
tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml | 255 +
tests/qemucapabilitiestest.c | 1 +
3 files changed, 5224 insertions(+)
create mode 100644 tests/qemucapabilitiesdata/caps_2.7.0.x86_64.replies
create mode 100644 tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml
diff --git a/tests/qemucapabilitiesdata/caps_2.7.0.x86_64.replies b/tests/qemucapabilitiesdata/caps_2.7.0.x86_64.replies
new file mode 100644
index 0000000..7986dae
--- /dev/null
+++ b/tests/qemucapabilitiesdata/caps_2.7.0.x86_64.replies
@@ -0,0 +1,4968 @@
+{
+ "QMP": {
+ "version": {
+ "qemu": {
+ "micro": 91,
+ "minor": 6,
+ "major": 2
+ },
+ "package": " (v2.7.0-rc1-52-g42e0d60)"
+ },
+ "capabilities": [
+ ]
+ }
+}
+
+{
+ "return": {
+ },
+ "id": "libvirt-1"
+}
+
+{
+ "return": {
+ "qemu": {
+ "micro": 91,
+ "minor": 6,
+ "major": 2
+ },
+ "package": " (v2.7.0-rc1-52-g42e0d60)"
+ },
+ "id": "libvirt-2"
+}
+
+{
+ "return": {
+ "arch": "x86_64"
+ },
+ "id": "libvirt-3"
+}
+
+{
+ "return": [
+ {
+ "name": "query-hotpluggable-cpus"
+ },
+ {
+ "name": "query-rocker-of-dpa-groups"
+ },
+ {
+ "name": "query-rocker-of-dpa-flows"
+ },
+ {
+ "name": "query-rocker-ports"
+ },
+ {
+ "name": "query-rocker"
+ },
+ {
+ "name": "block-set-write-threshold"
+ },
+ {
+ "name": "input-send-event"
+ },
+ {
+ "name": "trace-event-set-state"
+ },
+ {
+ "name": "trace-event-get-state"
+ },
+ {
+ "name": "rtc-reset-reinjection"
+ },
+ {
+ "name": "query-acpi-ospm-status"
+ },
+ {
+ "name": "query-memory-devices"
+ },
+ {
+ "name": "query-memdev"
+ },
+ {
+ "name": "blockdev-change-medium"
+ },
+ {
+ "name": "query-named-block-nodes"
+ },
+ {
+ "name": "x-blockdev-change"
+ },
+ {
+ "name": "x-blockdev-insert-medium"
+ },
+ {
+ "name": "x-blockdev-remove-medium"
+ },
+ {
+ "name": "blockdev-close-tray"
+ },
+ {
+ "name": "blockdev-open-tray"
+ },
+ {
+ "name": "x-blockdev-del"
+ },
+ {
+ "name": "blockdev-add"
+ },
+ {
+ "name": "query-rx-filter"
+ },
+ {
+ "name": "chardev-remove"
+ },
+ {
+ "name": "chardev-add"
+ },
+ {
+ "name": "query-tpm-types"
+ },
+ {
+ "name": "query-tpm-models"
+ },
+ {
+ "name": "query-tpm"
+ },
+ {
+ "name": "query-target"
+ },
+ {
+ "name": "query-cpu-definitions"
+ },
+ {
+ "name": "query-machines"
+ },
+ {
+ "name": "device-list-properties"
+ },
+ {
+ "name": "qom-list-types"
+ },
+ {
+ "name": "change-vnc-password"
+ },
+ {
+ "name": "nbd-server-stop"
+ },
+ {
+ "name": "nbd-server-add"
+ },
+ {
+ "name": "nbd-server-start"
+ },
+ {
+ "name": "qom-get"
+ },
+ {
+ "name": "qom-set"
+ },
+ {
+ "name": "qom-list"
+ },
+ {
+ "name": "query-block-jobs"
+ },
+ {
+ "name": "query-balloon"
+ },
+ {
+ "name": "query-migrate-parameters"
+ },
+ {
+ "name": "migrate-set-parameters"
+ },
+ {
+ "name": "query-migrate-capabilities"
+ },
+ {
+ "name": "migrate-set-capabilities"
+ },
+ {
+ "name": "query-migrate"
+ },
+ {
+ "name": "query-command-line-options"
+ },
+ {
+ "name": "query-uuid"
+ },
+ {
+ "name": "query-name"
+ },
+ {
+ "name": "query-spice"
+ },
+ {
+ "name": "query-vnc-servers"
+ },
+ {
+ "name": "query-vnc"
+ },
+ {
+ "name": "query-mice"
+ },
+ {
+ "name": "query-status"
+ },
+ {
+ "name": "query-kvm"
+ },
+ {
+ "name": "query-pci"
+ },
+ {
+ "name": "query-iothreads"
+ },
+ {
+ "name": "query-cpus"
+ },
+ {
+ "name": "query-blockstats"
+ },
+ {
+ "name": "query-block"
+ },
+ {
+ "name": "query-chardev-backends"
+ },
+ {
+ "name": "query-chardev"
+ },
+ {
+ "name": "query-qmp-schema"
+ },
+ {
+ "name": "query-events"
+ },
+ {
+ "name": "query-commands"
+ },
+ {
+ "name": "query-version"
+ },
+ {
+ "name": "human-monitor-command"
+ },
+ {
+ "name": "qmp_capabilities"
+ },
+ {
+ "name": "add_client"
+ },
+ {
+ "name": "expire_password"
+ },
+ {
+ "name": "set_password"
+ },
+ {
+ "name": "block_set_io_throttle"
+ },
+ {
+ "name": "block_passwd"
+ },
+ {
+ "name": "query-fdsets"
+ },
+ {
+ "name": "remove-fd"
+ },
+ {
+ "name": "add-fd"
+ },
+ {
+ "name": "closefd"
+ },
+ {
+ "name": "getfd"
+ },
+ {
+ "name": "set_link"
+ },
+ {
+ "name": "balloon"
+ },
+ {
+ "name": "change-backing-file"
+ },
+ {
+ "name": "blockdev-mirror"
+ },
+ {
+ "name": "drive-mirror"
+ },
+ {
+ "name": "blockdev-snapshot-delete-internal-sync"
+ },
+ {
+ "name": "blockdev-snapshot-internal-sync"
+ },
+ {
+ "name": "blockdev-snapshot"
+ },
+ {
+ "name": "blockdev-snapshot-sync"
+ },
+ {
+ "name": "block-dirty-bitmap-clear"
+ },
+ {
+ "name": "block-dirty-bitmap-remove"
+ },
+ {
+ "name": "block-dirty-bitmap-add"
+ },
+ {
+ "name": "transaction"
+ },
+ {
+ "name": "block-job-complete"
+ },
+ {
+ "name": "block-job-resume"
+ },
+ {
+ "name": "block-job-pause"
+ },
+ {
+ "name": "block-job-cancel"
+ },
+ {
+ "name": "block-job-set-speed"
+ },
+ {
+ "name": "blockdev-backup"
+ },
+ {
+ "name": "drive-backup"
+ },
+ {
+ "name": "block-commit"
+ },
+ {
+ "name": "block-stream"
+ },
+ {
+ "name": "block_resize"
+ },
+ {
+ "name": "object-del"
+ },
+ {
+ "name": "object-add"
+ },
+ {
+ "name": "netdev_del"
+ },
+ {
+ "name": "netdev_add"
+ },
+ {
+ "name": "query-dump"
+ },
+ {
+ "name": "query-dump-guest-memory-capability"
+ },
+ {
+ "name": "dump-guest-memory"
+ },
+ {
+ "name": "client_migrate_info"
+ },
+ {
+ "name": "migrate_set_downtime"
+ },
+ {
+ "name": "migrate_set_speed"
+ },
+ {
+ "name": "query-migrate-cache-size"
+ },
+ {
+ "name": "migrate-start-postcopy"
+ },
+ {
+ "name": "migrate-set-cache-size"
+ },
+ {
+ "name": "migrate-incoming"
+ },
+ {
+ "name": "migrate_cancel"
+ },
+ {
+ "name": "migrate"
+ },
+ {
+ "name": "xen-set-global-dirty-log"
+ },
+ {
+ "name": "xen-load-devices-state"
+ },
+ {
+ "name": "xen-save-devices-state"
+ },
+ {
+ "name": "ringbuf-read"
+ },
+ {
+ "name": "ringbuf-write"
+ },
+ {
+ "name": "inject-nmi"
+ },
+ {
+ "name": "pmemsave"
+ },
+ {
+ "name": "memsave"
+ },
+ {
+ "name": "cpu-add"
+ },
+ {
+ "name": "cpu"
+ },
+ {
+ "name": "send-key"
+ },
+ {
+ "name": "device_del"
+ },
+ {
+ "name": "device_add"
+ },
+ {
+ "name": "system_powerdown"
+ },
+ {
+ "name": "system_reset"
+ },
+ {
+ "name": "system_wakeup"
+ },
+ {
+ "name": "cont"
+ },
+ {
+ "name": "stop"
+ },
+ {
+ "name": "screendump"
+ },
+ {
+ "name": "change"
+ },
+ {
+ "name": "eject"
+ },
+ {
+ "name": "quit"
+ }
+ ],
+ "id": "libvirt-4"
+}
+
+{
+ "return": {
+ "fd": 14,
+ "fdset-id": 0
+ },
+ "id": "libvirt-5"
+}
+
+{
+ "id": "libvirt-6",
+ "error": {
+ "class": "DeviceNotFound",
+ "desc": "Device 'bogus' not found"
+ }
+}
+
+{
+ "return": [
+ {
+ "name": "WATCHDOG"
+ },
+ {
+ "name": "WAKEUP"
+ },
+ {
+ "name": "VSERPORT_CHANGE"
+ },
+ {
+ "name": "VNC_INITIALIZED"
+ },
+ {
+ "name": "VNC_DISCONNECTED"
+ },
+ {
+ "name": "VNC_CONNECTED"
+ },
+ {
+ "name": "SUSPEND_DISK"
+ },
+ {
+ "name": "SUSPEND"
+ },
+ {
+ "name": "STOP"
+ },
+ {
+ "name": "SPICE_MIGRATE_COMPLETED"
+ },
+ {
+ "name": "SPICE_INITIALIZED"
+ },
+ {
+ "name": "SPICE_DISCONNECTED"
+ },
+ {
+ "name": "SPICE_CONNECTED"
+ },
+ {
+ "name": "SHUTDOWN"
+ },
+ {
+ "name": "RTC_CHANGE"
+ },
+ {
+ "name": "RESUME"
+ },
+ {
+ "name": "RESET"
+ },
+ {
+ "name": "QUORUM_REPORT_BAD"
+ },
+ {
+ "name": "QUORUM_FAILURE"
+ },
+ {
+ "name": "POWERDOWN"
+ },
+ {
+ "name": "NIC_RX_FILTER_CHANGED"
+ },
+ {
+ "name": "MIGRATION_PASS"
+ },
+ {
+ "name": "MIGRATION"
+ },
+ {
+ "name": "MEM_UNPLUG_ERROR"
+ },
+ {
+ "name": "GUEST_PANICKED"
+ },
+ {
+ "name": "DUMP_COMPLETED"
+ },
+ {
+ "name": "DEVICE_TRAY_MOVED"
+ },
+ {
+ "name": "DEVICE_DELETED"
+ },
+ {
+ "name": "BLOCK_WRITE_THRESHOLD"
+ },
+ {
+ "name": "BLOCK_JOB_READY"
+ },
+ {
+ "name": "BLOCK_JOB_ERROR"
+ },
+ {
+ "name": "BLOCK_JOB_COMPLETED"
+ },
+ {
+ "name": "BLOCK_JOB_CANCELLED"
+ },
+ {
+ "name": "BLOCK_IO_ERROR"
+ },
+ {
+ "name": "BLOCK_IMAGE_CORRUPTED"
+ },
+ {
+ "name": "BALLOON_CHANGE"
+ },
+ {
+ "name": "ACPI_DEVICE_OST"
+ }
+ ],
+ "id": "libvirt-7"
+}
+
+{
+ "return": [
+ {
+ "name": "virtio-tablet-pci"
+ },
+ {
+ "name": "pc-0.13-machine"
+ },
+ {
+ "name": "generic-sdhci"
+ },
+ {
+ "name": "i82551"
+ },
+ {
+ "name": "i82550"
+ },
+ {
+ "name": "Westmere-x86_64-cpu"
+ },
+ {
+ "name": "pci-serial-4x"
+ },
+ {
+ "name": "Penryn-x86_64-cpu"
+ },
+ {
+ "name": "Haswell-x86_64-cpu"
+ },
+ {
+ "name": "iothread"
+ },
+ {
+ "name": "cfi.pflash01"
+ },
+ {
+ "name": "Skylake-Client-x86_64-cpu"
+ },
+ {
+ "name": "virtio-gpu-device"
+ },
+ {
+ "name": "Opteron_G3-x86_64-cpu"
+ },
+ {
+ "name": "Broadwell-x86_64-cpu"
+ },
+ {
+ "name": "e1000e"
+ },
+ {
+ "name": "piix3-ide"
+ },
+ {
+ "name": "isa-parallel"
+ },
+ {
+ "name": "i2c-bus"
+ },
+ {
+ "name": "pc-q35-2.4-machine"
+ },
+ {
+ "name": "megasas"
+ },
+ {
+ "name": "usb-braille"
+ },
+ {
+ "name": "mptsas1068"
+ },
+ {
+ "name": "vmware-svga"
+ },
+ {
+ "name": "PIIX3-xen"
+ },
+ {
+ "name": "ccid-bus"
+ },
+ {
+ "name": "scsi-cd"
+ },
+ {
+ "name": "pc-i440fx-2.0-machine"
+ },
+ {
+ "name": "isa-serial"
+ },
+ {
+ "name": "usb-ehci"
+ },
+ {
+ "name": "user-creatable"
+ },
+ {
+ "name": "container"
+ },
+ {
+ "name": "host-x86_64-cpu"
+ },
+ {
+ "name": "qemu64-x86_64-cpu"
+ },
+ {
+ "name": "pci-serial-2x"
+ },
+ {
+ "name": "piix4-ide"
+ },
+ {
+ "name": "scsi-generic"
+ },
+ {
+ "name": "pc-1.0-machine"
+ },
+ {
+ "name": "virtio-net-pci"
+ },
+ {
+ "name": "hyperv-testdev"
+ },
+ {
+ "name": "pc-dimm"
+ },
+ {
+ "name": "Haswell-noTSX-x86_64-cpu"
+ },
+ {
+ "name": "pc-i440fx-2.1-machine"
+ },
+ {
+ "name": "virtio-mouse-device"
+ },
+ {
+ "name": "virtio-mouse-pci"
+ },
+ {
+ "name": "isa-debugcon"
+ },
+ {
+ "name": "ide-hd"
+ },
+ {
+ "name": "virtio-vga"
+ },
+ {
+ "name": "isa-ipmi-bt"
+ },
+ {
+ "name": "rng-egd"
+ },
+ {
+ "name": "isa-pcspk"
+ },
+ {
+ "name": "isa-pit"
+ },
+ {
+ "name": "pc-1.1-machine"
+ },
+ {
+ "name": "filter-buffer"
+ },
+ {
+ "name": "ich9-usb-ehci1"
+ },
+ {
+ "name": "ich9-usb-ehci2"
+ },
+ {
+ "name": "pxb-host"
+ },
+ {
+ "name": "intel-iommu"
+ },
+ {
+ "name": "irq"
+ },
+ {
+ "name": "ipmi-bmc-sim"
+ },
+ {
+ "name": "cirrus-vga"
+ },
+ {
+ "name": "virtconsole"
+ },
+ {
+ "name": "virtio-rng-pci"
+ },
+ {
+ "name": "PCIE"
+ },
+ {
+ "name": "vfio-amd-xgbe"
+ },
+ {
+ "name": "pentium3-x86_64-cpu"
+ },
+ {
+ "name": "qxl-vga"
+ },
+ {
+ "name": "ioapic"
+ },
+ {
+ "name": "kvm-pit"
+ },
+ {
+ "name": "pc-i440fx-2.5-machine"
+ },
+ {
+ "name": "vhost-scsi-pci"
+ },
+ {
+ "name": "usb-host"
+ },
+ {
+ "name": "usb-bus"
+ },
+ {
+ "name": "pc-i440fx-1.4-machine"
+ },
+ {
+ "name": "usb-kbd"
+ },
+ {
+ "name": "486-x86_64-cpu"
+ },
+ {
+ "name": "ES1370"
+ },
+ {
+ "name": "gus"
+ },
+ {
+ "name": "PIIX3"
+ },
+ {
+ "name": "isa-applesmc"
+ },
+ {
+ "name": "pc-i440fx-2.6-machine"
+ },
+ {
+ "name": "kvm-pci-assign"
+ },
+ {
+ "name": "i82559er"
+ },
+ {
+ "name": "usb-bt-dongle"
+ },
+ {
+ "name": "q35-pcihost"
+ },
+ {
+ "name": "e1000-82545em"
+ },
+ {
+ "name": "ipmi-interface"
+ },
+ {
+ "name": "pc-0.14-machine"
+ },
+ {
+ "name": "pc-i440fx-1.5-machine"
+ },
+ {
+ "name": "e1000-82544gc"
+ },
+ {
+ "name": "i6300esb"
+ },
+ {
+ "name": "mc146818rtc"
+ },
+ {
+ "name": "AC97"
+ },
+ {
+ "name": "PIIX4_PM"
+ },
+ {
+ "name": "piix4-usb-uhci"
+ },
+ {
+ "name": "sysbus-ahci"
+ },
+ {
+ "name": "virtio-tablet-device"
+ },
+ {
+ "name": "filter-redirector"
+ },
+ {
+ "name": "kvm-ioapic"
+ },
+ {
+ "name": "pvpanic"
+ },
+ {
+ "name": "core2duo-x86_64-cpu"
+ },
+ {
+ "name": "virtio-9p-pci"
+ },
+ {
+ "name": "scsi-disk"
+ },
+ {
+ "name": "acpi-device-interface"
+ },
+ {
+ "name": "vfio-pci-igd-lpc-bridge"
+ },
+ {
+ "name": "sb16"
+ },
+ {
+ "name": "qio-channel-buffer"
+ },
+ {
+ "name": "qemu-console"
+ },
+ {
+ "name": "pc-0.15-machine"
+ },
+ {
+ "name": "usb-mouse"
+ },
+ {
+ "name": "filter-dump"
+ },
+ {
+ "name": "piix3-usb-uhci"
+ },
+ {
+ "name": "vfio-calxeda-xgmac"
+ },
+ {
+ "name": "virtio-scsi-device"
+ },
+ {
+ "name": "virtio-blk-pci"
+ },
+ {
+ "name": "virtio-9p-device"
+ },
+ {
+ "name": "hda-output"
+ },
+ {
+ "name": "pc-q35-2.5-machine"
+ },
+ {
+ "name": "SUNW,fdtwo"
+ },
+ {
+ "name": "tpci200"
+ },
+ {
+ "name": "i8257"
+ },
+ {
+ "name": "Opteron_G4-x86_64-cpu"
+ },
+ {
+ "name": "virtio-mmio"
+ },
+ {
+ "name": "filter-mirror"
+ },
+ {
+ "name": "isa-i8259"
+ },
+ {
+ "name": "System"
+ },
+ {
+ "name": "pvscsi"
+ },
+ {
+ "name": "virtio-net-device"
+ },
+ {
+ "name": "sd-bus"
+ },
+ {
+ "name": "qio-channel-file"
+ },
+ {
+ "name": "usb-hub"
+ },
+ {
+ "name": "IvyBridge-x86_64-cpu"
+ },
+ {
+ "name": "hda-duplex"
+ },
+ {
+ "name": "igd-passthrough-i440FX"
+ },
+ {
+ "name": "virtio-keyboard-pci"
+ },
+ {
+ "name": "igd-passthrough-isa-bridge"
+ },
+ {
+ "name": "nec-usb-xhci"
+ },
+ {
+ "name": "input-linux"
+ },
+ {
+ "name": "megasas-gen2"
+ },
+ {
+ "name": "pci-ohci"
+ },
+ {
+ "name": "ib700"
+ },
+ {
+ "name": "xio3130-downstream"
+ },
+ {
+ "name": "isapc-machine"
+ },
+ {
+ "name": "ipoctal232"
+ },
+ {
+ "name": "ide-cd"
+ },
+ {
+ "name": "tls-creds-anon"
+ },
+ {
+ "name": "pc-i440fx-2.2-machine"
+ },
+ {
+ "name": "isabus-bridge"
+ },
+ {
+ "name": "isa-ipmi-kcs"
+ },
+ {
+ "name": "memory-backend-file"
+ },
+ {
+ "name": "isa-ide"
+ },
+ {
+ "name": "virtio-keyboard-device"
+ },
+ {
+ "name": "apic"
+ },
+ {
+ "name": "isa-vga"
+ },
+ {
+ "name": "qemu:memory-region"
+ },
+ {
+ "name": "ipmi-bmc-extern"
+ },
+ {
+ "name": "rng-random"
+ },
+ {
+ "name": "hotplug-handler"
+ },
+ {
+ "name": "kvm-i8259"
+ },
+ {
+ "name": "i440FX-pcihost"
+ },
+ {
+ "name": "rocker"
+ },
+ {
+ "name": "tpm-tis"
+ },
+ {
+ "name": "tpm-passthrough"
+ },
+ {
+ "name": "pc-1.2-machine"
+ },
+ {
+ "name": "isa-debug-exit"
+ },
+ {
+ "name": "Opteron_G1-x86_64-cpu"
+ },
+ {
+ "name": "pc-testdev"
+ },
+ {
+ "name": "qemu32-x86_64-cpu"
+ },
+ {
+ "name": "pc-0.10-machine"
+ },
+ {
+ "name": "pc-i440fx-2.3-machine"
+ },
+ {
+ "name": "sga"
+ },
+ {
+ "name": "pcnet"
+ },
+ {
+ "name": "ivshmem"
+ },
+ {
+ "name": "hpet"
+ },
+ {
+ "name": "adlib"
+ },
+ {
+ "name": "qio-channel-command"
+ },
+ {
+ "name": "lsi53c895a"
+ },
+ {
+ "name": "pxb-bus"
+ },
+ {
+ "name": "usb-audio"
+ },
+ {
+ "name": "usb-wacom-tablet"
+ },
+ {
+ "name": "pc-0.11-machine"
+ },
+ {
+ "name": "kvm-apic"
+ },
+ {
+ "name": "phenom-x86_64-cpu"
+ },
+ {
+ "name": "fw_cfg_io"
+ },
+ {
+ "name": "usb-net"
+ },
+ {
+ "name": "ioh3420"
+ },
+ {
+ "name": "cs4231a"
+ },
+ {
+ "name": "dc390"
+ },
+ {
+ "name": "nvme"
+ },
+ {
+ "name": "i82801b11-bridge"
+ },
+ {
+ "name": "kvmvapic"
+ },
+ {
+ "name": "usb-tablet"
+ },
+ {
+ "name": "fw-path-provider"
+ },
+ {
+ "name": "usb-ccid"
+ },
+ {
+ "name": "sdhci-bus"
+ },
+ {
+ "name": "pci-bridge-seat"
+ },
+ {
+ "name": "mch"
+ },
+ {
+ "name": "pc-i440fx-2.7-machine"
+ },
+ {
+ "name": "vhost-scsi"
+ },
+ {
+ "name": "isa-dma"
+ },
+ {
+ "name": "tcg-accel"
+ },
+ {
+ "name": "virtio-mmio-bus"
+ },
+ {
+ "name": "ich9-usb-uhci2"
+ },
+ {
+ "name": "usb-bot"
+ },
+ {
+ "name": "ICH9-LPC"
+ },
+ {
+ "name": "edu"
+ },
+ {
+ "name": "accel"
+ },
+ {
+ "name": "pxb-pcie-bus"
+ },
+ {
+ "name": "pc-i440fx-1.6-machine"
+ },
+ {
+ "name": "lsi53c810"
+ },
+ {
+ "name": "kvmclock"
+ },
+ {
+ "name": "isa-cirrus-vga"
+ },
+ {
+ "name": "ich9-usb-uhci4"
+ },
+ {
+ "name": "virtio-serial-bus"
+ },
+ {
+ "name": "nvdimm"
+ },
+ {
+ "name": "SandyBridge-x86_64-cpu"
+ },
+ {
+ "name": "esp"
+ },
+ {
+ "name": "virtio-balloon-device"
+ },
+ {
+ "name": "qxl"
+ },
+ {
+ "name": "intel-hda"
+ },
+ {
+ "name": "ich9-usb-uhci6"
+ },
+ {
+ "name": "pc-i440fx-1.7-machine"
+ },
+ {
+ "name": "virtio-serial-device"
+ },
+ {
+ "name": "ich9-usb-uhci3"
+ },
+ {
+ "name": "ICH9 SMB"
+ },
+ {
+ "name": "ich9-usb-uhci5"
+ },
+ {
+ "name": "pxb-pcie"
+ },
+ {
+ "name": "piix3-ide-xen"
+ },
+ {
+ "name": "virtio-input-host-device"
+ },
+ {
+ "name": "vmxnet3"
+ },
+ {
+ "name": "IDE"
+ },
+ {
+ "name": "VGA"
+ },
+ {
+ "name": "pci-testdev"
+ },
+ {
+ "name": "ich9-usb-uhci1"
+ },
+ {
+ "name": "x3130-upstream"
+ },
+ {
+ "name": "pci-bridge"
+ },
+ {
+ "name": "SCSI"
+ },
+ {
+ "name": "none-machine"
+ },
+ {
+ "name": "sysbus-fdc"
+ },
+ {
+ "name": "allwinner-ahci"
+ },
+ {
+ "name": "n270-x86_64-cpu"
+ },
+ {
+ "name": "pci-serial"
+ },
+ {
+ "name": "pc-q35-2.6-machine"
+ },
+ {
+ "name": "athlon-x86_64-cpu"
+ },
+ {
+ "name": "tls-creds-x509"
+ },
+ {
+ "name": "virtio-balloon-pci"
+ },
+ {
+ "name": "ISA"
+ },
+ {
+ "name": "i8042"
+ },
+ {
+ "name": "kvm-accel"
+ },
+ {
+ "name": "secret"
+ },
+ {
+ "name": "i82559c"
+ },
+ {
+ "name": "i82559b"
+ },
+ {
+ "name": "i82559a"
+ },
+ {
+ "name": "scsi-hd"
+ },
+ {
+ "name": "qtest-accel"
+ },
+ {
+ "name": "virtio-scsi-pci"
+ },
+ {
+ "name": "hda-micro"
+ },
+ {
+ "name": "scsi-block"
+ },
+ {
+ "name": "rtl8139"
+ },
+ {
+ "name": "vmmouse"
+ },
+ {
+ "name": "ich9-intel-hda"
+ },
+ {
+ "name": "pc-q35-2.7-machine"
+ },
+ {
+ "name": "usb-mtp"
+ },
+ {
+ "name": "ide-drive"
+ },
+ {
+ "name": "qio-channel-websock"
+ },
+ {
+ "name": "fw_cfg_mem"
+ },
+ {
+ "name": "PCI"
+ },
+ {
+ "name": "Opteron_G5-x86_64-cpu"
+ },
+ {
+ "name": "vmport"
+ },
+ {
+ "name": "coreduo-x86_64-cpu"
+ },
+ {
+ "name": "virtio-pci-bus"
+ },
+ {
+ "name": "virtio-serial-pci"
+ },
+ {
+ "name": "virtio-rng-device"
+ },
+ {
+ "name": "pentium2-x86_64-cpu"
+ },
+ {
+ "name": "virtio-input-host-pci"
+ },
+ {
+ "name": "nmi"
+ },
+ {
+ "name": "i82558b"
+ },
+ {
+ "name": "i82558a"
+ },
+ {
+ "name": "qemu,register"
+ },
+ {
+ "name": "am53c974"
+ },
+ {
+ "name": "sdhci-pci"
+ },
+ {
+ "name": "port92"
+ },
+ {
+ "name": "pxb"
+ },
+ {
+ "name": "ne2k_isa"
+ },
+ {
+ "name": "e1000"
+ },
+ {
+ "name": "Conroe-x86_64-cpu"
+ },
+ {
+ "name": "kvm64-x86_64-cpu"
+ },
+ {
+ "name": "qio-channel-tls"
+ },
+ {
+ "name": "vt82c686b-usb-uhci"
+ },
+ {
+ "name": "HDA"
+ },
+ {
+ "name": "usb-storage"
+ },
+ {
+ "name": "pc-1.3-machine"
+ },
+ {
+ "name": "usb-serial"
+ },
+ {
+ "name": "usb-redir"
+ },
+ {
+ "name": "sysbus-ohci"
+ },
+ {
+ "name": "pc-i440fx-2.4-machine"
+ },
+ {
+ "name": "i82801"
+ },
+ {
+ "name": "i82557b"
+ },
+ {
+ "name": "usb-uas"
+ },
+ {
+ "name": "Broadwell-noTSX-x86_64-cpu"
+ },
+ {
+ "name": "i82557c"
+ },
+ {
+ "name": "Nehalem-x86_64-cpu"
+ },
+ {
+ "name": "memory-backend-ram"
+ },
+ {
+ "name": "i82557a"
+ },
+ {
+ "name": "virtserialport"
+ },
+ {
+ "name": "i440FX"
+ },
+ {
+ "name": "ne2k_pci"
+ },
+ {
+ "name": "smbus-eeprom"
+ },
+ {
+ "name": "i82562"
+ },
+ {
+ "name": "ich9-ahci"
+ },
+ {
+ "name": "isa-fdc"
+ },
+ {
+ "name": "sd-card"
+ },
+ {
+ "name": "pc-0.12-machine"
+ },
+ {
+ "name": "kvm32-x86_64-cpu"
+ },
+ {
+ "name": "Opteron_G2-x86_64-cpu"
+ },
+ {
+ "name": "vfio-pci"
+ },
+ {
+ "name": "IndustryPack"
+ },
+ {
+ "name": "virtio-gpu-pci"
+ },
+ {
+ "name": "ivshmem-plain"
+ },
+ {
+ "name": "secondary-vga"
+ },
+ {
+ "name": "ivshmem-doorbell"
+ },
+ {
+ "name": "qio-channel-socket"
+ },
+ {
+ "name": "pentium-x86_64-cpu"
+ },
+ {
+ "name": "virtio-blk-device"
+ }
+ ],
+ "id": "libvirt-8"
+}
+
+{
+ "return": [
+ {
+ "name": "secs",
+ "type": "uint32"
+ },
+ {
+ "name": "request-merging",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "min_io_size",
+ "type": "uint16"
+ },
+ {
+ "name": "event_idx",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "serial",
+ "type": "str"
+ },
+ {
+ "name": "heads",
+ "type": "uint32"
+ },
+ {
+ "name": "ioeventfd",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "scsi",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "cyls",
+ "type": "uint32"
+ },
+ {
+ "name": "x-disable-pcie",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "logical_block_size",
+ "description": "A power of two between 512 and 32768",
+ "type": "uint16"
+ },
+ {
+ "name": "indirect_desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "disable-modern",
+ "type": "bool"
+ },
+ {
+ "name": "drive",
+ "description": "Node name or ID of a block device to use as a backend",
+ "type": "str"
+ },
+ {
+ "name": "disable-legacy",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "werror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "name": "discard_granularity",
+ "type": "uint32"
+ },
+ {
+ "name": "rerror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "name": "iothread",
+ "type": "link<iothread>"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "any_layout",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "class",
+ "type": "uint32"
+ },
+ {
+ "name": "migrate-extra",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ },
+ {
+ "name": "modern-pio-notify",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "vectors",
+ "type": "uint32"
+ },
+ {
+ "name": "physical_block_size",
+ "description": "A power of two between 512 and 32768",
+ "type": "uint16"
+ },
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "name": "virtio-backend",
+ "type": "child<virtio-blk-device>"
+ },
+ {
+ "name": "config-wce",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "notify_on_empty",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "num-queues",
+ "type": "uint16"
+ },
+ {
+ "name": "virtio-pci-bus-master-bug-migration",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "write-cache",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "opt_io_size",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ }
+ ],
+ "id": "libvirt-9"
+}
+
+{
+ "return": [
+ {
+ "name": "indirect_desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "x-txtimer",
+ "type": "uint32"
+ },
+ {
+ "name": "guest_ufo",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "mq",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "status",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "host_ecn",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "ioeventfd",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "tx",
+ "type": "str"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "ctrl_rx_extra",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "ctrl_vq",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "mac",
+ "description": "Ethernet 6-byte MAC Address, example: 52:54:00:12:34:56",
+ "type": "str"
+ },
+ {
+ "name": "x-disable-pcie",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "guest_tso6",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "gso",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "guest_ecn",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "ctrl_rx",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "guest_tso4",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "disable-modern",
+ "type": "bool"
+ },
+ {
+ "name": "guest_csum",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "guest_announce",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "disable-legacy",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "x-txburst",
+ "type": "int32"
+ },
+ {
+ "name": "ctrl_vlan",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "csum",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "mrg_rxbuf",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "ctrl_guest_offloads",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "any_layout",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "ctrl_mac_addr",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "event_idx",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "migrate-extra",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ },
+ {
+ "name": "modern-pio-notify",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "vectors",
+ "type": "uint32"
+ },
+ {
+ "name": "host_tso6",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "vlan",
+ "description": "Integer VLAN id to connect to",
+ "type": "int32"
+ },
+ {
+ "name": "host_tso4",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "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"
+ },
+ {
+ "name": "notify_on_empty",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "virtio-pci-bus-master-bug-migration",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ }
+ ],
+ "id": "libvirt-10"
+}
+
+{
+ "return": [
+ {
+ "name": "event_idx",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "ioeventfd",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "x-disable-pcie",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "indirect_desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "disable-modern",
+ "type": "bool"
+ },
+ {
+ "name": "cmd_per_lun",
+ "type": "uint32"
+ },
+ {
+ "name": "disable-legacy",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "num_queues",
+ "type": "uint32"
+ },
+ {
+ "name": "hotplug",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "max_sectors",
+ "type": "uint32"
+ },
+ {
+ "name": "param_change",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "any_layout",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "iothread",
+ "type": "link<iothread>"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ },
+ {
+ "name": "migrate-extra",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "modern-pio-notify",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "vectors",
+ "type": "uint32"
+ },
+ {
+ "name": "virtio-backend",
+ "type": "child<virtio-scsi-device>"
+ },
+ {
+ "name": "notify_on_empty",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "virtio-pci-bus-master-bug-migration",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ }
+ ],
+ "id": "libvirt-11"
+}
+
+{
+ "id": "libvirt-12",
+ "error": {
+ "class": "DeviceNotFound",
+ "desc": "Device 'virtio-blk-ccw' not found"
+ }
+}
+
+{
+ "id": "libvirt-13",
+ "error": {
+ "class": "DeviceNotFound",
+ "desc": "Device 'virtio-net-ccw' not found"
+ }
+}
+
+{
+ "id": "libvirt-14",
+ "error": {
+ "class": "DeviceNotFound",
+ "desc": "Device 'virtio-scsi-ccw' not found"
+ }
+}
+
+{
+ "id": "libvirt-15",
+ "error": {
+ "class": "DeviceNotFound",
+ "desc": "Device 'virtio-blk-s390' not found"
+ }
+}
+
+{
+ "id": "libvirt-16",
+ "error": {
+ "class": "DeviceNotFound",
+ "desc": "Device 'virtio-net-s390' not found"
+ }
+}
+
+{
+ "id": "libvirt-17",
+ "error": {
+ "class": "DeviceNotFound",
+ "desc": "Device 'pci-assign' not found"
+ }
+}
+
+{
+ "return": [
+ {
+ "name": "share_intx",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "host",
+ "description": "Address (bus/device/function) of the host device, example: 04:10.0",
+ "type": "str"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ },
+ {
+ "name": "configfd",
+ "type": "str"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ },
+ {
+ "name": "prefer_msi",
+ "description": "on/off",
+ "type": "bool"
+ }
+ ],
+ "id": "libvirt-18"
+}
+
+{
+ "return": [
+ {
+ "name": "x-pci-sub-device-id",
+ "type": "uint32"
+ },
+ {
+ "name": "x-no-kvm-msi",
+ "type": "bool"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "x-igd-opregion",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "x-vga",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "x-pci-vendor-id",
+ "type": "uint32"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "name": "x-req",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "x-igd-gms",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ },
+ {
+ "name": "x-no-kvm-intx",
+ "type": "bool"
+ },
+ {
+ "name": "x-pci-device-id",
+ "type": "uint32"
+ },
+ {
+ "name": "host",
+ "description": "Address (bus/device/function) of the host device, example: 04:10.0",
+ "type": "str"
+ },
+ {
+ "name": "x-no-kvm-msix",
+ "type": "bool"
+ },
+ {
+ "name": "x-intx-mmap-timeout-ms",
+ "type": "uint32"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ },
+ {
+ "name": "x-pci-sub-vendor-id",
+ "type": "uint32"
+ },
+ {
+ "name": "sysfsdev",
+ "type": "str"
+ },
+ {
+ "name": "x-no-mmap",
+ "type": "bool"
+ }
+ ],
+ "id": "libvirt-19"
+}
+
+{
+ "return": [
+ {
+ "name": "serial",
+ "type": "str"
+ },
+ {
+ "name": "port_index",
+ "type": "uint16"
+ },
+ {
+ "name": "dpofua",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "name": "logical_block_size",
+ "description": "A power of two between 512 and 32768",
+ "type": "uint16"
+ },
+ {
+ "name": "discard_granularity",
+ "type": "uint32"
+ },
+ {
+ "name": "lun",
+ "type": "uint32"
+ },
+ {
+ "name": "max_unmap_size",
+ "type": "uint64"
+ },
+ {
+ "name": "drive",
+ "description": "Node name or ID of a block device to use as a backend",
+ "type": "str"
+ },
+ {
+ "name": "port_wwn",
+ "type": "uint64"
+ },
+ {
+ "name": "write-cache",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "opt_io_size",
+ "type": "uint32"
+ },
+ {
+ "name": "min_io_size",
+ "type": "uint16"
+ },
+ {
+ "name": "product",
+ "type": "str"
+ },
+ {
+ "name": "scsi-id",
+ "type": "uint32"
+ },
+ {
+ "name": "channel",
+ "type": "uint32"
+ },
+ {
+ "name": "vendor",
+ "type": "str"
+ },
+ {
+ "name": "wwn",
+ "type": "uint64"
+ },
+ {
+ "name": "werror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "name": "removable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "rerror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "name": "ver",
+ "type": "str"
+ },
+ {
+ "name": "physical_block_size",
+ "description": "A power of two between 512 and 32768",
+ "type": "uint16"
+ },
+ {
+ "name": "max_io_size",
+ "type": "uint64"
+ }
+ ],
+ "id": "libvirt-20"
+}
+
+{
+ "return": [
+ {
+ "name": "serial",
+ "type": "str"
+ },
+ {
+ "name": "logical_block_size",
+ "description": "A power of two between 512 and 32768",
+ "type": "uint16"
+ },
+ {
+ "name": "discard_granularity",
+ "type": "uint32"
+ },
+ {
+ "name": "drive",
+ "description": "Node name or ID of a block device to use as a backend",
+ "type": "str"
+ },
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "name": "write-cache",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "opt_io_size",
+ "type": "uint32"
+ },
+ {
+ "name": "min_io_size",
+ "type": "uint16"
+ },
+ {
+ "name": "unit",
+ "type": "uint32"
+ },
+ {
+ "name": "wwn",
+ "type": "uint64"
+ },
+ {
+ "name": "werror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "name": "model",
+ "type": "str"
+ },
+ {
+ "name": "rerror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "name": "ver",
+ "type": "str"
+ },
+ {
+ "name": "physical_block_size",
+ "description": "A power of two between 512 and 32768",
+ "type": "uint16"
+ }
+ ],
+ "id": "libvirt-21"
+}
+
+{
+ "return": [
+ {
+ "name": "memory-hotplug-support",
+ "type": "bool"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "acpi-pci-hotplug-with-bridge-support",
+ "type": "bool"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ },
+ {
+ "name": "disable_s4",
+ "type": "uint8"
+ },
+ {
+ "name": "disable_s3",
+ "type": "uint8"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "s4_val",
+ "type": "uint8"
+ },
+ {
+ "name": "smb_io_base",
+ "type": "uint32"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ }
+ ],
+ "id": "libvirt-22"
+}
+
+{
+ "return": [
+ {
+ "name": "filter",
+ "type": "str"
+ },
+ {
+ "name": "msos-desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "serial",
+ "type": "str"
+ },
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "name": "port",
+ "type": "str"
+ },
+ {
+ "name": "debug",
+ "type": "uint8"
+ },
+ {
+ "name": "streams",
+ "type": "bool"
+ },
+ {
+ "name": "chardev",
+ "description": "ID of a chardev to use as a backend",
+ "type": "str"
+ },
+ {
+ "name": "full-path",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "attached",
+ "type": "bool"
+ }
+ ],
+ "id": "libvirt-23"
+}
+
+{
+ "return": [
+ {
+ "name": "isobufs",
+ "type": "uint32"
+ },
+ {
+ "name": "hostaddr",
+ "type": "uint32"
+ },
+ {
+ "name": "msos-desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "productid",
+ "type": "uint32"
+ },
+ {
+ "name": "serial",
+ "type": "str"
+ },
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "name": "isobsize",
+ "type": "uint32"
+ },
+ {
+ "name": "port",
+ "type": "str"
+ },
+ {
+ "name": "vendorid",
+ "type": "uint32"
+ },
+ {
+ "name": "pipeline",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "attached",
+ "type": "bool"
+ },
+ {
+ "name": "hostport",
+ "type": "str"
+ },
+ {
+ "name": "full-path",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "loglevel",
+ "type": "uint32"
+ },
+ {
+ "name": "hostbus",
+ "type": "uint32"
+ }
+ ],
+ "id": "libvirt-24"
+}
+
+{
+ "return": [
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "name": "drive",
+ "description": "Node name or ID of a block device to use as a backend",
+ "type": "str"
+ },
+ {
+ "name": "lun",
+ "type": "uint32"
+ },
+ {
+ "name": "channel",
+ "type": "uint32"
+ },
+ {
+ "name": "scsi-id",
+ "type": "uint32"
+ }
+ ],
+ "id": "libvirt-25"
+}
+
+{
+ "return": [
+ {
+ "name": "short_root_bus",
+ "type": "uint32"
+ },
+ {
+ "name": "pci-conf-idx[0]",
+ "type": "child<qemu:memory-region>"
+ },
+ {
+ "name": "pci-hole64-end",
+ "type": "int"
+ },
+ {
+ "name": "pci-hole-end",
+ "type": "int"
+ },
+ {
+ "name": "pci-hole-start",
+ "type": "int"
+ },
+ {
+ "name": "pci-hole64-start",
+ "type": "int"
+ },
+ {
+ "name": "pci-hole64-size",
+ "type": "size"
+ },
+ {
+ "name": "pci-conf-data[0]",
+ "type": "child<qemu:memory-region>"
+ }
+ ],
+ "id": "libvirt-26"
+}
+
+{
+ "return": [
+ {
+ "name": "short_root_bus",
+ "type": "uint32"
+ },
+ {
+ "name": "system-mem",
+ "type": "link<qemu:memory-region>"
+ },
+ {
+ "name": "pci-conf-idx[0]",
+ "type": "child<qemu:memory-region>"
+ },
+ {
+ "name": "pcie-mmcfg-mmio[0]",
+ "type": "child<qemu:memory-region>"
+ },
+ {
+ "name": "pci-hole64-start",
+ "type": "int"
+ },
+ {
+ "name": "io-mem",
+ "type": "link<qemu:memory-region>"
+ },
+ {
+ "name": "pci-hole64-end",
+ "type": "int"
+ },
+ {
+ "name": "pci-hole-end",
+ "type": "int"
+ },
+ {
+ "name": "above-4g-mem-size",
+ "type": "size"
+ },
+ {
+ "name": "below-4g-mem-size",
+ "type": "size"
+ },
+ {
+ "name": "ram-mem",
+ "type": "link<qemu:memory-region>"
+ },
+ {
+ "name": "pci-hole-start",
+ "type": "int"
+ },
+ {
+ "name": "MCFG",
+ "type": "uint64"
+ },
+ {
+ "name": "mch",
+ "type": "child<mch>"
+ },
+ {
+ "name": "pci-hole64-size",
+ "type": "size"
+ },
+ {
+ "name": "pci-mem",
+ "type": "link<qemu:memory-region>"
+ },
+ {
+ "name": "pci-conf-data[0]",
+ "type": "child<qemu:memory-region>"
+ },
+ {
+ "name": "mcfg_size",
+ "type": "int"
+ }
+ ],
+ "id": "libvirt-27"
+}
+
+{
+ "return": [
+ {
+ "name": "serial",
+ "type": "str"
+ },
+ {
+ "name": "msos-desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "logical_block_size",
+ "description": "A power of two between 512 and 32768",
+ "type": "uint16"
+ },
+ {
+ "name": "discard_granularity",
+ "type": "uint32"
+ },
+ {
+ "name": "drive",
+ "description": "Node name or ID of a block device to use as a backend",
+ "type": "str"
+ },
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "name": "write-cache",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "opt_io_size",
+ "type": "uint32"
+ },
+ {
+ "name": "min_io_size",
+ "type": "uint16"
+ },
+ {
+ "name": "port",
+ "type": "str"
+ },
+ {
+ "name": "attached",
+ "type": "bool"
+ },
+ {
+ "name": "full-path",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "removable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "physical_block_size",
+ "description": "A power of two between 512 and 32768",
+ "type": "uint16"
+ }
+ ],
+ "id": "libvirt-28"
+}
+
+{
+ "return": [
+ {
+ "name": "iobase",
+ "type": "uint32"
+ },
+ {
+ "name": "lost_tick_policy",
+ "type": "LostTickPolicy"
+ }
+ ],
+ "id": "libvirt-29"
+}
+
+{
+ "return": [
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "mmio",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "qemu-extended-regs",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "big-endian-framebuffer",
+ "type": "bool"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ },
+ {
+ "name": "vgamem_mb",
+ "type": "uint32"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ }
+ ],
+ "id": "libvirt-30"
+}
+
+{
+ "return": [
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ },
+ {
+ "name": "vgamem_mb",
+ "type": "uint32"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ }
+ ],
+ "id": "libvirt-31"
+}
+
+{
+ "return": [
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "ram_size_mb",
+ "type": "uint32"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "vgamem_mb",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ },
+ {
+ "name": "debug",
+ "type": "uint32"
+ },
+ {
+ "name": "vram_size_mb",
+ "type": "uint32"
+ },
+ {
+ "name": "revision",
+ "type": "uint32"
+ },
+ {
+ "name": "ram_size",
+ "type": "uint32"
+ },
+ {
+ "name": "vram64_size_mb",
+ "type": "uint32"
+ },
+ {
+ "name": "guestdebug",
+ "type": "uint32"
+ },
+ {
+ "name": "vram_size",
+ "type": "uint64"
+ },
+ {
+ "name": "surfaces",
+ "type": "int32"
+ },
+ {
+ "name": "max_outputs",
+ "type": "uint16"
+ },
+ {
+ "name": "cmdlog",
+ "type": "uint32"
+ }
+ ],
+ "id": "libvirt-32"
+}
+
+{
+ "return": [
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "ram_size_mb",
+ "type": "uint32"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "vgamem_mb",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ },
+ {
+ "name": "debug",
+ "type": "uint32"
+ },
+ {
+ "name": "vram_size_mb",
+ "type": "uint32"
+ },
+ {
+ "name": "revision",
+ "type": "uint32"
+ },
+ {
+ "name": "ram_size",
+ "type": "uint32"
+ },
+ {
+ "name": "vram64_size_mb",
+ "type": "uint32"
+ },
+ {
+ "name": "guestdebug",
+ "type": "uint32"
+ },
+ {
+ "name": "vram_size",
+ "type": "uint64"
+ },
+ {
+ "name": "surfaces",
+ "type": "int32"
+ },
+ {
+ "name": "max_outputs",
+ "type": "uint16"
+ },
+ {
+ "name": "cmdlog",
+ "type": "uint32"
+ }
+ ],
+ "id": "libvirt-33"
+}
+
+{
+ "return": [
+ {
+ "name": "disable-modern",
+ "type": "bool"
+ },
+ {
+ "name": "ioeventfd",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "virtio-pci-bus-master-bug-migration",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "any_layout",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "indirect_desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "migrate-extra",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "notify_on_empty",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "event_idx",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "modern-pio-notify",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ },
+ {
+ "name": "virtio-backend",
+ "type": "child<virtio-gpu-device>"
+ },
+ {
+ "name": "disable-legacy",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "vectors",
+ "type": "uint32"
+ },
+ {
+ "name": "x-disable-pcie",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ },
+ {
+ "name": "max_outputs",
+ "type": "uint32"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ }
+ ],
+ "id": "libvirt-34"
+}
+
+{
+ "return": [
+ {
+ "name": "memory-hotplug-support",
+ "type": "bool"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "sci_int",
+ "type": "uint32"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "gpe0_blk_len",
+ "type": "uint32"
+ },
+ {
+ "name": "pm_io_base",
+ "type": "uint32"
+ },
+ {
+ "name": "noreboot",
+ "type": "bool"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "disable_s4",
+ "type": "uint8"
+ },
+ {
+ "name": "acpi_disable_cmd",
+ "type": "uint8"
+ },
+ {
+ "name": "cpu-hotplug-legacy",
+ "type": "bool"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ },
+ {
+ "name": "disable_s3",
+ "type": "uint8"
+ },
+ {
+ "name": "s4_val",
+ "type": "uint8"
+ },
+ {
+ "name": "acpi_enable_cmd",
+ "type": "uint8"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ },
+ {
+ "name": "enable_tco",
+ "type": "bool"
+ },
+ {
+ "name": "gpe0_blk",
+ "type": "uint32"
+ }
+ ],
+ "id": "libvirt-35"
+}
+
+{
+ "return": [
+ {
+ "name": "disable-modern",
+ "type": "bool"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "virtio-pci-bus-master-bug-migration",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "class",
+ "type": "uint32"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "indirect_desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "guest-stats-polling-interval",
+ "type": "int"
+ },
+ {
+ "name": "guest-stats",
+ "type": "guest statistics"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "migrate-extra",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "event_idx",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "modern-pio-notify",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ },
+ {
+ "name": "virtio-backend",
+ "type": "child<virtio-balloon-device>"
+ },
+ {
+ "name": "disable-legacy",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "x-disable-pcie",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ },
+ {
+ "name": "any_layout",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "notify_on_empty",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "deflate-on-oom",
+ "description": "on/off",
+ "type": "bool"
+ }
+ ],
+ "id": "libvirt-36"
+}
+
+{
+ "id": "libvirt-37",
+ "error": {
+ "class": "DeviceNotFound",
+ "desc": "Device 'virtio-balloon-ccw' not found"
+ }
+}
+
+{
+ "return": [
+ {
+ "name": "notify_on_empty",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "any_layout",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "indirect_desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "guest-stats",
+ "type": "guest statistics"
+ },
+ {
+ "name": "guest-stats-polling-interval",
+ "type": "int"
+ },
+ {
+ "name": "event_idx",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "deflate-on-oom",
+ "description": "on/off",
+ "type": "bool"
+ }
+ ],
+ "id": "libvirt-38"
+}
+
+{
+ "return": [
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "intrs",
+ "type": "uint32"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "msix",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "msi",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "superspeed-ports-first",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "streams",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ },
+ {
+ "name": "force-pcie-endcap",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ },
+ {
+ "name": "p3",
+ "type": "uint32"
+ },
+ {
+ "name": "p2",
+ "type": "uint32"
+ },
+ {
+ "name": "slots",
+ "type": "uint32"
+ }
+ ],
+ "id": "libvirt-39"
+}
+
+{
+ "return": [
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-0.12",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-i440fx-2.4",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-1.3",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-q35-2.7",
+ "cpu-max": 255,
+ "alias": "q35"
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-q35-2.6",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": false,
+ "name": "none",
+ "cpu-max": 1
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-i440fx-1.7",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-i440fx-1.6",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-i440fx-2.7",
+ "is-default": true,
+ "cpu-max": 255,
+ "alias": "pc"
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-0.11",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-i440fx-2.3",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-0.10",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-1.2",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-i440fx-2.2",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "isapc",
+ "cpu-max": 1
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-q35-2.5",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-0.15",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-i440fx-1.5",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-0.14",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-i440fx-2.6",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-i440fx-1.4",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-i440fx-2.5",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-1.1",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-i440fx-2.1",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-1.0",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-i440fx-2.0",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-q35-2.4",
+ "cpu-max": 255
+ },
+ {
+ "hotpluggable-cpus": true,
+ "name": "pc-0.13",
+ "cpu-max": 255
+ }
+ ],
+ "id": "libvirt-40"
+}
+
+{
+ "return": [
+ {
+ "name": "Opteron_G5"
+ },
+ {
+ "name": "Opteron_G4"
+ },
+ {
+ "name": "Opteron_G3"
+ },
+ {
+ "name": "Opteron_G2"
+ },
+ {
+ "name": "Opteron_G1"
+ },
+ {
+ "name": "Skylake-Client"
+ },
+ {
+ "name": "Broadwell"
+ },
+ {
+ "name": "Broadwell-noTSX"
+ },
+ {
+ "name": "Haswell"
+ },
+ {
+ "name": "Haswell-noTSX"
+ },
+ {
+ "name": "IvyBridge"
+ },
+ {
+ "name": "SandyBridge"
+ },
+ {
+ "name": "Westmere"
+ },
+ {
+ "name": "Nehalem"
+ },
+ {
+ "name": "Penryn"
+ },
+ {
+ "name": "Conroe"
+ },
+ {
+ "name": "n270"
+ },
+ {
+ "name": "athlon"
+ },
+ {
+ "name": "pentium3"
+ },
+ {
+ "name": "pentium2"
+ },
+ {
+ "name": "pentium"
+ },
+ {
+ "name": "486"
+ },
+ {
+ "name": "coreduo"
+ },
+ {
+ "name": "kvm32"
+ },
+ {
+ "name": "qemu32"
+ },
+ {
+ "name": "kvm64"
+ },
+ {
+ "name": "core2duo"
+ },
+ {
+ "name": "phenom"
+ },
+ {
+ "name": "qemu64"
+ }
+ ],
+ "id": "libvirt-41"
+}
+
+{
+ "return": {
+ "enabled": false,
+ "present": true
+ },
+ "id": "libvirt-42"
+}
+
+{
+ "return": [
+ "tpm-tis"
+ ],
+ "id": "libvirt-43"
+}
+
+{
+ "return": [
+ "passthrough"
+ ],
+ "id": "libvirt-44"
+}
+
+{
+ "return": [
+ {
+ "parameters": [
+ {
+ "name": "timeout",
+ "help": "Request timeout in seconds (default 0 = no timeout)",
+ "type": "number"
+ },
+ {
+ "name": "initiator-name",
+ "help": "Initiator iqn name to use when connecting",
+ "type": "string"
+ },
+ {
+ "name": "header-digest",
+ "help": "HeaderDigest setting. {CRC32C|CRC32C-NONE|NONE-CRC32C|NONE}",
+ "type": "string"
+ },
+ {
+ "name": "password-secret",
+ "help": "ID of the secret providing password for CHAP authentication to target",
+ "type": "string"
+ },
+ {
+ "name": "password",
+ "help": "password for CHAP authentication to target",
+ "type": "string"
+ },
+ {
+ "name": "user",
+ "help": "username for CHAP authentication to target",
+ "type": "string"
+ }
+ ],
+ "option": "iscsi"
+ },
+ {
+ "parameters": [
+ {
+ "name": "non-adaptive",
+ "type": "boolean"
+ },
+ {
+ "name": "lossy",
+ "type": "boolean"
+ },
+ {
+ "name": "acl",
+ "type": "boolean"
+ },
+ {
+ "name": "x509verify",
+ "type": "string"
+ },
+ {
+ "name": "tls",
+ "type": "boolean"
+ },
+ {
+ "name": "sasl",
+ "type": "boolean"
+ },
+ {
+ "name": "key-delay-ms",
+ "type": "number"
+ },
+ {
+ "name": "lock-key-sync",
+ "type": "boolean"
+ },
+ {
+ "name": "reverse",
+ "type": "boolean"
+ },
+ {
+ "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": "x509",
+ "type": "string"
+ },
+ {
+ "name": "tls-creds",
+ "type": "string"
+ },
+ {
+ "name": "websocket",
+ "type": "string"
+ },
+ {
+ "name": "vnc",
+ "type": "string"
+ }
+ ],
+ "option": "vnc"
+ },
+ {
+ "parameters": [
+ {
+ "name": "gl",
+ "type": "boolean"
+ },
+ {
+ "name": "seamless-migration",
+ "type": "boolean"
+ },
+ {
+ "name": "playback-compression",
+ "type": "boolean"
+ },
+ {
+ "name": "agent-mouse",
+ "type": "boolean"
+ },
+ {
+ "name": "streaming-video",
+ "type": "string"
+ },
+ {
+ "name": "zlib-glz-wan-compression",
+ "type": "string"
+ },
+ {
+ "name": "jpeg-wan-compression",
+ "type": "string"
+ },
+ {
+ "name": "image-compression",
+ "type": "string"
+ },
+ {
+ "name": "plaintext-channel",
+ "type": "string"
+ },
+ {
+ "name": "tls-channel",
+ "type": "string"
+ },
+ {
+ "name": "tls-ciphers",
+ "type": "string"
+ },
+ {
+ "name": "x509-dh-key-file",
+ "type": "string"
+ },
+ {
+ "name": "x509-cacert-file",
+ "type": "string"
+ },
+ {
+ "name": "x509-cert-file",
+ "type": "string"
+ },
+ {
+ "name": "x509-key-password",
+ "type": "string"
+ },
+ {
+ "name": "x509-key-file",
+ "type": "string"
+ },
+ {
+ "name": "x509-dir",
+ "type": "string"
+ },
+ {
+ "name": "sasl",
+ "type": "boolean"
+ },
+ {
+ "name": "disable-agent-file-xfer",
+ "type": "boolean"
+ },
+ {
+ "name": "disable-copy-paste",
+ "type": "boolean"
+ },
+ {
+ "name": "disable-ticketing",
+ "type": "boolean"
+ },
+ {
+ "name": "password",
+ "type": "string"
+ },
+ {
+ "name": "unix",
+ "type": "boolean"
+ },
+ {
+ "name": "ipv6",
+ "type": "boolean"
+ },
+ {
+ "name": "ipv4",
+ "type": "boolean"
+ },
+ {
+ "name": "addr",
+ "type": "string"
+ },
+ {
+ "name": "tls-port",
+ "type": "number"
+ },
+ {
+ "name": "port",
+ "type": "number"
+ }
+ ],
+ "option": "spice"
+ },
+ {
+ "parameters": [
+ ],
+ "option": "smbios"
+ },
+ {
+ "parameters": [
+ ],
+ "option": "acpi"
+ },
+ {
+ "parameters": [
+ {
+ "name": "sock_fd",
+ "type": "number"
+ },
+ {
+ "name": "socket",
+ "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": "sock_fd",
+ "type": "number"
+ },
+ {
+ "name": "socket",
+ "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": "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\nthe 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": [
+ {
+ "name": "arg",
+ "type": "string"
+ },
+ {
+ "name": "target",
+ "type": "string"
+ },
+ {
+ "name": "enable",
+ "type": "boolean"
+ }
+ ],
+ "option": "semihosting-config"
+ },
+ {
+ "parameters": [
+ {
+ "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": "timestamp",
+ "type": "boolean"
+ }
+ ],
+ "option": "msg"
+ },
+ {
+ "parameters": [
+ {
+ "name": "mlock",
+ "type": "boolean"
+ }
+ ],
+ "option": "realtime"
+ },
+ {
+ "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": "enable",
+ "type": "boolean"
+ }
+ ],
+ "option": "sandbox"
+ },
+ {
+ "parameters": [
+ {
+ "name": "strict",
+ "type": "boolean"
+ },
+ {
+ "name": "reboot-timeout",
+ "type": "string"
+ },
+ {
+ "name": "splash-time",
+ "type": "string"
+ },
+ {
+ "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": "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": [
+ {
+ "name": "dea-key-wrap",
+ "help": "enable/disable DEA key wrapping using the CPACF wrapping key",
+ "type": "boolean"
+ },
+ {
+ "name": "aes-key-wrap",
+ "help": "enable/disable AES key wrapping using the CPACF wrapping key",
+ "type": "boolean"
+ },
+ {
+ "name": "suppress-vmdesc",
+ "help": "Set on to disable self-describing migration",
+ "type": "boolean"
+ },
+ {
+ "name": "iommu",
+ "help": "Set on/off to enable/disable Intel IOMMU (VT-d)",
+ "type": "boolean"
+ },
+ {
+ "name": "firmware",
+ "help": "firmware image",
+ "type": "string"
+ },
+ {
+ "name": "usb",
+ "help": "Set on/off to enable/disable usb",
+ "type": "boolean"
+ },
+ {
+ "name": "mem-merge",
+ "help": "enable/disable memory merge support",
+ "type": "boolean"
+ },
+ {
+ "name": "dump-guest-core",
+ "help": "Include guest memory in a core dump",
+ "type": "boolean"
+ },
+ {
+ "name": "dt_compatible",
+ "help": "Overrides the \"compatible\" property of the dt root node",
+ "type": "string"
+ },
+ {
+ "name": "phandle_start",
+ "help": "The first phandle ID we may generate dynamically",
+ "type": "number"
+ },
+ {
+ "name": "dumpdtb",
+ "help": "Dump current dtb to a file and quit",
+ "type": "string"
+ },
+ {
+ "name": "dtb",
+ "help": "Linux kernel device tree file",
+ "type": "string"
+ },
+ {
+ "name": "append",
+ "help": "Linux kernel command line",
+ "type": "string"
+ },
+ {
+ "name": "initrd",
+ "help": "Linux initial ramdisk file",
+ "type": "string"
+ },
+ {
+ "name": "kernel",
+ "help": "Linux kernel image file",
+ "type": "string"
+ },
+ {
+ "name": "kvm_shadow_mem",
+ "help": "KVM shadow MMU size",
+ "type": "size"
+ },
+ {
+ "name": "kernel_irqchip",
+ "help": "use KVM in-kernel irqchip",
+ "type": "boolean"
+ },
+ {
+ "name": "accel",
+ "help": "accelerator list",
+ "type": "string"
+ },
+ {
+ "name": "type",
+ "help": "emulated machine",
+ "type": "string"
+ }
+ ],
+ "option": "machine"
+ },
+ {
+ "parameters": [
+ {
+ "name": "romfile",
+ "type": "string"
+ },
+ {
+ "name": "bootindex",
+ "type": "number"
+ }
+ ],
+ "option": "option-rom"
+ },
+ {
+ "parameters": [
+ {
+ "name": "file",
+ "type": "string"
+ },
+ {
+ "name": "events",
+ "type": "string"
+ },
+ {
+ "name": "enable",
+ "type": "string"
+ }
+ ],
+ "option": "trace"
+ },
+ {
+ "parameters": [
+ {
+ "name": "pretty",
+ "type": "boolean"
+ },
+ {
+ "name": "default",
+ "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": "netdev"
+ },
+ {
+ "parameters": [
+ ],
+ "option": "device"
+ },
+ {
+ "parameters": [
+ {
+ "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": "tls-creds",
+ "type": "string"
+ },
+ {
+ "name": "telnet",
+ "type": "boolean"
+ },
+ {
+ "name": "reconnect",
+ "type": "number"
+ },
+ {
+ "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": "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": "serial",
+ "help": "disk serial number",
+ "type": "string"
+ },
+ {
+ "name": "addr",
+ "help": "pci address (virtio only)",
+ "type": "string"
+ },
+ {
+ "name": "boot",
+ "help": "(deprecated, ignored)",
+ "type": "boolean"
+ },
+ {
+ "name": "trans",
+ "help": "chs translation (auto, lba, none)",
+ "type": "string"
+ },
+ {
+ "name": "secs",
+ "help": "number of sectors (ide disk geometry)",
+ "type": "number"
+ },
+ {
+ "name": "heads",
+ "help": "number of heads (ide disk geometry)",
+ "type": "number"
+ },
+ {
+ "name": "cyls",
+ "help": "number of cylinders (ide disk geometry)",
+ "type": "number"
+ },
+ {
+ "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)",
+ "type": "string"
+ },
+ {
+ "name": "discard",
+ "help": "discard operation (ignore/off, unmap/on)",
+ "type": "string"
+ },
+ {
+ "name": "snapshot",
+ "help": "enable/disable snapshot mode",
+ "type": "boolean"
+ }
+ ],
+ "option": "drive"
+ }
+ ],
+ "id": "libvirt-45"
+}
+
+{
+ "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"
+ }
+ ],
+ "id": "libvirt-46"
+}
diff --git a/tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml
new file mode 100644
index 0000000..fafffa6
--- /dev/null
+++ b/tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml
@@ -0,0 +1,255 @@
+<qemuCaps>
+ <qemuctime>0</qemuctime>
+ <selfctime>0</selfctime>
+ <selfvers>0</selfvers>
+ <usedQMP/>
+ <flag name='mem-path'/>
+ <flag name='drive-serial'/>
+ <flag name='chardev'/>
+ <flag name='enable-kvm'/>
+ <flag name='monitor-json'/>
+ <flag name='sdl'/>
+ <flag name='netdev'/>
+ <flag name='rtc'/>
+ <flag name='vhost-net'/>
+ <flag name='no-hpet'/>
+ <flag name='no-kvm-pit'/>
+ <flag name='pci-configfd'/>
+ <flag name='nodefconfig'/>
+ <flag name='boot-menu'/>
+ <flag name='fsdev'/>
+ <flag name='name-process'/>
+ <flag name='smbios-type'/>
+ <flag name='vga-qxl'/>
+ <flag name='spice'/>
+ <flag name='vga-none'/>
+ <flag name='boot-index'/>
+ <flag name='hda-duplex'/>
+ <flag name='drive-aio'/>
+ <flag name='pci-multibus'/>
+ <flag name='pci-bootindex'/>
+ <flag name='chardev-spicevmc'/>
+ <flag name='virtio-tx-alg'/>
+ <flag name='device-qxl-vga'/>
+ <flag name='pci-multifunction'/>
+ <flag name='virtio-blk-pci.ioeventfd'/>
+ <flag name='sga'/>
+ <flag name='virtio-blk-pci.event_idx'/>
+ <flag name='virtio-net-pci.event_idx'/>
+ <flag name='cache-directsync'/>
+ <flag name='piix3-usb-uhci'/>
+ <flag name='piix4-usb-uhci'/>
+ <flag name='usb-ehci'/>
+ <flag name='ich9-usb-ehci1'/>
+ <flag name='vt82c686b-usb-uhci'/>
+ <flag name='pci-ohci'/>
+ <flag name='usb-redir'/>
+ <flag name='usb-hub'/>
+ <flag name='no-shutdown'/>
+ <flag name='cache-unsafe'/>
+ <flag name='ich9-ahci'/>
+ <flag name='no-acpi'/>
+ <flag name='fsdev-readonly'/>
+ <flag name='virtio-blk-pci.scsi'/>
+ <flag name='drive-copy-on-read'/>
+ <flag name='fsdev-writeout'/>
+ <flag name='drive-iotune'/>
+ <flag name='system_wakeup'/>
+ <flag name='scsi-disk.channel'/>
+ <flag name='scsi-block'/>
+ <flag name='transaction'/>
+ <flag name='block-job-async'/>
+ <flag name='scsi-cd'/>
+ <flag name='ide-cd'/>
+ <flag name='no-user-config'/>
+ <flag name='hda-micro'/>
+ <flag name='dump-guest-memory'/>
+ <flag name='nec-usb-xhci'/>
+ <flag name='balloon-event'/>
+ <flag name='bridge'/>
+ <flag name='lsi'/>
+ <flag name='virtio-scsi-pci'/>
+ <flag name='blockio'/>
+ <flag name='disable-s3'/>
+ <flag name='disable-s4'/>
+ <flag name='usb-redir.filter'/>
+ <flag name='ide-drive.wwn'/>
+ <flag name='scsi-disk.wwn'/>
+ <flag name='seccomp-sandbox'/>
+ <flag name='reboot-timeout'/>
+ <flag name='dump-guest-core'/>
+ <flag name='seamless-migration'/>
+ <flag name='block-commit'/>
+ <flag name='vnc'/>
+ <flag name='drive-mirror'/>
+ <flag name='usb-redir.bootindex'/>
+ <flag name='usb-host.bootindex'/>
+ <flag name='blockdev-snapshot-sync'/>
+ <flag name='qxl'/>
+ <flag name='VGA'/>
+ <flag name='cirrus-vga'/>
+ <flag name='vmware-svga'/>
+ <flag name='device-video-primary'/>
+ <flag name='usb-serial'/>
+ <flag name='usb-net'/>
+ <flag name='add-fd'/>
+ <flag name='nbd-server'/>
+ <flag name='virtio-rng'/>
+ <flag name='rng-random'/>
+ <flag name='rng-egd'/>
+ <flag name='dtb'/>
+ <flag name='megasas'/>
+ <flag name='ipv6-migration'/>
+ <flag name='machine-opt'/>
+ <flag name='machine-usb-opt'/>
+ <flag name='tpm-passthrough'/>
+ <flag name='tpm-tis'/>
+ <flag name='pci-bridge'/>
+ <flag name='vfio-pci'/>
+ <flag name='vfio-pci.bootindex'/>
+ <flag name='scsi-generic'/>
+ <flag name='scsi-generic.bootindex'/>
+ <flag name='mem-merge'/>
+ <flag name='vnc-websocket'/>
+ <flag name='drive-discard'/>
+ <flag name='mlock'/>
+ <flag name='vnc-share-policy'/>
+ <flag name='device-del-event'/>
+ <flag name='dmi-to-pci-bridge'/>
+ <flag name='i440fx-pci-hole64-size'/>
+ <flag name='q35-pci-hole64-size'/>
+ <flag name='usb-storage'/>
+ <flag name='usb-storage.removable'/>
+ <flag name='virtio-mmio'/>
+ <flag name='ich9-intel-hda'/>
+ <flag name='kvm-pit-lost-tick-policy'/>
+ <flag name='boot-strict'/>
+ <flag name='pvpanic'/>
+ <flag name='spice-file-xfer-disable'/>
+ <flag name='spiceport'/>
+ <flag name='usb-kbd'/>
+ <flag name='host-pci-multidomain'/>
+ <flag name='msg-timestamp'/>
+ <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='rtc-reset-reinjection'/>
+ <flag name='splash-timeout'/>
+ <flag name='iothread'/>
+ <flag name='migrate-rdma'/>
+ <flag name='ivshmem'/>
+ <flag name='drive-iotune-max'/>
+ <flag name='VGA.vgamem_mb'/>
+ <flag name='vmware-svga.vgamem_mb'/>
+ <flag name='qxl.vgamem_mb'/>
+ <flag name='qxl-vga.vgamem_mb'/>
+ <flag name='pc-dimm'/>
+ <flag name='machine-vmport-opt'/>
+ <flag name='aes-key-wrap'/>
+ <flag name='dea-key-wrap'/>
+ <flag name='pci-serial'/>
+ <flag name='vhost-user-multiqueue'/>
+ <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='gic-version'/>
+ <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='ich9-disable-s3'/>
+ <flag name='ich9-disable-s4'/>
+ <flag name='vserport-change-event'/>
+ <flag name='virtio-balloon-pci.deflate-on-oom'/>
+ <flag name='mptsas1068'/>
+ <flag name='spice-gl'/>
+ <flag name='qxl.vram64_size_mb'/>
+ <flag name='qxl-vga.vram64_size_mb'/>
+ <flag name='chardev-logfile'/>
+ <flag name='debug-threads'/>
+ <flag name='secret'/>
+ <flag name='pxb'/>
+ <flag name='pxb-pcie'/>
+ <flag name='device-tray-moved-event'/>
+ <flag name='nec-usb-xhci-ports'/>
+ <flag name='virtio-scsi-pci.iothread'/>
+ <flag name='name-guest'/>
+ <flag name='qxl.max_outputs'/>
+ <flag name='qxl-vga.max_outputs'/>
+ <flag name='spice-unix'/>
+ <flag name='drive-detect-zeroes'/>
+ <flag name='tls-creds-x509'/>
+ <flag name='display'/>
+ <flag name='intel-iommu'/>
+ <flag name='smm'/>
+ <version>2006091</version>
+ <kvmVersion>0</kvmVersion>
+ <package> (v2.7.0-rc1-52-g42e0d60)</package>
+ <arch>x86_64</arch>
+ <cpu name='Opteron_G5'/>
+ <cpu name='Opteron_G4'/>
+ <cpu name='Opteron_G3'/>
+ <cpu name='Opteron_G2'/>
+ <cpu name='Opteron_G1'/>
+ <cpu name='Skylake-Client'/>
+ <cpu name='Broadwell'/>
+ <cpu name='Broadwell-noTSX'/>
+ <cpu name='Haswell'/>
+ <cpu name='Haswell-noTSX'/>
+ <cpu name='IvyBridge'/>
+ <cpu name='SandyBridge'/>
+ <cpu name='Westmere'/>
+ <cpu name='Nehalem'/>
+ <cpu name='Penryn'/>
+ <cpu name='Conroe'/>
+ <cpu name='n270'/>
+ <cpu name='athlon'/>
+ <cpu name='pentium3'/>
+ <cpu name='pentium2'/>
+ <cpu name='pentium'/>
+ <cpu name='486'/>
+ <cpu name='coreduo'/>
+ <cpu name='kvm32'/>
+ <cpu name='qemu32'/>
+ <cpu name='kvm64'/>
+ <cpu name='core2duo'/>
+ <cpu name='phenom'/>
+ <cpu name='qemu64'/>
+ <machine name='pc-i440fx-2.7' alias='pc' maxCpus='255'/>
+ <machine name='pc-0.12' maxCpus='255'/>
+ <machine name='pc-i440fx-2.4' maxCpus='255'/>
+ <machine name='pc-1.3' maxCpus='255'/>
+ <machine name='pc-q35-2.7' alias='q35' maxCpus='255'/>
+ <machine name='pc-q35-2.6' maxCpus='255'/>
+ <machine name='pc-i440fx-1.7' maxCpus='255'/>
+ <machine name='pc-i440fx-1.6' maxCpus='255'/>
+ <machine name='pc-0.11' maxCpus='255'/>
+ <machine name='pc-i440fx-2.3' maxCpus='255'/>
+ <machine name='pc-0.10' maxCpus='255'/>
+ <machine name='pc-1.2' maxCpus='255'/>
+ <machine name='pc-i440fx-2.2' maxCpus='255'/>
+ <machine name='isapc' maxCpus='1'/>
+ <machine name='pc-q35-2.5' maxCpus='255'/>
+ <machine name='pc-0.15' maxCpus='255'/>
+ <machine name='pc-i440fx-1.5' maxCpus='255'/>
+ <machine name='pc-0.14' maxCpus='255'/>
+ <machine name='pc-i440fx-2.6' maxCpus='255'/>
+ <machine name='pc-i440fx-1.4' maxCpus='255'/>
+ <machine name='pc-i440fx-2.5' maxCpus='255'/>
+ <machine name='pc-1.1' maxCpus='255'/>
+ <machine name='pc-i440fx-2.1' maxCpus='255'/>
+ <machine name='pc-1.0' maxCpus='255'/>
+ <machine name='pc-i440fx-2.0' maxCpus='255'/>
+ <machine name='pc-q35-2.4' maxCpus='255'/>
+ <machine name='pc-0.13' maxCpus='255'/>
+</qemuCaps>
diff --git a/tests/qemucapabilitiestest.c b/tests/qemucapabilitiestest.c
index b98f775..d5ed65e 100644
--- a/tests/qemucapabilitiestest.c
+++ b/tests/qemucapabilitiestest.c
@@ -115,6 +115,7 @@ mymain(void)
DO_TEST("x86_64", "caps_2.4.0");
DO_TEST("x86_64", "caps_2.5.0");
DO_TEST("x86_64", "caps_2.6.0");
+ DO_TEST("x86_64", "caps_2.7.0");
DO_TEST("aarch64", "caps_2.6.0-gicv2");
DO_TEST("aarch64", "caps_2.6.0-gicv3");
DO_TEST("ppc64le", "caps_2.6.0");
--
2.9.2
8 years, 3 months
[libvirt] [PATCH 0/5] Enable secure boot
by Michal Privoznik
We have UEFI enabled guests for a while now. But only recently
qemu introduced secure boot. We should reflect that in our code
too.
Michal Privoznik (5):
qemuBuildMachineCommandLine: Follow our pattern
Introduce SMM feature
Introduce @secure attribute to os loader element
qemu: Enable secure boot
qemu: Advertise OVMF_CODE.secboot.fd
docs/formatdomain.html.in | 13 ++++-
docs/schemas/domaincommon.rng | 17 +++++++
src/conf/domain_conf.c | 19 ++++++-
src/conf/domain_conf.h | 2 +
src/qemu/qemu_capabilities.c | 16 ++++++
src/qemu/qemu_capabilities.h | 4 ++
src/qemu/qemu_command.c | 58 ++++++++++++++--------
src/qemu/qemu_conf.c | 13 +++--
src/qemu/qemu_domain.c | 27 ++++++++++
tests/qemucapabilitiesdata/caps_2.4.0.x86_64.xml | 1 +
tests/qemucapabilitiesdata/caps_2.5.0.x86_64.xml | 1 +
.../caps_2.6.0-gicv2.aarch64.xml | 1 +
.../caps_2.6.0-gicv3.aarch64.xml | 1 +
tests/qemucapabilitiesdata/caps_2.6.0.ppc64le.xml | 1 +
tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml | 1 +
.../qemuxml2argv-bios-nvram-secure.args | 29 +++++++++++
.../qemuxml2argv-bios-nvram-secure.xml | 41 +++++++++++++++
.../qemuxml2argv-machine-smm-opt.args | 25 ++++++++++
.../qemuxml2argv-machine-smm-opt.xml | 28 +++++++++++
tests/qemuxml2argvtest.c | 14 ++++++
20 files changed, 284 insertions(+), 28 deletions(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-bios-nvram-secure.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-bios-nvram-secure.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-machine-smm-opt.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-machine-smm-opt.xml
--
2.8.4
8 years, 3 months
[libvirt] [PATCH] qemu: fix capability counting
by Boris Fiuczynski
Signed-off-by: Boris Fiuczynski <fiuczy(a)linux.vnet.ibm.com>
---
src/qemu/qemu_capabilities.c | 4 ++--
src/qemu/qemu_capabilities.h | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index 002fbe3..73d8536 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -335,9 +335,9 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
"qxl-vga.max_outputs",
"spice-unix",
"drive-detect-zeroes",
+ "tls-creds-x509",
- "tls-creds-x509", /* 230 */
- "display",
+ "display", /* 230 */
"intel-iommu",
);
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
index 72e763a..2d0f910 100644
--- a/src/qemu/qemu_capabilities.h
+++ b/src/qemu/qemu_capabilities.h
@@ -367,9 +367,9 @@ typedef enum {
QEMU_CAPS_QXL_VGA_MAX_OUTPUTS, /* -device qxl-vga,max-outputs= */
QEMU_CAPS_SPICE_UNIX, /* -spice unix */
QEMU_CAPS_DRIVE_DETECT_ZEROES, /* -drive detect-zeroes= */
+ QEMU_CAPS_OBJECT_TLS_CREDS_X509, /* -object tls-creds-x509 */
/* 230 */
- QEMU_CAPS_OBJECT_TLS_CREDS_X509, /* -object tls-creds-x509 */
QEMU_CAPS_DISPLAY, /* -display */
QEMU_CAPS_DEVICE_INTEL_IOMMU, /* -device intel-iommu */
--
2.9.0
8 years, 3 months
[libvirt] [PATCH RFC 0/8] qemu: allow disabling certain virtio revisions
by Ján Tomko
For https://bugzilla.redhat.com/show_bug.cgi?id=1227354
some users might want to adjust the QEMU defaults and disable
either virtio 0.9 or virtio 1.0 (spelled out as disable-legacy
and disable-modern on qemu command line).
This series uses a separate <virtio revision="x"> element
right under the relevant device element for consistency,
even though it might fit better in different subelemets for
some of them.
Ján Tomko (8):
Fix indentation
Add virtio revision attribute to memballoon
Add virtio revision attribute to disks
Add virtio revision attribute to controllers
Add virtio revision attribute to filesystems
Add virtio revision attribute to intefaces
Add virtio revision to rng devices
qemu: format options for enforcing virtio revisions
docs/formatdomain.html.in | 51 ++++++++++
docs/schemas/domaincommon.rng | 29 ++++++
src/conf/domain_conf.c | 72 +++++++++++++-
src/conf/domain_conf.h | 14 +++
src/qemu/qemu_command.c | 31 ++++++
.../qemuxml2argv-virtio-revision.args | 58 +++++++++++
.../qemuxml2argv-virtio-revision.xml | 107 +++++++++++++++++++++
tests/qemuxml2argvtest.c | 10 ++
.../qemuxml2xmlout-virtio-revision.xml | 107 +++++++++++++++++++++
tests/qemuxml2xmltest.c | 2 +
10 files changed, 480 insertions(+), 1 deletion(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-virtio-revision.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-virtio-revision.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-virtio-revision.xml
--
2.7.3
8 years, 3 months
[libvirt] [PATCH] rpm: set TLS priority to @LIBVIRT, SYSTEM on Fedora >= 25
by Daniel P. Berrange
With newest gnutls available in Fedora 25/rawhide, it is
possible to have TLS priority fallbacks, so we can finally
use --tls-priority=@LIBVIRT,SYSTEM
Signed-off-by: Daniel P. Berrange <berrange(a)redhat.com>
---
libvirt.spec.in | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/libvirt.spec.in b/libvirt.spec.in
index d3986bb..a389e88 100644
--- a/libvirt.spec.in
+++ b/libvirt.spec.in
@@ -206,10 +206,14 @@
%define enable_werror --disable-werror
%endif
-%if 0%{?fedora} >= 21
- %define tls_priority "@SYSTEM"
+%if 0%{?fedora} >= 25
+ %define tls_priority "@LIBVIRT,SYSTEM"
%else
- %define tls_priority "NORMAL"
+ %if 0%{?fedora} >= 21
+ %define tls_priority "@SYSTEM"
+ %else
+ %define tls_priority "NORMAL"
+ %endif
%endif
--
2.7.4
8 years, 3 months
[libvirt] [PATCH v2 0/3] New vCPU hotplug prequel
by Peter Krempa
Few of the patches needed more significant changes.
Peter Krempa (3):
internal: Introduce macro for stealing pointers
qemu: monitor: Return structures from qemuMonitorGetCPUInfo
qemu: monitor: Return struct from qemuMonitor(Text|Json)QueryCPUs
src/internal.h | 12 +++++++
src/qemu/qemu_domain.c | 25 ++++++--------
src/qemu/qemu_monitor.c | 70 ++++++++++++++++++++++++++++++++++++----
src/qemu/qemu_monitor.h | 19 ++++++++++-
src/qemu/qemu_monitor_json.c | 77 +++++++++++++++++++++++---------------------
src/qemu/qemu_monitor_json.h | 3 +-
src/qemu/qemu_monitor_text.c | 39 +++++++++++-----------
src/qemu/qemu_monitor_text.h | 3 +-
tests/qemumonitorjsontest.c | 39 +++++++++++++++-------
9 files changed, 194 insertions(+), 93 deletions(-)
--
2.9.2
8 years, 3 months
[libvirt] [PATCH 0/6] Couple of small fixes
by Michal Privoznik
Some of these were found by coverity, some by me going through
code.
Michal Privoznik (6):
virqemu: Reflect return type of virJSONValueArraySize()
qemuMigrationCookieStatisticsXMLParse: Check for retvals of
virXPath*()
securityselinuxlabeltest: Prefer virGetLastErrorMessage() over
virGetLastError
virshConnect: Don't leak polkit agent
libxlDoMigrateReceive: Drop useless check for !vm
virObjectEventNew: Use virObjectUnref() to free virObjectEvent
src/conf/object_event.c | 10 ++---
src/libxl/libxl_migration.c | 2 +-
src/qemu/qemu_migration.c | 80 +++++++++++++++++++---------------------
src/util/virqemu.c | 2 +-
tests/securityselinuxlabeltest.c | 3 +-
tools/virsh.c | 2 +-
6 files changed, 45 insertions(+), 54 deletions(-)
--
2.8.4
8 years, 3 months
[libvirt] [PATCH libvirt-sanbox] image: ignore OSError on listdir()
by marcandre.lureau@redhat.com
From: Marc-André Lureau <marcandre.lureau(a)redhat.com>
If the directory to list is missing, don't raise an exception but
return empty list instead. This fixes for example running
"virt-sandbox-image list" without a
~/.local/share/libvirt/templates/virt-builder.
Signed-off-by: Marc-André Lureau <marcandre.lureau(a)redhat.com>
---
libvirt-sandbox/image/sources/docker.py | 18 +++++++++++++++---
libvirt-sandbox/image/sources/virtbuilder.py | 6 +++++-
2 files changed, 20 insertions(+), 4 deletions(-)
mode change 100644 => 100755 libvirt-sandbox/image/sources/docker.py
mode change 100644 => 100755 libvirt-sandbox/image/sources/virtbuilder.py
diff --git a/libvirt-sandbox/image/sources/docker.py b/libvirt-sandbox/image/sources/docker.py
old mode 100644
new mode 100755
index f6724af..43e9c32
--- a/libvirt-sandbox/image/sources/docker.py
+++ b/libvirt-sandbox/image/sources/docker.py
@@ -358,7 +358,11 @@ class DockerSource(base.Source):
def list_templates(self, templatedir):
indexes = []
- imagedirs = os.listdir(templatedir)
+ try:
+ imagedirs = os.listdir(templatedir)
+ except OSError:
+ return []
+
for imagetagid in imagedirs:
indexfile = templatedir + "/" + imagetagid + "/index.json"
if os.path.exists(indexfile):
@@ -552,7 +556,11 @@ class DockerSource(base.Source):
def _get_image_list(self, image, templatedir):
imageparent = {}
imagenames = {}
- imagedirs = os.listdir(templatedir)
+ imagedirs = []
+ try:
+ imagedirs = os.listdir(templatedir)
+ except OSError:
+ pass
for imagetagid in imagedirs:
indexfile = templatedir + "/" + imagetagid + "/index.json"
if os.path.exists(indexfile):
@@ -585,7 +593,11 @@ class DockerSource(base.Source):
imageusage = {}
imageparent = {}
imagenames = {}
- imagedirs = os.listdir(templatedir)
+ imagedirs = []
+ try:
+ imagedirs = os.listdir(templatedir)
+ except OSError:
+ pass
for imagetagid in imagedirs:
indexfile = templatedir + "/" + imagetagid + "/index.json"
if os.path.exists(indexfile):
diff --git a/libvirt-sandbox/image/sources/virtbuilder.py b/libvirt-sandbox/image/sources/virtbuilder.py
old mode 100644
new mode 100755
index fefe0dd..6bd9695
--- a/libvirt-sandbox/image/sources/virtbuilder.py
+++ b/libvirt-sandbox/image/sources/virtbuilder.py
@@ -68,7 +68,11 @@ class VirtBuilderSource(base.Source):
def list_templates(self, templatedir):
files = []
- imagefiles = os.listdir(templatedir)
+ try:
+ imagefiles = os.listdir(templatedir)
+ except OSError:
+ return []
+
for filename in imagefiles:
if not filename.endswith(".qcow2"):
continue
--
2.9.0
8 years, 3 months