[libvirt] [PATCH REPOST 1/7] qemu: Add capability for virtio-scsi iothreads

John Ferlan jferlan at redhat.com
Mon May 2 22:30:54 UTC 2016


An iothread for virtio-scsi is a property of the controller. Add a lookup
of the 'virtio-scsi-pci' and 'virtio-scsi-ccw' device properties and parse
the output.  For both, support for the iothread was added in qemu 2.4
while support for virtio-scsi in general was added in qemu 1.4.

Modify the various mock capabilities replies (by hand) to reflect the
when virtio-scsi was supported and then specifically when the iothread
property was added. For versions prior to 1.4, use the no device error
return for virtio-scsi. For versions 1.4 to before 2.4, add some data
for virtio-scsi-pci even though it isn't complete we're not looking for
anything specific there anyway. For 2.4 to 2.6, add a more complete reply.

Signed-off-by: John Ferlan <jferlan at redhat.com>
---
 src/qemu/qemu_capabilities.c                     |   9 ++
 src/qemu/qemu_capabilities.h                     |   1 +
 tests/qemucapabilitiesdata/caps_1.2.2-1.replies  |  80 +++++----
 tests/qemucapabilitiesdata/caps_1.3.1-1.replies  |  80 +++++----
 tests/qemucapabilitiesdata/caps_1.4.2-1.replies  |  88 ++++++----
 tests/qemucapabilitiesdata/caps_1.5.3-1.replies  |  88 ++++++----
 tests/qemucapabilitiesdata/caps_1.6.0-1.replies  |  88 ++++++----
 tests/qemucapabilitiesdata/caps_1.6.50-1.replies |  88 ++++++----
 tests/qemucapabilitiesdata/caps_2.1.1-1.replies  |  88 ++++++----
 tests/qemucapabilitiesdata/caps_2.4.0-1.caps     |   1 +
 tests/qemucapabilitiesdata/caps_2.4.0-1.replies  | 177 ++++++++++++++++----
 tests/qemucapabilitiesdata/caps_2.5.0-1.caps     |   1 +
 tests/qemucapabilitiesdata/caps_2.5.0-1.replies  | 197 +++++++++++++++++++----
 tests/qemucapabilitiesdata/caps_2.6.0-1.caps     |   1 +
 tests/qemucapabilitiesdata/caps_2.6.0-1.replies  | 192 ++++++++++++++++++----
 15 files changed, 851 insertions(+), 328 deletions(-)

diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index 677b06f..4356397 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -326,6 +326,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
 
               "pxb-pcie", /* 220 */
               "device-tray-moved-event",
+              "virtio-scsi-pci.iothread",
     );
 
 
@@ -1605,6 +1606,10 @@ static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsVirtioNet[] = {
     { "event_idx", QEMU_CAPS_VIRTIO_NET_EVENT_IDX },
 };
 
+static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsVirtioSCSI[] = {
+    { "iothread", QEMU_CAPS_VIRTIO_SCSI_IOTHREAD },
+};
+
 static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsPCIAssign[] = {
     { "rombar", QEMU_CAPS_PCI_ROMBAR },
     { "configfd", QEMU_CAPS_PCI_CONFIGFD },
@@ -1696,10 +1701,14 @@ static struct virQEMUCapsObjectTypeProps virQEMUCapsObjectProps[] = {
       ARRAY_CARDINALITY(virQEMUCapsObjectPropsVirtioBlk) },
     { "virtio-net-pci", virQEMUCapsObjectPropsVirtioNet,
       ARRAY_CARDINALITY(virQEMUCapsObjectPropsVirtioNet) },
+    { "virtio-scsi-pci", virQEMUCapsObjectPropsVirtioSCSI,
+      ARRAY_CARDINALITY(virQEMUCapsObjectPropsVirtioSCSI) },
     { "virtio-blk-ccw", virQEMUCapsObjectPropsVirtioBlk,
       ARRAY_CARDINALITY(virQEMUCapsObjectPropsVirtioBlk) },
     { "virtio-net-ccw", virQEMUCapsObjectPropsVirtioNet,
       ARRAY_CARDINALITY(virQEMUCapsObjectPropsVirtioNet) },
+    { "virtio-scsi-ccw", virQEMUCapsObjectPropsVirtioSCSI,
+      ARRAY_CARDINALITY(virQEMUCapsObjectPropsVirtioSCSI) },
     { "virtio-blk-s390", virQEMUCapsObjectPropsVirtioBlk,
       ARRAY_CARDINALITY(virQEMUCapsObjectPropsVirtioBlk) },
     { "virtio-net-s390", virQEMUCapsObjectPropsVirtioNet,
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
index 705dfb1..511a5d7 100644
--- a/src/qemu/qemu_capabilities.h
+++ b/src/qemu/qemu_capabilities.h
@@ -357,6 +357,7 @@ typedef enum {
     /* 220 */
     QEMU_CAPS_DEVICE_PXB_PCIE, /* -device pxb-pcie */
     QEMU_CAPS_DEVICE_TRAY_MOVED, /* DEVICE_TRAY_MOVED event */
+    QEMU_CAPS_VIRTIO_SCSI_IOTHREAD, /* virtio-scsi-{pci,ccw}.iothread */
 
     QEMU_CAPS_LAST /* this must always be the last item */
 } virQEMUCapsFlags;
diff --git a/tests/qemucapabilitiesdata/caps_1.2.2-1.replies b/tests/qemucapabilitiesdata/caps_1.2.2-1.replies
index fbddf3d..dd4b403 100644
--- a/tests/qemucapabilitiesdata/caps_1.2.2-1.replies
+++ b/tests/qemucapabilitiesdata/caps_1.2.2-1.replies
@@ -1025,7 +1025,7 @@
     "id": "libvirt-10",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-blk-ccw' not found"
+        "desc": "Device 'virtio-scsi-pci' not found"
     }
 }
 
@@ -1033,7 +1033,7 @@
     "id": "libvirt-11",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-net-ccw' not found"
+        "desc": "Device 'virtio-blk-ccw' not found"
     }
 }
 
@@ -1041,7 +1041,7 @@
     "id": "libvirt-12",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-blk-s390' not found"
+        "desc": "Device 'virtio-net-ccw' not found"
     }
 }
 
@@ -1049,7 +1049,7 @@
     "id": "libvirt-13",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-net-s390' not found"
+        "desc": "Device 'virtio-scsi-ccw' not found"
     }
 }
 
@@ -1057,7 +1057,7 @@
     "id": "libvirt-14",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'pci-assign' not found"
+        "desc": "Device 'virtio-blk-s390' not found"
     }
 }
 
@@ -1065,7 +1065,7 @@
     "id": "libvirt-15",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'kvm-pci-assign' not found"
+        "desc": "Device 'virtio-net-s390' not found"
     }
 }
 
@@ -1073,6 +1073,22 @@
     "id": "libvirt-16",
     "error": {
         "class": "DeviceNotFound",
+        "desc": "Device 'pci-assign' not found"
+    }
+}
+
+{
+    "id": "libvirt-17",
+    "error": {
+        "class": "DeviceNotFound",
+        "desc": "Device 'kvm-pci-assign' not found"
+    }
+}
+
+{
+    "id": "libvirt-18",
+    "error": {
+        "class": "DeviceNotFound",
         "desc": "Device 'vfio-pci' not found"
     }
 }
@@ -1148,7 +1164,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-17"
+    "id": "libvirt-19"
 }
 
 {
@@ -1202,7 +1218,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-18"
+    "id": "libvirt-20"
 }
 
 {
@@ -1244,11 +1260,11 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-19"
+    "id": "libvirt-21"
 }
 
 {
-    "id": "libvirt-20",
+    "id": "libvirt-22",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-redir' not found"
@@ -1298,7 +1314,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-21"
+    "id": "libvirt-23"
 }
 
 {
@@ -1324,17 +1340,17 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-22"
+    "id": "libvirt-24"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-23"
+    "id": "libvirt-25"
 }
 
 {
-    "id": "libvirt-24",
+    "id": "libvirt-26",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'q35-pcihost' not found"
@@ -1388,7 +1404,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-25"
+    "id": "libvirt-27"
 }
 
 {
@@ -1402,7 +1418,7 @@
             "type": "hex32"
         }
     ],
-    "id": "libvirt-26"
+    "id": "libvirt-28"
 }
 
 {
@@ -1432,7 +1448,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-27"
+    "id": "libvirt-29"
 }
 
 {
@@ -1462,7 +1478,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
@@ -1528,7 +1544,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
@@ -1594,11 +1610,11 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
-    "id": "libvirt-31",
+    "id": "libvirt-33",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
@@ -1606,7 +1622,7 @@
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
@@ -1649,11 +1665,11 @@
             "type": "on/off"
         }
     ],
-    "id": "libvirt-33"
+    "id": "libvirt-35"
 }
 
 {
-    "id": "libvirt-34",
+    "id": "libvirt-36",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-balloon-ccw' not found"
@@ -1661,7 +1677,7 @@
 }
 
 {
-    "id": "libvirt-35",
+    "id": "libvirt-37",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-balloon-device' not found"
@@ -1712,7 +1728,7 @@
             "name": "none"
         }
     ],
-    "id": "libvirt-36"
+    "id": "libvirt-38"
 }
 
 {
@@ -1784,7 +1800,7 @@
             "name": "Opteron_G4"
         }
     ],
-    "id": "libvirt-37"
+    "id": "libvirt-39"
 }
 
 {
@@ -1792,11 +1808,11 @@
         "enabled": false,
         "present": true
     },
-    "id": "libvirt-38"
+    "id": "libvirt-40"
 }
 
 {
-    "id": "libvirt-39",
+    "id": "libvirt-41",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-tpm-models has not been found"
@@ -1804,7 +1820,7 @@
 }
 
 {
-    "id": "libvirt-40",
+    "id": "libvirt-42",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-tpm-types has not been found"
@@ -1812,7 +1828,7 @@
 }
 
 {
-    "id": "libvirt-41",
+    "id": "libvirt-43",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-command-line-options has not been found"
@@ -1826,5 +1842,5 @@
             "state": false
         }
     ],
-    "id": "libvirt-42"
+    "id": "libvirt-44"
 }
diff --git a/tests/qemucapabilitiesdata/caps_1.3.1-1.replies b/tests/qemucapabilitiesdata/caps_1.3.1-1.replies
index 2542b67..d2d9d14 100644
--- a/tests/qemucapabilitiesdata/caps_1.3.1-1.replies
+++ b/tests/qemucapabilitiesdata/caps_1.3.1-1.replies
@@ -1126,7 +1126,7 @@
     "id": "libvirt-11",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-blk-ccw' not found"
+        "desc": "Device 'virtio-scsi-pci' not found"
     }
 }
 
@@ -1134,7 +1134,7 @@
     "id": "libvirt-12",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-net-ccw' not found"
+        "desc": "Device 'virtio-blk-ccw' not found"
     }
 }
 
@@ -1142,7 +1142,7 @@
     "id": "libvirt-13",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-blk-s390' not found"
+        "desc": "Device 'virtio-net-ccw' not found"
     }
 }
 
@@ -1150,7 +1150,7 @@
     "id": "libvirt-14",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-net-s390' not found"
+        "desc": "Device 'virtio-scsi-ccw' not found"
     }
 }
 
@@ -1158,6 +1158,22 @@
     "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"
     }
 }
@@ -1205,7 +1221,7 @@
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-16"
+    "id": "libvirt-18"
 }
 
 {
@@ -1239,7 +1255,7 @@
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-17"
+    "id": "libvirt-19"
 }
 
 {
@@ -1313,7 +1329,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-18"
+    "id": "libvirt-20"
 }
 
 {
@@ -1367,7 +1383,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-19"
+    "id": "libvirt-21"
 }
 
 {
@@ -1409,11 +1425,11 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-20"
+    "id": "libvirt-22"
 }
 
 {
-    "id": "libvirt-21",
+    "id": "libvirt-23",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-redir' not found"
@@ -1463,7 +1479,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-22"
+    "id": "libvirt-24"
 }
 
 {
@@ -1489,13 +1505,13 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-23"
+    "id": "libvirt-25"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-24"
+    "id": "libvirt-26"
 }
 
 {
@@ -1505,7 +1521,7 @@
             "type": "uint64"
         }
     ],
-    "id": "libvirt-25"
+    "id": "libvirt-27"
 }
 
 {
@@ -1555,7 +1571,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-26"
+    "id": "libvirt-28"
 }
 
 {
@@ -1569,7 +1585,7 @@
             "type": "hex32"
         }
     ],
-    "id": "libvirt-27"
+    "id": "libvirt-29"
 }
 
 {
@@ -1603,7 +1619,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
@@ -1633,7 +1649,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
@@ -1703,7 +1719,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
@@ -1773,11 +1789,11 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-31"
+    "id": "libvirt-33"
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
@@ -1785,7 +1801,7 @@
 }
 
 {
-    "id": "libvirt-33",
+    "id": "libvirt-35",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
@@ -1827,11 +1843,11 @@
             "type": "on/off"
         }
     ],
-    "id": "libvirt-34"
+    "id": "libvirt-36"
 }
 
 {
-    "id": "libvirt-35",
+    "id": "libvirt-37",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-balloon-ccw' not found"
@@ -1839,7 +1855,7 @@
 }
 
 {
-    "id": "libvirt-36",
+    "id": "libvirt-38",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-balloon-device' not found"
@@ -1897,7 +1913,7 @@
             "name": "none"
         }
     ],
-    "id": "libvirt-37"
+    "id": "libvirt-39"
 }
 
 {
@@ -1975,7 +1991,7 @@
             "name": "Opteron_G5"
         }
     ],
-    "id": "libvirt-38"
+    "id": "libvirt-40"
 }
 
 {
@@ -1983,11 +1999,11 @@
         "enabled": false,
         "present": true
     },
-    "id": "libvirt-39"
+    "id": "libvirt-41"
 }
 
 {
-    "id": "libvirt-40",
+    "id": "libvirt-42",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-tpm-models has not been found"
@@ -1995,7 +2011,7 @@
 }
 
 {
-    "id": "libvirt-41",
+    "id": "libvirt-43",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-tpm-types has not been found"
@@ -2003,7 +2019,7 @@
 }
 
 {
-    "id": "libvirt-42",
+    "id": "libvirt-44",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-command-line-options has not been found"
@@ -2017,5 +2033,5 @@
             "state": false
         }
     ],
-    "id": "libvirt-43"
+    "id": "libvirt-45"
 }
diff --git a/tests/qemucapabilitiesdata/caps_1.4.2-1.replies b/tests/qemucapabilitiesdata/caps_1.4.2-1.replies
index 46c3292..65aa34b 100644
--- a/tests/qemucapabilitiesdata/caps_1.4.2-1.replies
+++ b/tests/qemucapabilitiesdata/caps_1.4.2-1.replies
@@ -1170,7 +1170,21 @@
 }
 
 {
-    "id": "libvirt-11",
+    "return": [
+        {
+            "name": "ioeventfd",
+            "type": "on/off"
+        },
+        {
+            "name": "vectors",
+            "type": "uint32"
+        }
+    ],
+    "id": "libvirt-11"
+}
+
+{
+    "id": "libvirt-12",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-blk-ccw' not found"
@@ -1178,7 +1192,7 @@
 }
 
 {
-    "id": "libvirt-12",
+    "id": "libvirt-13",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-ccw' not found"
@@ -1186,7 +1200,15 @@
 }
 
 {
-    "id": "libvirt-13",
+    "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"
@@ -1194,7 +1216,7 @@
 }
 
 {
-    "id": "libvirt-14",
+    "id": "libvirt-16",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-s390' not found"
@@ -1202,7 +1224,7 @@
 }
 
 {
-    "id": "libvirt-15",
+    "id": "libvirt-17",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'pci-assign' not found"
@@ -1252,7 +1274,7 @@
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-16"
+    "id": "libvirt-18"
 }
 
 {
@@ -1286,7 +1308,7 @@
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-17"
+    "id": "libvirt-19"
 }
 
 {
@@ -1360,7 +1382,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-18"
+    "id": "libvirt-20"
 }
 
 {
@@ -1414,7 +1436,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-19"
+    "id": "libvirt-21"
 }
 
 {
@@ -1456,11 +1478,11 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-20"
+    "id": "libvirt-22"
 }
 
 {
-    "id": "libvirt-21",
+    "id": "libvirt-23",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-redir' not found"
@@ -1510,7 +1532,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-22"
+    "id": "libvirt-24"
 }
 
 {
@@ -1536,13 +1558,13 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-23"
+    "id": "libvirt-25"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-24"
+    "id": "libvirt-26"
 }
 
 {
@@ -1552,7 +1574,7 @@
             "type": "uint64"
         }
     ],
-    "id": "libvirt-25"
+    "id": "libvirt-27"
 }
 
 {
@@ -1602,7 +1624,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-26"
+    "id": "libvirt-28"
 }
 
 {
@@ -1616,7 +1638,7 @@
             "type": "hex32"
         }
     ],
-    "id": "libvirt-27"
+    "id": "libvirt-29"
 }
 
 {
@@ -1650,7 +1672,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
@@ -1680,7 +1702,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
@@ -1750,7 +1772,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
@@ -1820,11 +1842,11 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-31"
+    "id": "libvirt-33"
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
@@ -1832,7 +1854,7 @@
 }
 
 {
-    "id": "libvirt-33",
+    "id": "libvirt-35",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
@@ -1875,11 +1897,11 @@
             "type": "on/off"
         }
     ],
-    "id": "libvirt-34"
+    "id": "libvirt-36"
 }
 
 {
-    "id": "libvirt-35",
+    "id": "libvirt-37",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-balloon-ccw' not found"
@@ -1887,7 +1909,7 @@
 }
 
 {
-    "id": "libvirt-36",
+    "id": "libvirt-38",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-balloon-device' not found"
@@ -1948,7 +1970,7 @@
             "name": "none"
         }
     ],
-    "id": "libvirt-37"
+    "id": "libvirt-39"
 }
 
 {
@@ -2026,7 +2048,7 @@
             "name": "qemu64"
         }
     ],
-    "id": "libvirt-38"
+    "id": "libvirt-40"
 }
 
 {
@@ -2034,11 +2056,11 @@
         "enabled": false,
         "present": true
     },
-    "id": "libvirt-39"
+    "id": "libvirt-41"
 }
 
 {
-    "id": "libvirt-40",
+    "id": "libvirt-42",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-tpm-models has not been found"
@@ -2046,7 +2068,7 @@
 }
 
 {
-    "id": "libvirt-41",
+    "id": "libvirt-43",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-tpm-types has not been found"
@@ -2054,7 +2076,7 @@
 }
 
 {
-    "id": "libvirt-42",
+    "id": "libvirt-44",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-command-line-options has not been found"
@@ -2068,5 +2090,5 @@
             "state": false
         }
     ],
-    "id": "libvirt-43"
+    "id": "libvirt-45"
 }
diff --git a/tests/qemucapabilitiesdata/caps_1.5.3-1.replies b/tests/qemucapabilitiesdata/caps_1.5.3-1.replies
index 37a735f..7223aad 100644
--- a/tests/qemucapabilitiesdata/caps_1.5.3-1.replies
+++ b/tests/qemucapabilitiesdata/caps_1.5.3-1.replies
@@ -1236,7 +1236,21 @@
 }
 
 {
-    "id": "libvirt-11",
+    "return": [
+        {
+            "name": "ioeventfd",
+            "type": "on/off"
+        },
+        {
+            "name": "vectors",
+            "type": "uint32"
+        }
+    ],
+    "id": "libvirt-11"
+}
+
+{
+    "id": "libvirt-12",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-blk-ccw' not found"
@@ -1244,7 +1258,7 @@
 }
 
 {
-    "id": "libvirt-12",
+    "id": "libvirt-13",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-ccw' not found"
@@ -1252,7 +1266,15 @@
 }
 
 {
-    "id": "libvirt-13",
+    "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"
@@ -1260,7 +1282,7 @@
 }
 
 {
-    "id": "libvirt-14",
+    "id": "libvirt-16",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-s390' not found"
@@ -1268,7 +1290,7 @@
 }
 
 {
-    "id": "libvirt-15",
+    "id": "libvirt-17",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'pci-assign' not found"
@@ -1318,7 +1340,7 @@
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-16"
+    "id": "libvirt-18"
 }
 
 {
@@ -1360,7 +1382,7 @@
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-17"
+    "id": "libvirt-19"
 }
 
 {
@@ -1434,7 +1456,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-18"
+    "id": "libvirt-20"
 }
 
 {
@@ -1488,7 +1510,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-19"
+    "id": "libvirt-21"
 }
 
 {
@@ -1530,11 +1552,11 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-20"
+    "id": "libvirt-22"
 }
 
 {
-    "id": "libvirt-21",
+    "id": "libvirt-23",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-redir' not found"
@@ -1584,7 +1606,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-22"
+    "id": "libvirt-24"
 }
 
 {
@@ -1610,13 +1632,13 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-23"
+    "id": "libvirt-25"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-24"
+    "id": "libvirt-26"
 }
 
 {
@@ -1626,7 +1648,7 @@
             "type": "uint64"
         }
     ],
-    "id": "libvirt-25"
+    "id": "libvirt-27"
 }
 
 {
@@ -1676,7 +1698,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-26"
+    "id": "libvirt-28"
 }
 
 {
@@ -1690,7 +1712,7 @@
             "type": "hex32"
         }
     ],
-    "id": "libvirt-27"
+    "id": "libvirt-29"
 }
 
 {
@@ -1724,7 +1746,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
@@ -1754,7 +1776,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
@@ -1824,7 +1846,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
@@ -1894,11 +1916,11 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-31"
+    "id": "libvirt-33"
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
@@ -1906,7 +1928,7 @@
 }
 
 {
-    "id": "libvirt-33",
+    "id": "libvirt-35",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
@@ -1948,11 +1970,11 @@
             "type": "on/off"
         }
     ],
-    "id": "libvirt-34"
+    "id": "libvirt-36"
 }
 
 {
-    "id": "libvirt-35",
+    "id": "libvirt-37",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-balloon-ccw' not found"
@@ -1962,7 +1984,7 @@
 {
     "return": [
     ],
-    "id": "libvirt-36"
+    "id": "libvirt-38"
 }
 
 {
@@ -2035,7 +2057,7 @@
             "cpu-max": 1
         }
     ],
-    "id": "libvirt-37"
+    "id": "libvirt-39"
 }
 
 {
@@ -2113,7 +2135,7 @@
             "name": "qemu64"
         }
     ],
-    "id": "libvirt-38"
+    "id": "libvirt-40"
 }
 
 {
@@ -2121,19 +2143,19 @@
         "enabled": false,
         "present": true
     },
-    "id": "libvirt-39"
+    "id": "libvirt-41"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-40"
+    "id": "libvirt-42"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-41"
+    "id": "libvirt-43"
 }
 
 {
@@ -2809,7 +2831,7 @@
             "option": "drive"
         }
     ],
-    "id": "libvirt-42"
+    "id": "libvirt-44"
 }
 
 {
@@ -2819,5 +2841,5 @@
             "state": false
         }
     ],
-    "id": "libvirt-43"
+    "id": "libvirt-45"
 }
diff --git a/tests/qemucapabilitiesdata/caps_1.6.0-1.replies b/tests/qemucapabilitiesdata/caps_1.6.0-1.replies
index 8932702..0b8381d 100644
--- a/tests/qemucapabilitiesdata/caps_1.6.0-1.replies
+++ b/tests/qemucapabilitiesdata/caps_1.6.0-1.replies
@@ -1286,7 +1286,21 @@
 }
 
 {
-    "id": "libvirt-11",
+    "return": [
+        {
+            "name": "ioeventfd",
+            "type": "on/off"
+        },
+        {
+            "name": "vectors",
+            "type": "uint32"
+        }
+    ],
+    "id": "libvirt-11"
+}
+
+{
+    "id": "libvirt-12",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-blk-ccw' not found"
@@ -1294,7 +1308,7 @@
 }
 
 {
-    "id": "libvirt-12",
+    "id": "libvirt-13",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-ccw' not found"
@@ -1302,7 +1316,15 @@
 }
 
 {
-    "id": "libvirt-13",
+    "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"
@@ -1310,7 +1332,7 @@
 }
 
 {
-    "id": "libvirt-14",
+    "id": "libvirt-15",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-s390' not found"
@@ -1318,7 +1340,7 @@
 }
 
 {
-    "id": "libvirt-15",
+    "id": "libvirt-17",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'pci-assign' not found"
@@ -1368,7 +1390,7 @@
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-16"
+    "id": "libvirt-18"
 }
 
 {
@@ -1410,7 +1432,7 @@
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-17"
+    "id": "libvirt-19"
 }
 
 {
@@ -1484,7 +1506,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-18"
+    "id": "libvirt-20"
 }
 
 {
@@ -1538,7 +1560,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-19"
+    "id": "libvirt-21"
 }
 
 {
@@ -1580,11 +1602,11 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-20"
+    "id": "libvirt-22"
 }
 
 {
-    "id": "libvirt-21",
+    "id": "libvirt-23",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-redir' not found"
@@ -1638,7 +1660,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-22"
+    "id": "libvirt-24"
 }
 
 {
@@ -1664,7 +1686,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-23"
+    "id": "libvirt-25"
 }
 
 {
@@ -1674,7 +1696,7 @@
             "type": "size"
         }
     ],
-    "id": "libvirt-24"
+    "id": "libvirt-26"
 }
 
 {
@@ -1688,7 +1710,7 @@
             "type": "uint64"
         }
     ],
-    "id": "libvirt-25"
+    "id": "libvirt-27"
 }
 
 {
@@ -1738,7 +1760,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-26"
+    "id": "libvirt-28"
 }
 
 {
@@ -1752,7 +1774,7 @@
             "type": "hex32"
         }
     ],
-    "id": "libvirt-27"
+    "id": "libvirt-29"
 }
 
 {
@@ -1786,7 +1808,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
@@ -1816,7 +1838,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
@@ -1886,7 +1908,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
@@ -1956,11 +1978,11 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-31"
+    "id": "libvirt-33"
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
@@ -1968,7 +1990,7 @@
 }
 
 {
-    "id": "libvirt-33",
+    "id": "libvirt-35",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
@@ -2010,11 +2032,11 @@
             "type": "on/off"
         }
     ],
-    "id": "libvirt-34"
+    "id": "libvirt-36"
 }
 
 {
-    "id": "libvirt-35",
+    "id": "libvirt-37",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-balloon-ccw' not found"
@@ -2024,7 +2046,7 @@
 {
     "return": [
     ],
-    "id": "libvirt-36"
+    "id": "libvirt-38"
 }
 
 {
@@ -2113,7 +2135,7 @@
             "cpu-max": 1
         }
     ],
-    "id": "libvirt-37"
+    "id": "libvirt-39"
 }
 
 {
@@ -2191,7 +2213,7 @@
             "name": "qemu64"
         }
     ],
-    "id": "libvirt-38"
+    "id": "libvirt-40"
 }
 
 {
@@ -2199,19 +2221,19 @@
         "enabled": false,
         "present": true
     },
-    "id": "libvirt-39"
+    "id": "libvirt-41"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-40"
+    "id": "libvirt-42"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-41"
+    "id": "libvirt-43"
 }
 
 {
@@ -2789,7 +2811,7 @@
             "option": "drive"
         }
     ],
-    "id": "libvirt-42"
+    "id": "libvirt-44"
 }
 
 {
@@ -2811,5 +2833,5 @@
             "state": false
         }
     ],
-    "id": "libvirt-43"
+    "id": "libvirt-45"
 }
diff --git a/tests/qemucapabilitiesdata/caps_1.6.50-1.replies b/tests/qemucapabilitiesdata/caps_1.6.50-1.replies
index b9bb9a3..b986a30 100644
--- a/tests/qemucapabilitiesdata/caps_1.6.50-1.replies
+++ b/tests/qemucapabilitiesdata/caps_1.6.50-1.replies
@@ -1292,7 +1292,21 @@
 }
 
 {
-    "id": "libvirt-11",
+    "return": [
+        {
+            "name": "ioeventfd",
+            "type": "on/off"
+        },
+        {
+            "name": "vectors",
+            "type": "uint32"
+        }
+    ],
+    "id": "libvirt-11"
+}
+
+{
+    "id": "libvirt-12",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-blk-ccw' not found"
@@ -1300,7 +1314,7 @@
 }
 
 {
-    "id": "libvirt-12",
+    "id": "libvirt-13",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-ccw' not found"
@@ -1308,7 +1322,15 @@
 }
 
 {
-    "id": "libvirt-13",
+    "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"
@@ -1316,7 +1338,7 @@
 }
 
 {
-    "id": "libvirt-14",
+    "id": "libvirt-16",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-s390' not found"
@@ -1324,7 +1346,7 @@
 }
 
 {
-    "id": "libvirt-15",
+    "id": "libvirt-17",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'pci-assign' not found"
@@ -1374,7 +1396,7 @@
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-16"
+    "id": "libvirt-18"
 }
 
 {
@@ -1416,7 +1438,7 @@
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-17"
+    "id": "libvirt-19"
 }
 
 {
@@ -1490,7 +1512,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-18"
+    "id": "libvirt-20"
 }
 
 {
@@ -1544,7 +1566,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-19"
+    "id": "libvirt-21"
 }
 
 {
@@ -1586,11 +1608,11 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-20"
+    "id": "libvirt-22"
 }
 
 {
-    "id": "libvirt-21",
+    "id": "libvirt-23",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-redir' not found"
@@ -1598,7 +1620,7 @@
 }
 
 {
-    "id": "libvirt-22",
+    "id": "libvirt-24",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-host' not found"
@@ -1628,7 +1650,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-23"
+    "id": "libvirt-25"
 }
 
 {
@@ -1638,7 +1660,7 @@
             "type": "size"
         }
     ],
-    "id": "libvirt-24"
+    "id": "libvirt-26"
 }
 
 {
@@ -1652,7 +1674,7 @@
             "type": "uint64"
         }
     ],
-    "id": "libvirt-25"
+    "id": "libvirt-27"
 }
 
 {
@@ -1702,7 +1724,7 @@
             "type": "drive"
         }
     ],
-    "id": "libvirt-26"
+    "id": "libvirt-28"
 }
 
 {
@@ -1716,7 +1738,7 @@
             "type": "hex32"
         }
     ],
-    "id": "libvirt-27"
+    "id": "libvirt-29"
 }
 
 {
@@ -1750,7 +1772,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
@@ -1780,7 +1802,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
@@ -1850,7 +1872,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
@@ -1920,11 +1942,11 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-31"
+    "id": "libvirt-33"
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
@@ -1932,7 +1954,7 @@
 }
 
 {
-    "id": "libvirt-33",
+    "id": "libvirt-35",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
@@ -1974,11 +1996,11 @@
             "type": "on/off"
         }
     ],
-    "id": "libvirt-34"
+    "id": "libvirt-36"
 }
 
 {
-    "id": "libvirt-35",
+    "id": "libvirt-37",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-balloon-ccw' not found"
@@ -1988,7 +2010,7 @@
 {
     "return": [
     ],
-    "id": "libvirt-36"
+    "id": "libvirt-38"
 }
 
 {
@@ -2085,7 +2107,7 @@
             "cpu-max": 1
         }
     ],
-    "id": "libvirt-37"
+    "id": "libvirt-39"
 }
 
 {
@@ -2163,7 +2185,7 @@
             "name": "qemu64"
         }
     ],
-    "id": "libvirt-38"
+    "id": "libvirt-40"
 }
 
 {
@@ -2171,19 +2193,19 @@
         "enabled": false,
         "present": true
     },
-    "id": "libvirt-39"
+    "id": "libvirt-41"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-40"
+    "id": "libvirt-42"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-41"
+    "id": "libvirt-43"
 }
 
 {
@@ -2771,7 +2793,7 @@
             "option": "drive"
         }
     ],
-    "id": "libvirt-42"
+    "id": "libvirt-44"
 }
 
 {
@@ -2793,5 +2815,5 @@
             "state": false
         }
     ],
-    "id": "libvirt-43"
+    "id": "libvirt-45"
 }
diff --git a/tests/qemucapabilitiesdata/caps_2.1.1-1.replies b/tests/qemucapabilitiesdata/caps_2.1.1-1.replies
index fabda55..d363917 100644
--- a/tests/qemucapabilitiesdata/caps_2.1.1-1.replies
+++ b/tests/qemucapabilitiesdata/caps_2.1.1-1.replies
@@ -1566,7 +1566,21 @@
 }
 
 {
-  "id": "libvirt-11",
+    "return": [
+        {
+            "name": "ioeventfd",
+            "type": "on/off"
+        },
+        {
+            "name": "vectors",
+            "type": "uint32"
+        }
+    ],
+    "id": "libvirt-11"
+}
+
+{
+  "id": "libvirt-12",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-blk-ccw' not found"
@@ -1574,7 +1588,7 @@
 }
 
 {
-  "id": "libvirt-12",
+  "id": "libvirt-13",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-ccw' not found"
@@ -1582,7 +1596,15 @@
 }
 
 {
-  "id": "libvirt-13",
+  "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"
@@ -1590,7 +1612,7 @@
 }
 
 {
-  "id": "libvirt-14",
+  "id": "libvirt-16",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-s390' not found"
@@ -1598,7 +1620,7 @@
 }
 
 {
-  "id": "libvirt-15",
+  "id": "libvirt-17",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'pci-assign' not found"
@@ -1648,7 +1670,7 @@
       "type": "pci-host-devaddr"
     }
   ],
-  "id": "libvirt-16"
+  "id": "libvirt-18"
 }
 
 {
@@ -1690,7 +1712,7 @@
       "type": "pci-host-devaddr"
     }
   ],
-  "id": "libvirt-17"
+  "id": "libvirt-19"
 }
 
 {
@@ -1776,7 +1798,7 @@
       "type": "drive"
     }
   ],
-  "id": "libvirt-18"
+  "id": "libvirt-20"
 }
 
 {
@@ -1830,7 +1852,7 @@
       "type": "drive"
     }
   ],
-  "id": "libvirt-19"
+  "id": "libvirt-21"
 }
 
 {
@@ -1880,7 +1902,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-20"
+  "id": "libvirt-22"
 }
 
 {
@@ -1918,7 +1940,7 @@
       "type": "chr"
     }
   ],
-  "id": "libvirt-21"
+  "id": "libvirt-23"
 }
 
 {
@@ -1980,7 +2002,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-22"
+  "id": "libvirt-24"
 }
 
 {
@@ -2006,7 +2028,7 @@
       "type": "drive"
     }
   ],
-  "id": "libvirt-23"
+  "id": "libvirt-25"
 }
 
 {
@@ -2044,7 +2066,7 @@
       "type": "size"
     }
   ],
-  "id": "libvirt-24"
+  "id": "libvirt-26"
 }
 
 {
@@ -2094,7 +2116,7 @@
       "type": "uint64"
     }
   ],
-  "id": "libvirt-25"
+  "id": "libvirt-27"
 }
 
 {
@@ -2148,7 +2170,7 @@
       "type": "drive"
     }
   ],
-  "id": "libvirt-26"
+  "id": "libvirt-28"
 }
 
 {
@@ -2162,7 +2184,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-27"
+  "id": "libvirt-29"
 }
 
 {
@@ -2196,7 +2218,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
@@ -2226,7 +2248,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
@@ -2296,7 +2318,7 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
@@ -2366,11 +2388,11 @@
             "type": "uint32"
         }
     ],
-    "id": "libvirt-31"
+    "id": "libvirt-33"
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
@@ -2378,7 +2400,7 @@
 }
 
 {
-    "id": "libvirt-33",
+    "id": "libvirt-35",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
@@ -2432,11 +2454,11 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-36"
 }
 
 {
-  "id": "libvirt-35",
+  "id": "libvirt-37",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-balloon-ccw' not found"
@@ -2446,7 +2468,7 @@
 {
   "return": [
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-38"
 }
 
 {
@@ -2559,7 +2581,7 @@
       "cpu-max": 255
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-39"
 }
 
 {
@@ -2640,7 +2662,7 @@
       "name": "qemu64"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-40"
 }
 
 {
@@ -2648,21 +2670,21 @@
     "enabled": false,
     "present": true
   },
-  "id": "libvirt-39"
+  "id": "libvirt-41"
 }
 
 {
   "return": [
     "tpm-tis"
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-42"
 }
 
 {
   "return": [
     "passthrough"
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-43"
 }
 
 {
@@ -3522,7 +3544,7 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-44"
 }
 
 {
@@ -3544,5 +3566,5 @@
       "capability": "zero-blocks"
     }
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-45"
 }
diff --git a/tests/qemucapabilitiesdata/caps_2.4.0-1.caps b/tests/qemucapabilitiesdata/caps_2.4.0-1.caps
index d52f7f3..9d1542c 100644
--- a/tests/qemucapabilitiesdata/caps_2.4.0-1.caps
+++ b/tests/qemucapabilitiesdata/caps_2.4.0-1.caps
@@ -175,4 +175,5 @@
     <flag name='debug-threads'/>
     <flag name='pxb'/>
     <flag name='device-tray-moved-event'/>
+    <flag name='virtio-scsi-pci.iothread'/>
   </qemuCaps>
diff --git a/tests/qemucapabilitiesdata/caps_2.4.0-1.replies b/tests/qemucapabilitiesdata/caps_2.4.0-1.replies
index 299fdfc..d186a8a 100644
--- a/tests/qemucapabilitiesdata/caps_2.4.0-1.replies
+++ b/tests/qemucapabilitiesdata/caps_2.4.0-1.replies
@@ -1800,7 +1800,110 @@
 }
 
 {
-  "id": "libvirt-11",
+    "return": [
+        {
+            "name": "iothread",
+            "type": "link<iothread>"
+        },
+        {
+            "name": "any_layout",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "notify_on_empty",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "event_idx",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "indirect_desc",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "param_change",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "hotplug",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "cmd_per_lun",
+            "type": "uint32"
+        },
+        {
+            "name": "max_sectors",
+            "type": "uint32"
+        },
+        {
+            "name": "num_queues",
+            "type": "uint32"
+        },
+        {
+            "name": "virtio-backend",
+            "type": "child<virtio-scsi-device>"
+        },
+        {
+            "name": "command_serr_enable",
+            "description":"on/off",
+            "type": "bool"
+        },
+        {
+            "name": "multifunction",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "rombar",
+            "type": "uint32"
+        },
+        {
+            "name": "romfile",
+            "type": "str"
+        },
+        {
+            "name": "addr",
+            "description": "Slot and optional function number, example: 06.0 or 06",
+            "type": "int32"
+        },
+        {
+            "name": "disable-modern",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "disable-legacy",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "virtio-pci-bus-master-bug-migration",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "vectors",
+            "type": "uint32"
+        },
+        {
+            "name": "ioeventfd",
+            "description": "on/off",
+            "type": "bool"
+        }
+    ],
+    "id": "libvirt-11"
+}
+
+{
+  "id": "libvirt-12",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-blk-ccw' not found"
@@ -1808,7 +1911,7 @@
 }
 
 {
-  "id": "libvirt-12",
+  "id": "libvirt-13",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-ccw' not found"
@@ -1816,7 +1919,15 @@
 }
 
 {
-  "id": "libvirt-13",
+  "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"
@@ -1824,7 +1935,7 @@
 }
 
 {
-  "id": "libvirt-14",
+  "id": "libvirt-16",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-s390' not found"
@@ -1832,7 +1943,7 @@
 }
 
 {
-  "id": "libvirt-15",
+  "id": "libvirt-17",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'pci-assign' not found"
@@ -1888,7 +1999,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-16"
+  "id": "libvirt-18"
 }
 
 {
@@ -1944,7 +2055,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-17"
+  "id": "libvirt-19"
 }
 
 {
@@ -2039,7 +2150,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-18"
+  "id": "libvirt-20"
 }
 
 {
@@ -2096,7 +2207,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-19"
+  "id": "libvirt-21"
 }
 
 {
@@ -2149,7 +2260,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-20"
+  "id": "libvirt-22"
 }
 
 {
@@ -2190,7 +2301,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-21"
+  "id": "libvirt-23"
 }
 
 {
@@ -2255,7 +2366,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-22"
+  "id": "libvirt-24"
 }
 
 {
@@ -2282,7 +2393,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-23"
+  "id": "libvirt-25"
 }
 
 {
@@ -2320,7 +2431,7 @@
       "type": "size"
     }
   ],
-  "id": "libvirt-24"
+  "id": "libvirt-26"
 }
 
 {
@@ -2374,7 +2485,7 @@
       "type": "uint64"
     }
   ],
-  "id": "libvirt-25"
+  "id": "libvirt-27"
 }
 
 {
@@ -2434,7 +2545,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-26"
+  "id": "libvirt-28"
 }
 
 {
@@ -2448,7 +2559,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-27"
+  "id": "libvirt-29"
 }
 
 {
@@ -2495,7 +2606,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-28"
+  "id": "libvirt-30"
 }
 
 {
@@ -2528,7 +2639,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-29"
+  "id": "libvirt-31"
 }
 
 {
@@ -2601,7 +2712,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-30"
+  "id": "libvirt-32"
 }
 
 {
@@ -2674,7 +2785,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-33"
 }
 
 {
@@ -2755,7 +2866,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-34"
 }
 
 {
@@ -2832,7 +2943,7 @@
       "name": "gpe0_blk"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-35"
 }
 
 
@@ -2918,11 +3029,11 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-36"
 }
 
 {
-  "id": "libvirt-35",
+  "id": "libvirt-37",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-balloon-ccw' not found"
@@ -2965,7 +3076,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-38"
 }
 
 {
@@ -3094,7 +3205,7 @@
       "cpu-max": 255
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-39"
 }
 
 {
@@ -3184,7 +3295,7 @@
       "name": "qemu64"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-40"
 }
 
 {
@@ -3192,21 +3303,21 @@
     "enabled": false,
     "present": true
   },
-  "id": "libvirt-39"
+  "id": "libvirt-41"
 }
 
 {
   "return": [
     "tpm-tis"
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-42"
 }
 
 {
   "return": [
     "passthrough"
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-43"
 }
 
 {
@@ -4210,7 +4321,7 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-44"
 }
 
 {
@@ -4240,5 +4351,5 @@
       "capability": "events"
     }
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
diff --git a/tests/qemucapabilitiesdata/caps_2.5.0-1.caps b/tests/qemucapabilitiesdata/caps_2.5.0-1.caps
index e9750e4..d71e5c3 100644
--- a/tests/qemucapabilitiesdata/caps_2.5.0-1.caps
+++ b/tests/qemucapabilitiesdata/caps_2.5.0-1.caps
@@ -176,4 +176,5 @@
     <flag name='debug-threads'/>
     <flag name='pxb'/>
     <flag name='device-tray-moved-event'/>
+    <flag name='virtio-scsi-pci.iothread'/>
   </qemuCaps>
diff --git a/tests/qemucapabilitiesdata/caps_2.5.0-1.replies b/tests/qemucapabilitiesdata/caps_2.5.0-1.replies
index 7b692b5..ca57cd1 100644
--- a/tests/qemucapabilitiesdata/caps_2.5.0-1.replies
+++ b/tests/qemucapabilitiesdata/caps_2.5.0-1.replies
@@ -1800,7 +1800,130 @@
 }
 
 {
-  "id": "libvirt-11",
+    "return": [
+        {
+            "name": "iothread",
+            "type": "link<iothread>"
+        },
+        {
+            "name": "any_layout",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "notify_on_empty",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "event_idx",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "indirect_desc",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "param_change",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "hotplug",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "modern-pio-notify",
+            "description": "on/off",
+            "type":"bool"
+        },
+        {
+            "name": "cmd_per_lun",
+            "type": "uint32"
+        },
+        {
+            "name": "max_sectors",
+            "type": "uint32"
+        },
+        {
+            "name": "num_queues",
+            "type": "uint32"
+        },
+        {
+            "name": "virtio-backend",
+            "type": "child<virtio-scsi-device>"
+        },
+        {
+            "name": "command_serr_enable",
+            "description":"on/off",
+            "type": "bool"
+        },
+        {
+            "name": "multifunction",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "migrate-extra",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "migrate-extra",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "rombar",
+            "type": "uint32"
+        },
+        {
+            "name": "romfile",
+            "type": "str"
+        },
+        {
+            "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": "disable-modern",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "disable-legacy",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "virtio-pci-bus-master-bug-migration",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "vectors",
+            "type": "uint32"
+        },
+        {
+            "name": "ioeventfd",
+            "description": "on/off",
+            "type": "bool"
+        }
+    ],
+    "id": "libvirt-11"
+}
+
+{
+  "id": "libvirt-12",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-blk-ccw' not found"
@@ -1808,7 +1931,7 @@
 }
 
 {
-  "id": "libvirt-12",
+  "id": "libvirt-13",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-ccw' not found"
@@ -1816,7 +1939,15 @@
 }
 
 {
-  "id": "libvirt-13",
+  "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"
@@ -1824,7 +1955,7 @@
 }
 
 {
-  "id": "libvirt-14",
+  "id": "libvirt-16",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-s390' not found"
@@ -1832,7 +1963,7 @@
 }
 
 {
-  "id": "libvirt-15",
+  "id": "libvirt-17",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'pci-assign' not found"
@@ -1888,7 +2019,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-16"
+  "id": "libvirt-18"
 }
 
 {
@@ -1944,7 +2075,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-17"
+  "id": "libvirt-19"
 }
 
 {
@@ -2039,7 +2170,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-18"
+  "id": "libvirt-20"
 }
 
 {
@@ -2096,7 +2227,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-19"
+  "id": "libvirt-21"
 }
 
 {
@@ -2149,7 +2280,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-20"
+  "id": "libvirt-22"
 }
 
 {
@@ -2190,7 +2321,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-21"
+  "id": "libvirt-23"
 }
 
 {
@@ -2255,7 +2386,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-22"
+  "id": "libvirt-24"
 }
 
 {
@@ -2282,7 +2413,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-23"
+  "id": "libvirt-25"
 }
 
 {
@@ -2320,7 +2451,7 @@
       "type": "size"
     }
   ],
-  "id": "libvirt-24"
+  "id": "libvirt-26"
 }
 
 {
@@ -2374,7 +2505,7 @@
       "type": "uint64"
     }
   ],
-  "id": "libvirt-25"
+  "id": "libvirt-27"
 }
 
 {
@@ -2434,7 +2565,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-26"
+  "id": "libvirt-28"
 }
 
 {
@@ -2448,7 +2579,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-27"
+  "id": "libvirt-29"
 }
 
 {
@@ -2495,7 +2626,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-28"
+  "id": "libvirt-30"
 }
 
 {
@@ -2528,7 +2659,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-29"
+  "id": "libvirt-31"
 }
 
 {
@@ -2601,7 +2732,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-30"
+  "id": "libvirt-32"
 }
 
 {
@@ -2674,7 +2805,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-33"
 }
 
 {
@@ -2760,7 +2891,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-34"
 }
 
 {
@@ -2837,7 +2968,7 @@
       "name": "gpe0_blk"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-35"
 }
 
 
@@ -2938,11 +3069,11 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-36"
 }
 
 {
-  "id": "libvirt-35",
+  "id": "libvirt-37",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-balloon-ccw' not found"
@@ -2985,7 +3116,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-38"
 }
 
 {
@@ -3114,7 +3245,7 @@
       "cpu-max": 255
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-39"
 }
 
 {
@@ -3204,7 +3335,7 @@
       "name": "qemu64"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-40"
 }
 
 {
@@ -3212,21 +3343,21 @@
     "enabled": false,
     "present": true
   },
-  "id": "libvirt-39"
+  "id": "libvirt-41"
 }
 
 {
   "return": [
     "tpm-tis"
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-42"
 }
 
 {
   "return": [
     "passthrough"
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-43"
 }
 
 {
@@ -4230,7 +4361,7 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-44"
 }
 
 {
@@ -4260,5 +4391,5 @@
       "capability": "events"
     }
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-45"
 }
diff --git a/tests/qemucapabilitiesdata/caps_2.6.0-1.caps b/tests/qemucapabilitiesdata/caps_2.6.0-1.caps
index 208f063..07b8af7 100644
--- a/tests/qemucapabilitiesdata/caps_2.6.0-1.caps
+++ b/tests/qemucapabilitiesdata/caps_2.6.0-1.caps
@@ -181,4 +181,5 @@
     <flag name='pxb'/>
     <flag name='pxb-pcie'/>
     <flag name='device-tray-moved-event'/>
+    <flag name='virtio-scsi-pci.iothread'/>
   </qemuCaps>
diff --git a/tests/qemucapabilitiesdata/caps_2.6.0-1.replies b/tests/qemucapabilitiesdata/caps_2.6.0-1.replies
index 8a4c3fe..a777c14 100644
--- a/tests/qemucapabilitiesdata/caps_2.6.0-1.replies
+++ b/tests/qemucapabilitiesdata/caps_2.6.0-1.replies
@@ -1806,7 +1806,125 @@
 }
 
 {
-  "id": "libvirt-11",
+    "return": [
+        {
+            "name": "disable-modern",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "ioeventfd",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "virtio-pci-bus-master-bug-migration",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "event_idx",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "cmd_per_lun",
+            "type": "uint32"
+        },
+        {
+            "name": "indirect_desc",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "param_change",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "iothread",
+            "type": "link<iothread>"
+        },
+        {
+            "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": "hotplug",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "modern-pio-notify",
+            "description": "on/off",
+            "type":"bool"
+        },
+        {
+            "name": "num_queues",
+            "type": "uint32"
+        },
+        {
+            "name": "romfile",
+            "type": "str"
+        },
+        {
+            "name": "virtio-backend",
+            "type": "child<virtio-scsi-device>"
+        },
+        {
+            "name": "disable-legacy",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "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": "any_layout",
+            "description": "on/off",
+            "type": "bool"
+        },
+        {
+            "name": "max_sectors",
+            "type": "uint32"
+        },
+        {
+            "name": "rombar",
+            "type": "uint32"
+        }
+    ],
+    "id": "libvirt-11"
+}
+
+{
+  "id": "libvirt-12",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-blk-ccw' not found"
@@ -1814,7 +1932,7 @@
 }
 
 {
-  "id": "libvirt-12",
+  "id": "libvirt-13",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-ccw' not found"
@@ -1822,7 +1940,15 @@
 }
 
 {
-  "id": "libvirt-13",
+  "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"
@@ -1830,7 +1956,7 @@
 }
 
 {
-  "id": "libvirt-14",
+  "id": "libvirt-16",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-s390' not found"
@@ -1838,7 +1964,7 @@
 }
 
 {
-  "id": "libvirt-15",
+  "id": "libvirt-17",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'pci-assign' not found"
@@ -1894,7 +2020,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-16"
+  "id": "libvirt-18"
 }
 
 {
@@ -1950,7 +2076,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-17"
+  "id": "libvirt-19"
 }
 
 {
@@ -2045,7 +2171,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-18"
+  "id": "libvirt-20"
 }
 
 {
@@ -2102,7 +2228,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-19"
+  "id": "libvirt-21"
 }
 
 {
@@ -2155,7 +2281,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-20"
+  "id": "libvirt-22"
 }
 
 {
@@ -2196,7 +2322,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-21"
+  "id": "libvirt-23"
 }
 
 {
@@ -2261,7 +2387,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-22"
+  "id": "libvirt-24"
 }
 
 {
@@ -2288,7 +2414,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-23"
+  "id": "libvirt-25"
 }
 
 {
@@ -2326,7 +2452,7 @@
       "type": "size"
     }
   ],
-  "id": "libvirt-24"
+  "id": "libvirt-26"
 }
 
 {
@@ -2380,7 +2506,7 @@
       "type": "uint64"
     }
   ],
-  "id": "libvirt-25"
+  "id": "libvirt-27"
 }
 
 {
@@ -2440,7 +2566,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-26"
+  "id": "libvirt-28"
 }
 
 {
@@ -2454,7 +2580,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-27"
+  "id": "libvirt-29"
 }
 
 {
@@ -2501,7 +2627,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-28"
+  "id": "libvirt-30"
 }
 
 {
@@ -2534,7 +2660,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-29"
+  "id": "libvirt-31"
 }
 
 {
@@ -2607,7 +2733,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-30"
+  "id": "libvirt-32"
 }
 
 {
@@ -2680,7 +2806,7 @@
       "type": "uint32"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-33"
 }
 
 {
@@ -2766,7 +2892,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-34"
 }
 
 {
@@ -2843,7 +2969,7 @@
       "name": "gpe0_blk"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-35"
 }
 
 
@@ -2944,11 +3070,11 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-36"
 }
 
 {
-  "id": "libvirt-35",
+  "id": "libvirt-37",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-balloon-ccw' not found"
@@ -2991,7 +3117,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-38"
 }
 
 {
@@ -3120,7 +3246,7 @@
       "cpu-max": 255
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-39"
 }
 
 {
@@ -3210,7 +3336,7 @@
       "name": "qemu64"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-40"
 }
 
 {
@@ -3218,21 +3344,21 @@
     "enabled": false,
     "present": true
   },
-  "id": "libvirt-39"
+  "id": "libvirt-41"
 }
 
 {
   "return": [
     "tpm-tis"
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-42"
 }
 
 {
   "return": [
     "passthrough"
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-43"
 }
 
 {
@@ -4244,7 +4370,7 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-44"
 }
 
 {
@@ -4274,5 +4400,5 @@
       "capability": "events"
     }
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-45"
 }
-- 
2.5.5




More information about the libvir-list mailing list