mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-07 04:07:17 +00:00
blockjob: turn on qemu capability bit for active commit
Use the probing functionality added in the last patch to turn on a capability bit when active commit is present, and gate active commit on that capability. For my own reference: the difference between BLOCKJOB_SYNC and BLOCKJOB_ASYNC is whether qemu generated an event at the conclusion of blockpull; basically, RHEL 6.2 was the only release of qemu that has the sync semantics and lacks the event. RHEL 6.3 added blockcopy, but also picked up on the upstream style of qemu generating events. As no one is likely to backport active commit to RHEL 6.2, it's safe for blockcommit to always require async blockjob support. Modifying qemucapabilitiestest is painful; the .replies files would be so much easier if they had comments correlating which command generated the given reply. Maybe I'll fix that up later... * src/qemu/qemu_capabilities.h (QEMU_CAPS_ACTIVE_COMMIT): New capability. * src/qemu/qemu_driver.c (qemuDomainBlockCommit): Use the new bit * src/qemu/qemu_capabilities.c (virQEMUCaps): Name the new bit. (virQEMUCapsProbeQMPCommands): Set it. * tests/qemucapabilitiesdata/caps_1.3.1-1.replies: Update. * tests/qemucapabilitiesdata/caps_1.4.2-1.replies: Likewise. * tests/qemucapabilitiesdata/caps_1.5.3-1.replies: Likewise. * tests/qemucapabilitiesdata/caps_1.6.0-1.replies: Likewise. * tests/qemucapabilitiesdata/caps_1.6.50-1.replies: Likewise. Signed-off-by: Eric Blake <eblake@redhat.com>
This commit is contained in:
parent
47549d5a17
commit
40ad7160a2
@ -257,6 +257,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
|
||||
"usb-kbd", /* 165 */
|
||||
"host-pci-multidomain",
|
||||
"msg-timestamp",
|
||||
"active-commit",
|
||||
);
|
||||
|
||||
|
||||
@ -2181,6 +2182,12 @@ virQEMUCapsProbeQMPCommands(virQEMUCapsPtr qemuCaps,
|
||||
VIR_FORCE_CLOSE(fd);
|
||||
}
|
||||
|
||||
/* Probe for active commit of qemu 2.1 (for now, we are choosing
|
||||
* to ignore the fact that qemu 2.0 can also do active commit) */
|
||||
if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_BLOCK_COMMIT) &&
|
||||
qemuMonitorSupportsActiveCommit(mon))
|
||||
virQEMUCapsSet(qemuCaps, QEMU_CAPS_ACTIVE_COMMIT);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -207,6 +207,7 @@ typedef enum {
|
||||
QEMU_CAPS_DEVICE_USB_KBD = 165, /* -device usb-kbd */
|
||||
QEMU_CAPS_HOST_PCI_MULTIDOMAIN = 166, /* support domain > 0 in host pci address */
|
||||
QEMU_CAPS_MSG_TIMESTAMP = 167, /* -msg timestamp */
|
||||
QEMU_CAPS_ACTIVE_COMMIT = 168, /* block-commit works without 'top' */
|
||||
|
||||
QEMU_CAPS_LAST, /* this must always be the last item */
|
||||
} virQEMUCapsFlags;
|
||||
|
@ -15498,7 +15498,10 @@ qemuDomainBlockCommit(virDomainPtr dom,
|
||||
"%s", _("domain is not running"));
|
||||
goto endjob;
|
||||
}
|
||||
if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_BLOCK_COMMIT)) {
|
||||
/* Ensure that no one backports commit to RHEL 6.2, where cancel
|
||||
* behaved differently */
|
||||
if (!(virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_BLOCK_COMMIT) &&
|
||||
virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_BLOCKJOB_ASYNC))) {
|
||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
|
||||
_("online commit not supported with this QEMU binary"));
|
||||
goto endjob;
|
||||
@ -15530,10 +15533,7 @@ qemuDomainBlockCommit(virDomainPtr dom,
|
||||
* process; qemu 2.1 is further improving active commit. We need
|
||||
* to start supporting it in libvirt. */
|
||||
if (topSource == disk->src) {
|
||||
/* We assume that no one will backport qemu 2.0 active commit
|
||||
* to an earlier qemu without also backporting the block job
|
||||
* ready event; but this makes sure of that fact */
|
||||
if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_BLOCKJOB_ASYNC)) {
|
||||
if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_ACTIVE_COMMIT)) {
|
||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
|
||||
_("active commit not supported with this QEMU binary"));
|
||||
goto endjob;
|
||||
|
@ -307,6 +307,14 @@
|
||||
"id": "libvirt-5"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-6",
|
||||
"error": {
|
||||
"class": "GenericError",
|
||||
"desc": "Parameter 'top' is missing"
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
{
|
||||
@ -382,7 +390,7 @@
|
||||
"name": "SHUTDOWN"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-6"
|
||||
"id": "libvirt-7"
|
||||
}
|
||||
|
||||
{
|
||||
@ -871,7 +879,7 @@
|
||||
"name": "VGA"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-7"
|
||||
"id": "libvirt-8"
|
||||
}
|
||||
|
||||
{
|
||||
@ -973,7 +981,7 @@
|
||||
"type": "hex32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-8"
|
||||
"id": "libvirt-9"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1111,11 +1119,11 @@
|
||||
"type": "on/off"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-9"
|
||||
"id": "libvirt-10"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-10",
|
||||
"id": "libvirt-11",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-blk-ccw' not found"
|
||||
@ -1123,7 +1131,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-11",
|
||||
"id": "libvirt-12",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-net-ccw' not found"
|
||||
@ -1131,7 +1139,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-12",
|
||||
"id": "libvirt-13",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-blk-s390' not found"
|
||||
@ -1139,7 +1147,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-13",
|
||||
"id": "libvirt-14",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-net-s390' not found"
|
||||
@ -1147,7 +1155,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-14",
|
||||
"id": "libvirt-15",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'pci-assign' not found"
|
||||
@ -1197,7 +1205,7 @@
|
||||
"type": "pci-host-devaddr"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-15"
|
||||
"id": "libvirt-16"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1231,7 +1239,7 @@
|
||||
"type": "pci-host-devaddr"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-16"
|
||||
"id": "libvirt-17"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1305,7 +1313,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-17"
|
||||
"id": "libvirt-18"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1359,7 +1367,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-18"
|
||||
"id": "libvirt-19"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1401,11 +1409,11 @@
|
||||
"type": "uint32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-19"
|
||||
"id": "libvirt-20"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-20",
|
||||
"id": "libvirt-21",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'usb-redir' not found"
|
||||
@ -1455,7 +1463,7 @@
|
||||
"type": "uint32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-21"
|
||||
"id": "libvirt-22"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1481,13 +1489,13 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-22"
|
||||
"id": "libvirt-23"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-23"
|
||||
"id": "libvirt-24"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1497,7 +1505,7 @@
|
||||
"type": "uint64"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-24"
|
||||
"id": "libvirt-25"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1547,7 +1555,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-25"
|
||||
"id": "libvirt-26"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1561,7 +1569,7 @@
|
||||
"type": "hex32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-26"
|
||||
"id": "libvirt-27"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1615,7 +1623,7 @@
|
||||
"name": "none"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-26"
|
||||
"id": "libvirt-28"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1693,7 +1701,7 @@
|
||||
"name": "Opteron_G5"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-27"
|
||||
"id": "libvirt-29"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1701,11 +1709,11 @@
|
||||
"enabled": false,
|
||||
"present": true
|
||||
},
|
||||
"id": "libvirt-28"
|
||||
"id": "libvirt-30"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-29",
|
||||
"id": "libvirt-31",
|
||||
"error": {
|
||||
"class": "CommandNotFound",
|
||||
"desc": "The command query-tpm-models has not been found"
|
||||
@ -1713,7 +1721,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-30",
|
||||
"id": "libvirt-32",
|
||||
"error": {
|
||||
"class": "CommandNotFound",
|
||||
"desc": "The command query-tpm-types has not been found"
|
||||
@ -1721,7 +1729,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-31",
|
||||
"id": "libvirt-33",
|
||||
"error": {
|
||||
"class": "CommandNotFound",
|
||||
"desc": "The command query-command-line-options has not been found"
|
||||
|
@ -319,6 +319,14 @@
|
||||
"id": "libvirt-5"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-6",
|
||||
"error": {
|
||||
"class": "GenericError",
|
||||
"desc": "Parameter 'top' is missing"
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
{
|
||||
@ -394,7 +402,7 @@
|
||||
"name": "SHUTDOWN"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-6"
|
||||
"id": "libvirt-7"
|
||||
}
|
||||
|
||||
{
|
||||
@ -910,7 +918,7 @@
|
||||
"name": "VGA"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-7"
|
||||
"id": "libvirt-8"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1012,7 +1020,7 @@
|
||||
"type": "hex32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-8"
|
||||
"id": "libvirt-9"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1158,11 +1166,11 @@
|
||||
"type": "on/off"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-9"
|
||||
"id": "libvirt-10"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-10",
|
||||
"id": "libvirt-11",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-blk-ccw' not found"
|
||||
@ -1170,7 +1178,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-11",
|
||||
"id": "libvirt-12",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-net-ccw' not found"
|
||||
@ -1178,7 +1186,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-12",
|
||||
"id": "libvirt-13",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-blk-s390' not found"
|
||||
@ -1186,7 +1194,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-13",
|
||||
"id": "libvirt-14",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-net-s390' not found"
|
||||
@ -1194,7 +1202,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-14",
|
||||
"id": "libvirt-15",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'pci-assign' not found"
|
||||
@ -1244,7 +1252,7 @@
|
||||
"type": "pci-host-devaddr"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-15"
|
||||
"id": "libvirt-16"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1278,7 +1286,7 @@
|
||||
"type": "pci-host-devaddr"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-16"
|
||||
"id": "libvirt-17"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1352,7 +1360,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-17"
|
||||
"id": "libvirt-18"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1406,7 +1414,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-18"
|
||||
"id": "libvirt-19"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1448,11 +1456,11 @@
|
||||
"type": "uint32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-19"
|
||||
"id": "libvirt-20"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-20",
|
||||
"id": "libvirt-21",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'usb-redir' not found"
|
||||
@ -1502,7 +1510,7 @@
|
||||
"type": "uint32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-21"
|
||||
"id": "libvirt-22"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1528,13 +1536,13 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-22"
|
||||
"id": "libvirt-23"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-23"
|
||||
"id": "libvirt-24"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1544,7 +1552,7 @@
|
||||
"type": "uint64"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-24"
|
||||
"id": "libvirt-25"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1594,7 +1602,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-25"
|
||||
"id": "libvirt-26"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1608,7 +1616,7 @@
|
||||
"type": "hex32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-26"
|
||||
"id": "libvirt-27"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1665,7 +1673,7 @@
|
||||
"name": "none"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-26"
|
||||
"id": "libvirt-28"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1743,7 +1751,7 @@
|
||||
"name": "qemu64"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-27"
|
||||
"id": "libvirt-29"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1751,11 +1759,11 @@
|
||||
"enabled": false,
|
||||
"present": true
|
||||
},
|
||||
"id": "libvirt-28"
|
||||
"id": "libvirt-30"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-29",
|
||||
"id": "libvirt-31",
|
||||
"error": {
|
||||
"class": "CommandNotFound",
|
||||
"desc": "The command query-tpm-models has not been found"
|
||||
@ -1763,7 +1771,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-30",
|
||||
"id": "libvirt-32",
|
||||
"error": {
|
||||
"class": "CommandNotFound",
|
||||
"desc": "The command query-tpm-types has not been found"
|
||||
@ -1771,7 +1779,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-31",
|
||||
"id": "libvirt-33",
|
||||
"error": {
|
||||
"class": "CommandNotFound",
|
||||
"desc": "The command query-command-line-options has not been found"
|
||||
|
@ -334,6 +334,14 @@
|
||||
"id": "libvirt-5"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-6",
|
||||
"error": {
|
||||
"class": "GenericError",
|
||||
"desc": "Parameter 'top' is missing"
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
{
|
||||
@ -415,7 +423,7 @@
|
||||
"name": "SHUTDOWN"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-6"
|
||||
"id": "libvirt-7"
|
||||
}
|
||||
|
||||
{
|
||||
@ -976,7 +984,7 @@
|
||||
"name": "VGA"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-7"
|
||||
"id": "libvirt-8"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1078,7 +1086,7 @@
|
||||
"type": "hex32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-8"
|
||||
"id": "libvirt-9"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1224,11 +1232,11 @@
|
||||
"type": "on/off"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-9"
|
||||
"id": "libvirt-10"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-10",
|
||||
"id": "libvirt-11",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-blk-ccw' not found"
|
||||
@ -1236,7 +1244,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-11",
|
||||
"id": "libvirt-12",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-net-ccw' not found"
|
||||
@ -1244,7 +1252,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-12",
|
||||
"id": "libvirt-13",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-blk-s390' not found"
|
||||
@ -1252,7 +1260,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-13",
|
||||
"id": "libvirt-14",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-net-s390' not found"
|
||||
@ -1260,7 +1268,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-14",
|
||||
"id": "libvirt-15",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'pci-assign' not found"
|
||||
@ -1310,7 +1318,7 @@
|
||||
"type": "pci-host-devaddr"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-15"
|
||||
"id": "libvirt-16"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1352,7 +1360,7 @@
|
||||
"type": "pci-host-devaddr"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-16"
|
||||
"id": "libvirt-17"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1426,7 +1434,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-17"
|
||||
"id": "libvirt-18"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1480,7 +1488,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-18"
|
||||
"id": "libvirt-19"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1522,11 +1530,11 @@
|
||||
"type": "uint32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-19"
|
||||
"id": "libvirt-20"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-20",
|
||||
"id": "libvirt-21",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'usb-redir' not found"
|
||||
@ -1576,7 +1584,7 @@
|
||||
"type": "uint32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-21"
|
||||
"id": "libvirt-22"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1602,13 +1610,13 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-22"
|
||||
"id": "libvirt-23"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-23"
|
||||
"id": "libvirt-24"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1618,7 +1626,7 @@
|
||||
"type": "uint64"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-24"
|
||||
"id": "libvirt-25"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1668,7 +1676,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-25"
|
||||
"id": "libvirt-26"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1682,7 +1690,7 @@
|
||||
"type": "hex32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-26"
|
||||
"id": "libvirt-27"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1755,7 +1763,7 @@
|
||||
"cpu-max": 1
|
||||
}
|
||||
],
|
||||
"id": "libvirt-26"
|
||||
"id": "libvirt-28"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1833,7 +1841,7 @@
|
||||
"name": "qemu64"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-27"
|
||||
"id": "libvirt-29"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1841,21 +1849,21 @@
|
||||
"enabled": false,
|
||||
"present": true
|
||||
},
|
||||
"id": "libvirt-28"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-29"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-30"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-31"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-32"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
{
|
||||
@ -2529,5 +2537,5 @@
|
||||
"option": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-31"
|
||||
"id": "libvirt-33"
|
||||
}
|
||||
|
@ -340,6 +340,14 @@
|
||||
"id": "libvirt-5"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-6",
|
||||
"error": {
|
||||
"class": "GenericError",
|
||||
"desc": "Parameter 'top' is missing"
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
{
|
||||
@ -424,7 +432,7 @@
|
||||
"name": "SHUTDOWN"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-6"
|
||||
"id": "libvirt-7"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1018,7 +1026,7 @@
|
||||
"name": "VGA"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-7"
|
||||
"id": "libvirt-8"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1120,7 +1128,7 @@
|
||||
"type": "hex32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-8"
|
||||
"id": "libvirt-9"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1274,11 +1282,11 @@
|
||||
"type": "on/off"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-9"
|
||||
"id": "libvirt-10"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-10",
|
||||
"id": "libvirt-11",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-blk-ccw' not found"
|
||||
@ -1286,7 +1294,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-11",
|
||||
"id": "libvirt-12",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-net-ccw' not found"
|
||||
@ -1294,7 +1302,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-12",
|
||||
"id": "libvirt-13",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-blk-s390' not found"
|
||||
@ -1302,7 +1310,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-13",
|
||||
"id": "libvirt-14",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-net-s390' not found"
|
||||
@ -1310,7 +1318,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-14",
|
||||
"id": "libvirt-15",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'pci-assign' not found"
|
||||
@ -1360,7 +1368,7 @@
|
||||
"type": "pci-host-devaddr"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-15"
|
||||
"id": "libvirt-16"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1402,7 +1410,7 @@
|
||||
"type": "pci-host-devaddr"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-16"
|
||||
"id": "libvirt-17"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1476,7 +1484,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-17"
|
||||
"id": "libvirt-18"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1530,7 +1538,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-18"
|
||||
"id": "libvirt-19"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1572,11 +1580,11 @@
|
||||
"type": "uint32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-19"
|
||||
"id": "libvirt-20"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-20",
|
||||
"id": "libvirt-21",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'usb-redir' not found"
|
||||
@ -1630,7 +1638,7 @@
|
||||
"type": "uint32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-21"
|
||||
"id": "libvirt-22"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1656,7 +1664,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-22"
|
||||
"id": "libvirt-23"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1666,7 +1674,7 @@
|
||||
"type": "size"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-23"
|
||||
"id": "libvirt-24"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1680,7 +1688,7 @@
|
||||
"type": "uint64"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-24"
|
||||
"id": "libvirt-25"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1730,7 +1738,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-25"
|
||||
"id": "libvirt-26"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1744,7 +1752,7 @@
|
||||
"type": "hex32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-26"
|
||||
"id": "libvirt-27"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1833,7 +1841,7 @@
|
||||
"cpu-max": 1
|
||||
}
|
||||
],
|
||||
"id": "libvirt-26"
|
||||
"id": "libvirt-28"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1911,7 +1919,7 @@
|
||||
"name": "qemu64"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-27"
|
||||
"id": "libvirt-29"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1919,21 +1927,21 @@
|
||||
"enabled": false,
|
||||
"present": true
|
||||
},
|
||||
"id": "libvirt-28"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-29"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-30"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-31"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-32"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
{
|
||||
@ -2509,5 +2517,5 @@
|
||||
"option": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-31"
|
||||
"id": "libvirt-33"
|
||||
}
|
||||
|
@ -346,6 +346,14 @@
|
||||
"id": "libvirt-5"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-6",
|
||||
"error": {
|
||||
"class": "GenericError",
|
||||
"desc": "Parameter 'top' is missing"
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
{
|
||||
@ -433,7 +441,7 @@
|
||||
"name": "SHUTDOWN"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-6"
|
||||
"id": "libvirt-7"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1024,7 +1032,7 @@
|
||||
"name": "VGA"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-7"
|
||||
"id": "libvirt-8"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1126,7 +1134,7 @@
|
||||
"type": "hex32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-8"
|
||||
"id": "libvirt-9"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1280,11 +1288,11 @@
|
||||
"type": "on/off"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-9"
|
||||
"id": "libvirt-10"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-10",
|
||||
"id": "libvirt-11",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-blk-ccw' not found"
|
||||
@ -1292,7 +1300,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-11",
|
||||
"id": "libvirt-12",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-net-ccw' not found"
|
||||
@ -1300,7 +1308,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-12",
|
||||
"id": "libvirt-13",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-blk-s390' not found"
|
||||
@ -1308,7 +1316,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-13",
|
||||
"id": "libvirt-14",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'virtio-net-s390' not found"
|
||||
@ -1316,7 +1324,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-14",
|
||||
"id": "libvirt-15",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'pci-assign' not found"
|
||||
@ -1366,7 +1374,7 @@
|
||||
"type": "pci-host-devaddr"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-15"
|
||||
"id": "libvirt-16"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1408,7 +1416,7 @@
|
||||
"type": "pci-host-devaddr"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-16"
|
||||
"id": "libvirt-17"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1482,7 +1490,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-17"
|
||||
"id": "libvirt-18"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1536,7 +1544,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-18"
|
||||
"id": "libvirt-19"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1578,11 +1586,11 @@
|
||||
"type": "uint32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-19"
|
||||
"id": "libvirt-20"
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-20",
|
||||
"id": "libvirt-21",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'usb-redir' not found"
|
||||
@ -1590,7 +1598,7 @@
|
||||
}
|
||||
|
||||
{
|
||||
"id": "libvirt-21",
|
||||
"id": "libvirt-22",
|
||||
"error": {
|
||||
"class": "DeviceNotFound",
|
||||
"desc": "Device 'usb-host' not found"
|
||||
@ -1620,7 +1628,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-22"
|
||||
"id": "libvirt-23"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1630,7 +1638,7 @@
|
||||
"type": "size"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-23"
|
||||
"id": "libvirt-24"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1644,7 +1652,7 @@
|
||||
"type": "uint64"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-24"
|
||||
"id": "libvirt-25"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1694,7 +1702,7 @@
|
||||
"type": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-25"
|
||||
"id": "libvirt-26"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1708,7 +1716,7 @@
|
||||
"type": "hex32"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-26"
|
||||
"id": "libvirt-27"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1805,7 +1813,7 @@
|
||||
"cpu-max": 1
|
||||
}
|
||||
],
|
||||
"id": "libvirt-26"
|
||||
"id": "libvirt-28"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1883,7 +1891,7 @@
|
||||
"name": "qemu64"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-27"
|
||||
"id": "libvirt-29"
|
||||
}
|
||||
|
||||
{
|
||||
@ -1891,21 +1899,21 @@
|
||||
"enabled": false,
|
||||
"present": true
|
||||
},
|
||||
"id": "libvirt-28"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-29"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-30"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-31"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
],
|
||||
"id": "libvirt-32"
|
||||
}
|
||||
|
||||
{
|
||||
"return": [
|
||||
{
|
||||
@ -2486,5 +2494,5 @@
|
||||
"option": "drive"
|
||||
}
|
||||
],
|
||||
"id": "libvirt-31"
|
||||
"id": "libvirt-33"
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user