Add capability QEMU_CAPS_VIRTIO_CCW_DEVICE_LOADPARM to detect multi boot
device support in QEMU by checking the virtio-blk-ccw device property
existence of loadparm.
Signed-off-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
---
src/qemu/qemu_capabilities.c | 8 +
src/qemu/qemu_capabilities.h | 1 +
.../caps_5.2.0_s390x.replies | 321 ++++++++++++++++--
.../caps_6.0.0_s390x.replies | 321 ++++++++++++++++--
.../caps_8.1.0_s390x.replies | 321 ++++++++++++++++--
.../caps_8.2.0_s390x.replies | 321 ++++++++++++++++--
.../caps_9.1.0_s390x.replies | 321 ++++++++++++++++--
7 files changed, 1514 insertions(+), 100 deletions(-)
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index 38fdade255..6b67da30ec 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -719,6 +719,7 @@ VIR_ENUM_IMPL(virQEMUCaps,
/* 465 */
"snapshot-internal-qmp", /* QEMU_CAPS_SNAPSHOT_INTERNAL_QMP */
"chardev-reconnect-miliseconds", /* QEMU_CAPS_CHARDEV_RECONNECT_MILISECONDS */
+ "virtio-ccw.loadparm", /* QEMU_CAPS_VIRTIO_CCW_DEVICE_LOADPARM */
);
@@ -1547,6 +1548,10 @@ static struct virQEMUCapsDevicePropsFlags virQEMUCapsDevicePropsVirtioIOMMU[] =
{ "boot-bypass", QEMU_CAPS_VIRTIO_IOMMU_BOOT_BYPASS, NULL },
};
+static struct virQEMUCapsDevicePropsFlags virQEMUCapsDevicePropsVirtioBlkCCW[] = {
+ { "loadparm", QEMU_CAPS_VIRTIO_CCW_DEVICE_LOADPARM, NULL },
+};
+
/* see documentation for virQEMUQAPISchemaPathGet for the query format */
static struct virQEMUCapsStringFlags virQEMUCapsQMPSchemaQueries[] = {
{ "blockdev-add/arg-type/+file/drop-cache", QEMU_CAPS_MIGRATION_FILE_DROP_CACHE },
@@ -1704,6 +1709,9 @@ static virQEMUCapsDeviceTypeProps virQEMUCapsDeviceProps[] = {
{ "virtio-iommu-pci", virQEMUCapsDevicePropsVirtioIOMMU,
G_N_ELEMENTS(virQEMUCapsDevicePropsVirtioIOMMU),
QEMU_CAPS_DEVICE_VIRTIO_IOMMU_PCI },
+ { "virtio-blk-ccw", virQEMUCapsDevicePropsVirtioBlkCCW,
+ G_N_ELEMENTS(virQEMUCapsDevicePropsVirtioBlkCCW),
+ QEMU_CAPS_VIRTIO_CCW },
};
static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsMemoryBackendFile[] = {
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
index 261abcc1b4..e49fda6721 100644
--- a/src/qemu/qemu_capabilities.h
+++ b/src/qemu/qemu_capabilities.h
@@ -698,6 +698,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
/* 465 */
QEMU_CAPS_SNAPSHOT_INTERNAL_QMP, /* internal snapshot support via QMP commands 'snapshot-save'/'snapshot-delete' */
QEMU_CAPS_CHARDEV_RECONNECT_MILISECONDS, /* 'reconnect-ms' option for chardevs supported */
+ QEMU_CAPS_VIRTIO_CCW_DEVICE_LOADPARM, /* loadparm available on CCW device for multi device boot */
QEMU_CAPS_LAST /* this must always be the last item */
} virQEMUCapsFlags;
diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_s390x.replies b/tests/qemucapabilitiesdata/caps_5.2.0_s390x.replies
index 3dfd0b502d..4ee6725d90 100644
--- a/tests/qemucapabilitiesdata/caps_5.2.0_s390x.replies
+++ b/tests/qemucapabilitiesdata/caps_5.2.0_s390x.replies
@@ -18830,12 +18830,293 @@
"id": "libvirt-28"
}
+{
+ "execute": "device-list-properties",
+ "arguments": {
+ "typename": "virtio-blk-ccw"
+ },
+ "id": "libvirt-29"
+}
+
+{
+ "return": [
+ {
+ "name": "dev_id",
+ "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "name": "devno",
+ "description": "Identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "name": "subch_id",
+ "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "default-value": 2,
+ "name": "max_revision",
+ "type": "uint32"
+ },
+ {
+ "default-value": true,
+ "name": "ioeventfd",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "notify_on_empty",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "share-rw",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "lcyls",
+ "type": "uint32"
+ },
+ {
+ "default-value": 256,
+ "name": "queue-size",
+ "type": "uint16"
+ },
+ {
+ "default-value": 0,
+ "name": "lsecs",
+ "type": "uint32"
+ },
+ {
+ "default-value": 0,
+ "name": "heads",
+ "type": "uint32"
+ },
+ {
+ "default-value": "auto",
+ "name": "account-invalid",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "iothread",
+ "type": "link<iothread>"
+ },
+ {
+ "default-value": 0,
+ "name": "lheads",
+ "type": "uint32"
+ },
+ {
+ "default-value": 65535,
+ "name": "num-queues",
+ "type": "uint16"
+ },
+ {
+ "default-value": 0,
+ "name": "cyls",
+ "type": "uint32"
+ },
+ {
+ "default-value": 0,
+ "name": "secs",
+ "type": "uint32"
+ },
+ {
+ "name": "virtio-backend",
+ "type": "child<virtio-blk-device>"
+ },
+ {
+ "default-value": 0,
+ "name": "min_io_size",
+ "type": "size"
+ },
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "default-value": true,
+ "name": "config-wce",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "seg-max-adjust",
+ "type": "bool"
+ },
+ {
+ "name": "drive",
+ "description": "Node name or ID of a block device to use as a backend",
+ "type": "str"
+ },
+ {
+ "default-value": "auto",
+ "name": "werror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "default-value": true,
+ "name": "report-discard-granularity",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "rerror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "default-value": "auto",
+ "name": "write-cache",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "default-value": true,
+ "name": "use-disabled-flag",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "x-disable-legacy-check",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "use-started",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "iommu_platform",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "physical_block_size",
+ "description": "A power of two between 512 B and 2 MiB",
+ "type": "size"
+ },
+ {
+ "default-value": false,
+ "name": "scsi",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "any_layout",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "opt_io_size",
+ "type": "size"
+ },
+ {
+ "default-value": 0,
+ "name": "logical_block_size",
+ "description": "A power of two between 512 B and 2 MiB",
+ "type": "size"
+ },
+ {
+ "default-value": 4194303,
+ "name": "max-discard-sectors",
+ "type": "uint32"
+ },
+ {
+ "default-value": true,
+ "name": "discard",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 4294967295,
+ "name": "discard_granularity",
+ "type": "size"
+ },
+ {
+ "default-value": true,
+ "name": "request-merging",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "queue_reset",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "write-zeroes",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 4194303,
+ "name": "max-write-zeroes-sectors",
+ "type": "uint32"
+ },
+ {
+ "default-value": false,
+ "name": "packed",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "account-failed",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "default-value": true,
+ "name": "indirect_desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "event_idx",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "x-enable-wce-if-config-wce",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "backend_defaults",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "serial",
+ "type": "str"
+ }
+ ],
+ "id": "libvirt-29"
+}
+
{
"execute": "qom-list-properties",
"arguments": {
"typename": "memory-backend-file"
},
- "id": "libvirt-29"
+ "id": "libvirt-30"
}
{
@@ -18905,7 +19186,7 @@
"type": "bool"
}
],
- "id": "libvirt-29"
+ "id": "libvirt-30"
}
{
@@ -18913,7 +19194,7 @@
"arguments": {
"typename": "memory-backend-memfd"
},
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
@@ -18982,12 +19263,12 @@
"type": "int"
}
],
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
"execute": "query-machines",
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
@@ -19156,7 +19437,7 @@
"default-ram-id": "s390.ram"
}
],
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
@@ -19164,7 +19445,7 @@
"arguments": {
"typename": "none-machine"
},
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
@@ -19249,12 +19530,12 @@
"type": "string"
}
],
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
"execute": "query-cpu-definitions",
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
@@ -19860,32 +20141,32 @@
"deprecated": false
}
],
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"return": [],
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"return": [],
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
@@ -21032,12 +21313,12 @@
"option": "drive"
}
],
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -21115,7 +21396,7 @@
"capability": "validate-uuid"
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -21126,7 +21407,7 @@
"name": "host"
}
},
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -21182,7 +21463,7 @@
}
}
},
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
diff --git a/tests/qemucapabilitiesdata/caps_6.0.0_s390x.replies b/tests/qemucapabilitiesdata/caps_6.0.0_s390x.replies
index 6fcc0a484b..cc42499fa1 100644
--- a/tests/qemucapabilitiesdata/caps_6.0.0_s390x.replies
+++ b/tests/qemucapabilitiesdata/caps_6.0.0_s390x.replies
@@ -20471,12 +20471,293 @@
"id": "libvirt-28"
}
+{
+ "execute": "device-list-properties",
+ "arguments": {
+ "typename": "virtio-blk-ccw"
+ },
+ "id": "libvirt-29"
+}
+
+{
+ "return": [
+ {
+ "name": "dev_id",
+ "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "name": "devno",
+ "description": "Identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "name": "subch_id",
+ "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "default-value": 2,
+ "name": "max_revision",
+ "type": "uint32"
+ },
+ {
+ "default-value": true,
+ "name": "ioeventfd",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "notify_on_empty",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "share-rw",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "lcyls",
+ "type": "uint32"
+ },
+ {
+ "default-value": 256,
+ "name": "queue-size",
+ "type": "uint16"
+ },
+ {
+ "default-value": 0,
+ "name": "lsecs",
+ "type": "uint32"
+ },
+ {
+ "default-value": 0,
+ "name": "heads",
+ "type": "uint32"
+ },
+ {
+ "default-value": "auto",
+ "name": "account-invalid",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "iothread",
+ "type": "link<iothread>"
+ },
+ {
+ "default-value": 0,
+ "name": "lheads",
+ "type": "uint32"
+ },
+ {
+ "default-value": 65535,
+ "name": "num-queues",
+ "type": "uint16"
+ },
+ {
+ "default-value": 0,
+ "name": "cyls",
+ "type": "uint32"
+ },
+ {
+ "default-value": 0,
+ "name": "secs",
+ "type": "uint32"
+ },
+ {
+ "name": "virtio-backend",
+ "type": "child<virtio-blk-device>"
+ },
+ {
+ "default-value": 0,
+ "name": "min_io_size",
+ "type": "size"
+ },
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "default-value": true,
+ "name": "config-wce",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "seg-max-adjust",
+ "type": "bool"
+ },
+ {
+ "name": "drive",
+ "description": "Node name or ID of a block device to use as a backend",
+ "type": "str"
+ },
+ {
+ "default-value": "auto",
+ "name": "werror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "default-value": true,
+ "name": "report-discard-granularity",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "rerror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "default-value": "auto",
+ "name": "write-cache",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "default-value": true,
+ "name": "use-disabled-flag",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "x-disable-legacy-check",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "use-started",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "iommu_platform",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "physical_block_size",
+ "description": "A power of two between 512 B and 2 MiB",
+ "type": "size"
+ },
+ {
+ "default-value": false,
+ "name": "scsi",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "any_layout",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "opt_io_size",
+ "type": "size"
+ },
+ {
+ "default-value": 0,
+ "name": "logical_block_size",
+ "description": "A power of two between 512 B and 2 MiB",
+ "type": "size"
+ },
+ {
+ "default-value": 4194303,
+ "name": "max-discard-sectors",
+ "type": "uint32"
+ },
+ {
+ "default-value": true,
+ "name": "discard",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 4294967295,
+ "name": "discard_granularity",
+ "type": "size"
+ },
+ {
+ "default-value": true,
+ "name": "request-merging",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "queue_reset",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "write-zeroes",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 4194303,
+ "name": "max-write-zeroes-sectors",
+ "type": "uint32"
+ },
+ {
+ "default-value": false,
+ "name": "packed",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "account-failed",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "default-value": true,
+ "name": "indirect_desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "event_idx",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "x-enable-wce-if-config-wce",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "backend_defaults",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "serial",
+ "type": "str"
+ }
+ ],
+ "id": "libvirt-29"
+}
+
{
"execute": "qom-list-properties",
"arguments": {
"typename": "memory-backend-file"
},
- "id": "libvirt-29"
+ "id": "libvirt-30"
}
{
@@ -20546,7 +20827,7 @@
"type": "bool"
}
],
- "id": "libvirt-29"
+ "id": "libvirt-30"
}
{
@@ -20554,7 +20835,7 @@
"arguments": {
"typename": "memory-backend-memfd"
},
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
@@ -20623,12 +20904,12 @@
"type": "int"
}
],
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
"execute": "query-machines",
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
@@ -20806,7 +21087,7 @@
"default-ram-id": "s390.ram"
}
],
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
@@ -20814,7 +21095,7 @@
"arguments": {
"typename": "none-machine"
},
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
@@ -20912,12 +21193,12 @@
"type": "child<container>"
}
],
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
"execute": "query-cpu-definitions",
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
@@ -21523,32 +21804,32 @@
"deprecated": false
}
],
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"return": [],
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"return": [],
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
@@ -22715,12 +22996,12 @@
"option": "drive"
}
],
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -22802,7 +23083,7 @@
"capability": "background-snapshot"
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -22813,7 +23094,7 @@
"name": "host"
}
},
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -22870,7 +23151,7 @@
}
}
},
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
diff --git a/tests/qemucapabilitiesdata/caps_8.1.0_s390x.replies b/tests/qemucapabilitiesdata/caps_8.1.0_s390x.replies
index 77014169cb..032c102d4b 100644
--- a/tests/qemucapabilitiesdata/caps_8.1.0_s390x.replies
+++ b/tests/qemucapabilitiesdata/caps_8.1.0_s390x.replies
@@ -27524,12 +27524,293 @@
"id": "libvirt-28"
}
+{
+ "execute": "device-list-properties",
+ "arguments": {
+ "typename": "virtio-blk-ccw"
+ },
+ "id": "libvirt-29"
+}
+
+{
+ "return": [
+ {
+ "name": "dev_id",
+ "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "name": "devno",
+ "description": "Identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "name": "subch_id",
+ "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "default-value": 2,
+ "name": "max_revision",
+ "type": "uint32"
+ },
+ {
+ "default-value": true,
+ "name": "ioeventfd",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "notify_on_empty",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "share-rw",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "lcyls",
+ "type": "uint32"
+ },
+ {
+ "default-value": 256,
+ "name": "queue-size",
+ "type": "uint16"
+ },
+ {
+ "default-value": 0,
+ "name": "lsecs",
+ "type": "uint32"
+ },
+ {
+ "default-value": 0,
+ "name": "heads",
+ "type": "uint32"
+ },
+ {
+ "default-value": "auto",
+ "name": "account-invalid",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "iothread",
+ "type": "link<iothread>"
+ },
+ {
+ "default-value": 0,
+ "name": "lheads",
+ "type": "uint32"
+ },
+ {
+ "default-value": 65535,
+ "name": "num-queues",
+ "type": "uint16"
+ },
+ {
+ "default-value": 0,
+ "name": "cyls",
+ "type": "uint32"
+ },
+ {
+ "default-value": 0,
+ "name": "secs",
+ "type": "uint32"
+ },
+ {
+ "name": "virtio-backend",
+ "type": "child<virtio-blk-device>"
+ },
+ {
+ "default-value": 0,
+ "name": "min_io_size",
+ "type": "size"
+ },
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "default-value": true,
+ "name": "config-wce",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "seg-max-adjust",
+ "type": "bool"
+ },
+ {
+ "name": "drive",
+ "description": "Node name or ID of a block device to use as a backend",
+ "type": "str"
+ },
+ {
+ "default-value": "auto",
+ "name": "werror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "default-value": true,
+ "name": "report-discard-granularity",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "rerror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "default-value": "auto",
+ "name": "write-cache",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "default-value": true,
+ "name": "use-disabled-flag",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "x-disable-legacy-check",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "use-started",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "iommu_platform",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "physical_block_size",
+ "description": "A power of two between 512 B and 2 MiB",
+ "type": "size"
+ },
+ {
+ "default-value": false,
+ "name": "scsi",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "any_layout",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "opt_io_size",
+ "type": "size"
+ },
+ {
+ "default-value": 0,
+ "name": "logical_block_size",
+ "description": "A power of two between 512 B and 2 MiB",
+ "type": "size"
+ },
+ {
+ "default-value": 4194303,
+ "name": "max-discard-sectors",
+ "type": "uint32"
+ },
+ {
+ "default-value": true,
+ "name": "discard",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 4294967295,
+ "name": "discard_granularity",
+ "type": "size"
+ },
+ {
+ "default-value": true,
+ "name": "request-merging",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "queue_reset",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "write-zeroes",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 4194303,
+ "name": "max-write-zeroes-sectors",
+ "type": "uint32"
+ },
+ {
+ "default-value": false,
+ "name": "packed",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "account-failed",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "default-value": true,
+ "name": "indirect_desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "event_idx",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "x-enable-wce-if-config-wce",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "backend_defaults",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "serial",
+ "type": "str"
+ }
+ ],
+ "id": "libvirt-29"
+}
+
{
"execute": "qom-list-properties",
"arguments": {
"typename": "memory-backend-file"
},
- "id": "libvirt-29"
+ "id": "libvirt-30"
}
{
@@ -27614,7 +27895,7 @@
"type": "bool"
}
],
- "id": "libvirt-29"
+ "id": "libvirt-30"
}
{
@@ -27622,7 +27903,7 @@
"arguments": {
"typename": "memory-backend-memfd"
},
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
@@ -27701,12 +27982,12 @@
"type": "int"
}
],
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
"execute": "query-machines",
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
@@ -27981,7 +28262,7 @@
"default-ram-id": "s390.ram"
}
],
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
@@ -27989,7 +28270,7 @@
"arguments": {
"typename": "none-machine"
},
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
@@ -28102,12 +28383,12 @@
"type": "child<container>"
}
],
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
"execute": "query-cpu-definitions",
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
@@ -28871,32 +29152,32 @@
"deprecated": false
}
],
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"return": [],
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"return": [],
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
@@ -30119,12 +30400,12 @@
"option": "drive"
}
],
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -30222,7 +30503,7 @@
"capability": "dirty-limit"
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -30233,7 +30514,7 @@
"name": "host"
}
},
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -30282,7 +30563,7 @@
}
}
},
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_s390x.replies b/tests/qemucapabilitiesdata/caps_8.2.0_s390x.replies
index fa9051c305..222a9fdfdc 100644
--- a/tests/qemucapabilitiesdata/caps_8.2.0_s390x.replies
+++ b/tests/qemucapabilitiesdata/caps_8.2.0_s390x.replies
@@ -28217,12 +28217,293 @@
"id": "libvirt-28"
}
+{
+ "execute": "device-list-properties",
+ "arguments": {
+ "typename": "virtio-blk-ccw"
+ },
+ "id": "libvirt-29"
+}
+
+{
+ "return": [
+ {
+ "name": "dev_id",
+ "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "name": "devno",
+ "description": "Identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "name": "subch_id",
+ "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "default-value": 2,
+ "name": "max_revision",
+ "type": "uint32"
+ },
+ {
+ "default-value": true,
+ "name": "ioeventfd",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "notify_on_empty",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "share-rw",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "lcyls",
+ "type": "uint32"
+ },
+ {
+ "default-value": 256,
+ "name": "queue-size",
+ "type": "uint16"
+ },
+ {
+ "default-value": 0,
+ "name": "lsecs",
+ "type": "uint32"
+ },
+ {
+ "default-value": 0,
+ "name": "heads",
+ "type": "uint32"
+ },
+ {
+ "default-value": "auto",
+ "name": "account-invalid",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "iothread",
+ "type": "link<iothread>"
+ },
+ {
+ "default-value": 0,
+ "name": "lheads",
+ "type": "uint32"
+ },
+ {
+ "default-value": 65535,
+ "name": "num-queues",
+ "type": "uint16"
+ },
+ {
+ "default-value": 0,
+ "name": "cyls",
+ "type": "uint32"
+ },
+ {
+ "default-value": 0,
+ "name": "secs",
+ "type": "uint32"
+ },
+ {
+ "name": "virtio-backend",
+ "type": "child<virtio-blk-device>"
+ },
+ {
+ "default-value": 0,
+ "name": "min_io_size",
+ "type": "size"
+ },
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "default-value": true,
+ "name": "config-wce",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "seg-max-adjust",
+ "type": "bool"
+ },
+ {
+ "name": "drive",
+ "description": "Node name or ID of a block device to use as a backend",
+ "type": "str"
+ },
+ {
+ "default-value": "auto",
+ "name": "werror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "default-value": true,
+ "name": "report-discard-granularity",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "rerror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "default-value": "auto",
+ "name": "write-cache",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "default-value": true,
+ "name": "use-disabled-flag",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "x-disable-legacy-check",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "use-started",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "iommu_platform",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "physical_block_size",
+ "description": "A power of two between 512 B and 2 MiB",
+ "type": "size"
+ },
+ {
+ "default-value": false,
+ "name": "scsi",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "any_layout",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "opt_io_size",
+ "type": "size"
+ },
+ {
+ "default-value": 0,
+ "name": "logical_block_size",
+ "description": "A power of two between 512 B and 2 MiB",
+ "type": "size"
+ },
+ {
+ "default-value": 4194303,
+ "name": "max-discard-sectors",
+ "type": "uint32"
+ },
+ {
+ "default-value": true,
+ "name": "discard",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 4294967295,
+ "name": "discard_granularity",
+ "type": "size"
+ },
+ {
+ "default-value": true,
+ "name": "request-merging",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "queue_reset",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "write-zeroes",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 4194303,
+ "name": "max-write-zeroes-sectors",
+ "type": "uint32"
+ },
+ {
+ "default-value": false,
+ "name": "packed",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "account-failed",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "default-value": true,
+ "name": "indirect_desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "event_idx",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "x-enable-wce-if-config-wce",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "backend_defaults",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "serial",
+ "type": "str"
+ }
+ ],
+ "id": "libvirt-29"
+}
+
{
"execute": "qom-list-properties",
"arguments": {
"typename": "memory-backend-file"
},
- "id": "libvirt-29"
+ "id": "libvirt-30"
}
{
@@ -28312,7 +28593,7 @@
"type": "bool"
}
],
- "id": "libvirt-29"
+ "id": "libvirt-30"
}
{
@@ -28320,7 +28601,7 @@
"arguments": {
"typename": "memory-backend-memfd"
},
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
@@ -28399,12 +28680,12 @@
"type": "int"
}
],
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
"execute": "query-machines",
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
@@ -28689,7 +28970,7 @@
"default-ram-id": "s390.ram"
}
],
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
@@ -28697,7 +28978,7 @@
"arguments": {
"typename": "none-machine"
},
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
@@ -28810,12 +29091,12 @@
"type": "child<container>"
}
],
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
"execute": "query-cpu-definitions",
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
@@ -29579,32 +29860,32 @@
"deprecated": false
}
],
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"return": [],
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"return": [],
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
@@ -30835,12 +31116,12 @@
"option": "drive"
}
],
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -30938,7 +31219,7 @@
"capability": "dirty-limit"
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -30949,7 +31230,7 @@
"name": "host"
}
},
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -30998,7 +31279,7 @@
}
}
},
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies b/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies
index 4e54acb5b1..2d4ab8ed75 100644
--- a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies
+++ b/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies
@@ -29266,12 +29266,293 @@
"id": "libvirt-29"
}
+{
+ "execute": "device-list-properties",
+ "arguments": {
+ "typename": "virtio-blk-ccw"
+ },
+ "id": "libvirt-30"
+}
+
+{
+ "return": [
+ {
+ "name": "dev_id",
+ "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "name": "devno",
+ "description": "Identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "name": "subch_id",
+ "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
+ "type": "str"
+ },
+ {
+ "default-value": 2,
+ "name": "max_revision",
+ "type": "uint32"
+ },
+ {
+ "default-value": true,
+ "name": "ioeventfd",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "notify_on_empty",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "share-rw",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "lcyls",
+ "type": "uint32"
+ },
+ {
+ "default-value": 256,
+ "name": "queue-size",
+ "type": "uint16"
+ },
+ {
+ "default-value": 0,
+ "name": "lsecs",
+ "type": "uint32"
+ },
+ {
+ "default-value": 0,
+ "name": "heads",
+ "type": "uint32"
+ },
+ {
+ "default-value": "auto",
+ "name": "account-invalid",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "iothread",
+ "type": "link<iothread>"
+ },
+ {
+ "default-value": 0,
+ "name": "lheads",
+ "type": "uint32"
+ },
+ {
+ "default-value": 65535,
+ "name": "num-queues",
+ "type": "uint16"
+ },
+ {
+ "default-value": 0,
+ "name": "cyls",
+ "type": "uint32"
+ },
+ {
+ "default-value": 0,
+ "name": "secs",
+ "type": "uint32"
+ },
+ {
+ "name": "virtio-backend",
+ "type": "child<virtio-blk-device>"
+ },
+ {
+ "default-value": 0,
+ "name": "min_io_size",
+ "type": "size"
+ },
+ {
+ "name": "bootindex",
+ "type": "int32"
+ },
+ {
+ "default-value": true,
+ "name": "config-wce",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "seg-max-adjust",
+ "type": "bool"
+ },
+ {
+ "name": "drive",
+ "description": "Node name or ID of a block device to use as a backend",
+ "type": "str"
+ },
+ {
+ "default-value": "auto",
+ "name": "werror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "default-value": true,
+ "name": "report-discard-granularity",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "rerror",
+ "description": "Error handling policy, report/ignore/enospc/stop/auto",
+ "type": "BlockdevOnError"
+ },
+ {
+ "default-value": "auto",
+ "name": "write-cache",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "default-value": true,
+ "name": "use-disabled-flag",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "x-disable-legacy-check",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "use-started",
+ "type": "bool"
+ },
+ {
+ "default-value": false,
+ "name": "iommu_platform",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "physical_block_size",
+ "description": "A power of two between 512 B and 2 MiB",
+ "type": "size"
+ },
+ {
+ "default-value": false,
+ "name": "scsi",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "any_layout",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 0,
+ "name": "opt_io_size",
+ "type": "size"
+ },
+ {
+ "default-value": 0,
+ "name": "logical_block_size",
+ "description": "A power of two between 512 B and 2 MiB",
+ "type": "size"
+ },
+ {
+ "default-value": 4194303,
+ "name": "max-discard-sectors",
+ "type": "uint32"
+ },
+ {
+ "default-value": true,
+ "name": "discard",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 4294967295,
+ "name": "discard_granularity",
+ "type": "size"
+ },
+ {
+ "default-value": true,
+ "name": "request-merging",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "queue_reset",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "write-zeroes",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": 4194303,
+ "name": "max-write-zeroes-sectors",
+ "type": "uint32"
+ },
+ {
+ "default-value": false,
+ "name": "packed",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "account-failed",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "default-value": true,
+ "name": "indirect_desc",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "event_idx",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "default-value": true,
+ "name": "x-enable-wce-if-config-wce",
+ "type": "bool"
+ },
+ {
+ "default-value": "auto",
+ "name": "backend_defaults",
+ "description": "on/off/auto",
+ "type": "OnOffAuto"
+ },
+ {
+ "name": "serial",
+ "type": "str"
+ }
+ ],
+ "id": "libvirt-30"
+}
+
{
"execute": "qom-list-properties",
"arguments": {
"typename": "memory-backend-file"
},
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
@@ -29361,7 +29642,7 @@
"type": "bool"
}
],
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
@@ -29369,7 +29650,7 @@
"arguments": {
"typename": "memory-backend-memfd"
},
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
@@ -29448,12 +29729,12 @@
"type": "int"
}
],
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
"execute": "query-machines",
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
@@ -29758,7 +30039,7 @@
"default-ram-id": "s390.ram"
}
],
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
@@ -29766,7 +30047,7 @@
"arguments": {
"typename": "none-machine"
},
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
@@ -29879,12 +30160,12 @@
"type": "child<container>"
}
],
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
"execute": "query-cpu-definitions",
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
@@ -30522,32 +30803,32 @@
"deprecated": false
}
],
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"return": [],
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"return": [],
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -31786,12 +32067,12 @@
"option": "drive"
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -31885,7 +32166,7 @@
"capability": "mapped-ram"
}
],
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -31896,7 +32177,7 @@
"name": "host"
}
},
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
@@ -31968,7 +32249,7 @@
}
}
},
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
--
2.45.0
On Wed, Nov 06, 2024 at 15:31:55 +0100, Boris Fiuczynski wrote: > Add capability QEMU_CAPS_VIRTIO_CCW_DEVICE_LOADPARM to detect multi boot > device support in QEMU by checking the virtio-blk-ccw device property > existence of loadparm. > > Signed-off-by: Boris Fiuczynski <fiuczy@linux.ibm.com> > --- > src/qemu/qemu_capabilities.c | 8 + > src/qemu/qemu_capabilities.h | 1 + > .../caps_5.2.0_s390x.replies | 321 ++++++++++++++++-- > .../caps_6.0.0_s390x.replies | 321 ++++++++++++++++-- > .../caps_8.1.0_s390x.replies | 321 ++++++++++++++++-- > .../caps_8.2.0_s390x.replies | 321 ++++++++++++++++-- > .../caps_9.1.0_s390x.replies | 321 ++++++++++++++++-- > 7 files changed, 1514 insertions(+), 100 deletions(-) Reviewed-by: Peter Krempa <pkrempa@redhat.com>
© 2016 - 2024 Red Hat, Inc.