]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: Add capability for virtio-scsi iothreads
authorJohn Ferlan <jferlan@redhat.com>
Wed, 20 Apr 2016 18:43:04 +0000 (14:43 -0400)
committerJohn Ferlan <jferlan@redhat.com>
Tue, 3 May 2016 18:08:05 +0000 (14:08 -0400)
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@redhat.com>
15 files changed:
src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
tests/qemucapabilitiesdata/caps_1.2.2-1.replies
tests/qemucapabilitiesdata/caps_1.3.1-1.replies
tests/qemucapabilitiesdata/caps_1.4.2-1.replies
tests/qemucapabilitiesdata/caps_1.5.3-1.replies
tests/qemucapabilitiesdata/caps_1.6.0-1.replies
tests/qemucapabilitiesdata/caps_1.6.50-1.replies
tests/qemucapabilitiesdata/caps_2.1.1-1.replies
tests/qemucapabilitiesdata/caps_2.4.0-1.caps
tests/qemucapabilitiesdata/caps_2.4.0-1.replies
tests/qemucapabilitiesdata/caps_2.5.0-1.caps
tests/qemucapabilitiesdata/caps_2.5.0-1.replies
tests/qemucapabilitiesdata/caps_2.6.0-1.caps
tests/qemucapabilitiesdata/caps_2.6.0-1.replies

index 748ec3160bce054a6d52de49ee03c53f804b3627..65c3d6989cd82e3b52589501665ea8d774a76680 100644 (file)
@@ -327,6 +327,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
               "pxb-pcie", /* 220 */
               "device-tray-moved-event",
               "nec-usb-xhci-ports",
+              "virtio-scsi-pci.iothread",
     );
 
 
@@ -1606,6 +1607,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 },
@@ -1701,10 +1706,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,
index d747fa9a73feb178d45f20fd0fd9cf490cda79c8..e7d0a605c7f0682ee98cc9185515581c941edc20 100644 (file)
@@ -358,6 +358,7 @@ typedef enum {
     QEMU_CAPS_DEVICE_PXB_PCIE, /* -device pxb-pcie */
     QEMU_CAPS_DEVICE_TRAY_MOVED, /* DEVICE_TRAY_MOVED event */
     QEMU_CAPS_NEC_USB_XHCI_PORTS, /* -device nec-usb-xhci.p3 ports setting */
+    QEMU_CAPS_VIRTIO_SCSI_IOTHREAD, /* virtio-scsi-{pci,ccw}.iothread */
 
     QEMU_CAPS_LAST /* this must always be the last item */
 } virQEMUCapsFlags;
index 2aa13f103021d9bf408b262547ba6123f1aa3625..cb71b6ee7ac319169756cf2f269063f612a3f63a 100644 (file)
     "id": "libvirt-10",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-blk-ccw' not found"
+        "desc": "Device 'virtio-scsi-pci' not found"
     }
 }
 
     "id": "libvirt-11",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-net-ccw' not found"
+        "desc": "Device 'virtio-blk-ccw' not found"
     }
 }
 
     "id": "libvirt-12",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-blk-s390' not found"
+        "desc": "Device 'virtio-net-ccw' not found"
     }
 }
 
     "id": "libvirt-13",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-net-s390' not found"
+        "desc": "Device 'virtio-scsi-ccw' not found"
     }
 }
 
     "id": "libvirt-14",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'pci-assign' not found"
+        "desc": "Device 'virtio-blk-s390' not found"
     }
 }
 
     "id": "libvirt-15",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'kvm-pci-assign' not found"
+        "desc": "Device 'virtio-net-s390' not found"
     }
 }
 
 {
     "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"
             "type": "drive"
         }
     ],
-    "id": "libvirt-17"
+    "id": "libvirt-19"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-18"
+    "id": "libvirt-20"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-19"
+    "id": "libvirt-21"
 }
 
 {
-    "id": "libvirt-20",
+    "id": "libvirt-22",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-redir' not found"
             "type": "uint32"
         }
     ],
-    "id": "libvirt-21"
+    "id": "libvirt-23"
 }
 
 {
             "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"
             "type": "drive"
         }
     ],
-    "id": "libvirt-25"
+    "id": "libvirt-27"
 }
 
 {
             "type": "hex32"
         }
     ],
-    "id": "libvirt-26"
+    "id": "libvirt-28"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-27"
+    "id": "libvirt-29"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
-    "id": "libvirt-31",
+    "id": "libvirt-33",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
             "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"
 }
 
 {
-    "id": "libvirt-35",
+    "id": "libvirt-37",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-balloon-device' not found"
             "name": "none"
         }
     ],
-    "id": "libvirt-36"
+    "id": "libvirt-38"
 }
 
 {
             "name": "Opteron_G4"
         }
     ],
-    "id": "libvirt-37"
+    "id": "libvirt-39"
 }
 
 {
         "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"
 }
 
 {
-    "id": "libvirt-40",
+    "id": "libvirt-42",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-tpm-types has not been found"
 }
 
 {
-    "id": "libvirt-41",
+    "id": "libvirt-43",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-command-line-options has not been found"
             "state": false
         }
     ],
-    "id": "libvirt-42"
+    "id": "libvirt-44"
 }
index d130ad7811de8023004e0522dcfb9d0b466f1c1c..bf5195227cbb9b5b93113a45edd5b61e9c018fcd 100644 (file)
     "id": "libvirt-11",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-blk-ccw' not found"
+        "desc": "Device 'virtio-scsi-pci' not found"
     }
 }
 
     "id": "libvirt-12",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-net-ccw' not found"
+        "desc": "Device 'virtio-blk-ccw' not found"
     }
 }
 
     "id": "libvirt-13",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-blk-s390' not found"
+        "desc": "Device 'virtio-net-ccw' not found"
     }
 }
 
     "id": "libvirt-14",
     "error": {
         "class": "DeviceNotFound",
-        "desc": "Device 'virtio-net-s390' not found"
+        "desc": "Device 'virtio-scsi-ccw' not found"
     }
 }
 
 {
     "id": "libvirt-15",
+    "error": {
+        "class": "DeviceNotFound",
+        "desc": "Device 'virtio-blk-s390' not found"
+    }
+}
+
+{
+    "id": "libvirt-16",
+    "error": {
+        "class": "DeviceNotFound",
+        "desc": "Device 'virtio-net-s390' not found"
+    }
+}
+
+{
+    "id": "libvirt-17",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'pci-assign' not found"
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-16"
+    "id": "libvirt-18"
 }
 
 {
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-17"
+    "id": "libvirt-19"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-18"
+    "id": "libvirt-20"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-19"
+    "id": "libvirt-21"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-20"
+    "id": "libvirt-22"
 }
 
 {
-    "id": "libvirt-21",
+    "id": "libvirt-23",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-redir' not found"
             "type": "uint32"
         }
     ],
-    "id": "libvirt-22"
+    "id": "libvirt-24"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-23"
+    "id": "libvirt-25"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-24"
+    "id": "libvirt-26"
 }
 
 {
             "type": "uint64"
         }
     ],
-    "id": "libvirt-25"
+    "id": "libvirt-27"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-26"
+    "id": "libvirt-28"
 }
 
 {
             "type": "hex32"
         }
     ],
-    "id": "libvirt-27"
+    "id": "libvirt-29"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-31"
+    "id": "libvirt-33"
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
 }
 
 {
-    "id": "libvirt-33",
+    "id": "libvirt-35",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
             "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"
 }
 
 {
-    "id": "libvirt-36",
+    "id": "libvirt-38",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-balloon-device' not found"
             "name": "none"
         }
     ],
-    "id": "libvirt-37"
+    "id": "libvirt-39"
 }
 
 {
             "name": "Opteron_G5"
         }
     ],
-    "id": "libvirt-38"
+    "id": "libvirt-40"
 }
 
 {
         "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"
 }
 
 {
-    "id": "libvirt-41",
+    "id": "libvirt-43",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-tpm-types has not been found"
 }
 
 {
-    "id": "libvirt-42",
+    "id": "libvirt-44",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-command-line-options has not been found"
             "state": false
         }
     ],
-    "id": "libvirt-43"
+    "id": "libvirt-45"
 }
index 93e705f348ca04891f9910ecf57d452d530fec5d..ed6dfb1c87317ff18e1ee15cae0a9773e281a80b 100644 (file)
 }
 
 {
-    "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"
 }
 
 {
-    "id": "libvirt-12",
+    "id": "libvirt-13",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-ccw' not found"
 }
 
 {
-    "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"
 }
 
 {
-    "id": "libvirt-14",
+    "id": "libvirt-16",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-s390' not found"
 }
 
 {
-    "id": "libvirt-15",
+    "id": "libvirt-17",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'pci-assign' not found"
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-16"
+    "id": "libvirt-18"
 }
 
 {
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-17"
+    "id": "libvirt-19"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-18"
+    "id": "libvirt-20"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-19"
+    "id": "libvirt-21"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-20"
+    "id": "libvirt-22"
 }
 
 {
-    "id": "libvirt-21",
+    "id": "libvirt-23",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-redir' not found"
             "type": "uint32"
         }
     ],
-    "id": "libvirt-22"
+    "id": "libvirt-24"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-23"
+    "id": "libvirt-25"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-24"
+    "id": "libvirt-26"
 }
 
 {
             "type": "uint64"
         }
     ],
-    "id": "libvirt-25"
+    "id": "libvirt-27"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-26"
+    "id": "libvirt-28"
 }
 
 {
             "type": "hex32"
         }
     ],
-    "id": "libvirt-27"
+    "id": "libvirt-29"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-31"
+    "id": "libvirt-33"
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
 }
 
 {
-    "id": "libvirt-33",
+    "id": "libvirt-35",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
             "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"
 }
 
 {
-    "id": "libvirt-36",
+    "id": "libvirt-38",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-balloon-device' not found"
             "name": "none"
         }
     ],
-    "id": "libvirt-37"
+    "id": "libvirt-39"
 }
 
 {
             "name": "qemu64"
         }
     ],
-    "id": "libvirt-38"
+    "id": "libvirt-40"
 }
 
 {
         "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"
 }
 
 {
-    "id": "libvirt-41",
+    "id": "libvirt-43",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-tpm-types has not been found"
 }
 
 {
-    "id": "libvirt-42",
+    "id": "libvirt-44",
     "error": {
         "class": "CommandNotFound",
         "desc": "The command query-command-line-options has not been found"
             "state": false
         }
     ],
-    "id": "libvirt-43"
+    "id": "libvirt-45"
 }
index 878d5efec4126375473552b334961eb849f5c733..99848cdfa02298675065d7c4cca814ea2e8fd4e4 100644 (file)
 }
 
 {
-    "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"
 }
 
 {
-    "id": "libvirt-12",
+    "id": "libvirt-13",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-ccw' not found"
 }
 
 {
-    "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"
 }
 
 {
-    "id": "libvirt-14",
+    "id": "libvirt-16",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-s390' not found"
 }
 
 {
-    "id": "libvirt-15",
+    "id": "libvirt-17",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'pci-assign' not found"
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-16"
+    "id": "libvirt-18"
 }
 
 {
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-17"
+    "id": "libvirt-19"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-18"
+    "id": "libvirt-20"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-19"
+    "id": "libvirt-21"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-20"
+    "id": "libvirt-22"
 }
 
 {
-    "id": "libvirt-21",
+    "id": "libvirt-23",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-redir' not found"
             "type": "uint32"
         }
     ],
-    "id": "libvirt-22"
+    "id": "libvirt-24"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-23"
+    "id": "libvirt-25"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-24"
+    "id": "libvirt-26"
 }
 
 {
             "type": "uint64"
         }
     ],
-    "id": "libvirt-25"
+    "id": "libvirt-27"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-26"
+    "id": "libvirt-28"
 }
 
 {
             "type": "hex32"
         }
     ],
-    "id": "libvirt-27"
+    "id": "libvirt-29"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-31"
+    "id": "libvirt-33"
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
 }
 
 {
-    "id": "libvirt-33",
+    "id": "libvirt-35",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
             "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"
 {
     "return": [
     ],
-    "id": "libvirt-36"
+    "id": "libvirt-38"
 }
 
 {
             "cpu-max": 1
         }
     ],
-    "id": "libvirt-37"
+    "id": "libvirt-39"
 }
 
 {
             "name": "qemu64"
         }
     ],
-    "id": "libvirt-38"
+    "id": "libvirt-40"
 }
 
 {
         "enabled": false,
         "present": true
     },
-    "id": "libvirt-39"
+    "id": "libvirt-41"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-40"
+    "id": "libvirt-42"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-41"
+    "id": "libvirt-43"
 }
 
 {
             "option": "drive"
         }
     ],
-    "id": "libvirt-42"
+    "id": "libvirt-44"
 }
 
 {
             "state": false
         }
     ],
-    "id": "libvirt-43"
+    "id": "libvirt-45"
 }
index 070bc6205442f5773f10d3c019639ddedbf96d46..f7c3ef451a3b16121896488a2db712077d96e240 100644 (file)
 }
 
 {
-    "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"
 }
 
 {
-    "id": "libvirt-12",
+    "id": "libvirt-13",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-ccw' not found"
 }
 
 {
-    "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"
 }
 
 {
-    "id": "libvirt-14",
+    "id": "libvirt-15",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-s390' not found"
 }
 
 {
-    "id": "libvirt-15",
+    "id": "libvirt-17",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'pci-assign' not found"
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-16"
+    "id": "libvirt-18"
 }
 
 {
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-17"
+    "id": "libvirt-19"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-18"
+    "id": "libvirt-20"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-19"
+    "id": "libvirt-21"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-20"
+    "id": "libvirt-22"
 }
 
 {
-    "id": "libvirt-21",
+    "id": "libvirt-23",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-redir' not found"
             "type": "uint32"
         }
     ],
-    "id": "libvirt-22"
+    "id": "libvirt-24"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-23"
+    "id": "libvirt-25"
 }
 
 {
             "type": "size"
         }
     ],
-    "id": "libvirt-24"
+    "id": "libvirt-26"
 }
 
 {
             "type": "uint64"
         }
     ],
-    "id": "libvirt-25"
+    "id": "libvirt-27"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-26"
+    "id": "libvirt-28"
 }
 
 {
             "type": "hex32"
         }
     ],
-    "id": "libvirt-27"
+    "id": "libvirt-29"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-31"
+    "id": "libvirt-33"
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
 }
 
 {
-    "id": "libvirt-33",
+    "id": "libvirt-35",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
             "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"
 {
     "return": [
     ],
-    "id": "libvirt-36"
+    "id": "libvirt-38"
 }
 
 {
             "cpu-max": 1
         }
     ],
-    "id": "libvirt-37"
+    "id": "libvirt-39"
 }
 
 {
             "name": "qemu64"
         }
     ],
-    "id": "libvirt-38"
+    "id": "libvirt-40"
 }
 
 {
         "enabled": false,
         "present": true
     },
-    "id": "libvirt-39"
+    "id": "libvirt-41"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-40"
+    "id": "libvirt-42"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-41"
+    "id": "libvirt-43"
 }
 
 {
             "option": "drive"
         }
     ],
-    "id": "libvirt-42"
+    "id": "libvirt-44"
 }
 
 {
             "state": false
         }
     ],
-    "id": "libvirt-43"
+    "id": "libvirt-45"
 }
index 0a37e12db601964146cb270b95f6c8af746a28e7..d23249c733c7e087f734e80c1304136fc2b0d8bc 100644 (file)
 }
 
 {
-    "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"
 }
 
 {
-    "id": "libvirt-12",
+    "id": "libvirt-13",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-ccw' not found"
 }
 
 {
-    "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"
 }
 
 {
-    "id": "libvirt-14",
+    "id": "libvirt-16",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-net-s390' not found"
 }
 
 {
-    "id": "libvirt-15",
+    "id": "libvirt-17",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'pci-assign' not found"
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-16"
+    "id": "libvirt-18"
 }
 
 {
             "type": "pci-host-devaddr"
         }
     ],
-    "id": "libvirt-17"
+    "id": "libvirt-19"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-18"
+    "id": "libvirt-20"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-19"
+    "id": "libvirt-21"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-20"
+    "id": "libvirt-22"
 }
 
 {
-    "id": "libvirt-21",
+    "id": "libvirt-23",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-redir' not found"
 }
 
 {
-    "id": "libvirt-22",
+    "id": "libvirt-24",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'usb-host' not found"
             "type": "drive"
         }
     ],
-    "id": "libvirt-23"
+    "id": "libvirt-25"
 }
 
 {
             "type": "size"
         }
     ],
-    "id": "libvirt-24"
+    "id": "libvirt-26"
 }
 
 {
             "type": "uint64"
         }
     ],
-    "id": "libvirt-25"
+    "id": "libvirt-27"
 }
 
 {
             "type": "drive"
         }
     ],
-    "id": "libvirt-26"
+    "id": "libvirt-28"
 }
 
 {
             "type": "hex32"
         }
     ],
-    "id": "libvirt-27"
+    "id": "libvirt-29"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-31"
+    "id": "libvirt-33"
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
 }
 
 {
-    "id": "libvirt-33",
+    "id": "libvirt-35",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
             "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"
 {
     "return": [
     ],
-    "id": "libvirt-36"
+    "id": "libvirt-38"
 }
 
 {
             "cpu-max": 1
         }
     ],
-    "id": "libvirt-37"
+    "id": "libvirt-39"
 }
 
 {
             "name": "qemu64"
         }
     ],
-    "id": "libvirt-38"
+    "id": "libvirt-40"
 }
 
 {
         "enabled": false,
         "present": true
     },
-    "id": "libvirt-39"
+    "id": "libvirt-41"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-40"
+    "id": "libvirt-42"
 }
 
 {
     "return": [
     ],
-    "id": "libvirt-41"
+    "id": "libvirt-43"
 }
 
 {
             "option": "drive"
         }
     ],
-    "id": "libvirt-42"
+    "id": "libvirt-44"
 }
 
 {
             "state": false
         }
     ],
-    "id": "libvirt-43"
+    "id": "libvirt-45"
 }
index 02f1f4eefa311169e96130de06d8ff9023a9192d..6c10ea9abe7454c127c7dc07600d6b4f6965a535 100644 (file)
 }
 
 {
-  "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"
 }
 
 {
-  "id": "libvirt-12",
+  "id": "libvirt-13",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-ccw' not found"
 }
 
 {
-  "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"
 }
 
 {
-  "id": "libvirt-14",
+  "id": "libvirt-16",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-s390' not found"
 }
 
 {
-  "id": "libvirt-15",
+  "id": "libvirt-17",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'pci-assign' not found"
       "type": "pci-host-devaddr"
     }
   ],
-  "id": "libvirt-16"
+  "id": "libvirt-18"
 }
 
 {
       "type": "pci-host-devaddr"
     }
   ],
-  "id": "libvirt-17"
+  "id": "libvirt-19"
 }
 
 {
       "type": "drive"
     }
   ],
-  "id": "libvirt-18"
+  "id": "libvirt-20"
 }
 
 {
       "type": "drive"
     }
   ],
-  "id": "libvirt-19"
+  "id": "libvirt-21"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-20"
+  "id": "libvirt-22"
 }
 
 {
       "type": "chr"
     }
   ],
-  "id": "libvirt-21"
+  "id": "libvirt-23"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-22"
+  "id": "libvirt-24"
 }
 
 {
       "type": "drive"
     }
   ],
-  "id": "libvirt-23"
+  "id": "libvirt-25"
 }
 
 {
       "type": "size"
     }
   ],
-  "id": "libvirt-24"
+  "id": "libvirt-26"
 }
 
 {
       "type": "uint64"
     }
   ],
-  "id": "libvirt-25"
+  "id": "libvirt-27"
 }
 
 {
       "type": "drive"
     }
   ],
-  "id": "libvirt-26"
+  "id": "libvirt-28"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-27"
+  "id": "libvirt-29"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-28"
+    "id": "libvirt-30"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-29"
+    "id": "libvirt-31"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-30"
+    "id": "libvirt-32"
 }
 
 {
             "type": "uint32"
         }
     ],
-    "id": "libvirt-31"
+    "id": "libvirt-33"
 }
 
 {
-    "id": "libvirt-32",
+    "id": "libvirt-34",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'virtio-gpu-pci' not found"
 }
 
 {
-    "id": "libvirt-33",
+    "id": "libvirt-35",
     "error": {
         "class": "DeviceNotFound",
         "desc": "Device 'ICH9-LPC' not found"
       "type": "uint32"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-36"
 }
 
 {
-  "id": "libvirt-35",
+  "id": "libvirt-37",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-balloon-ccw' not found"
 {
   "return": [
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-38"
 }
 
 {
       "cpu-max": 255
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-39"
 }
 
 {
       "name": "qemu64"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-40"
 }
 
 {
     "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"
 }
 
 {
       "option": "drive"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-44"
 }
 
 {
       "capability": "zero-blocks"
     }
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-45"
 }
index ad999570630320938be97025738111602e340515..8009b8fba235795bc0d940a67fddcaad1409e3c9 100644 (file)
     <flag name='pxb'/>
     <flag name='device-tray-moved-event'/>
     <flag name='nec-usb-xhci-ports'/>
+    <flag name='virtio-scsi-pci.iothread'/>
   </qemuCaps>
index fd17a0b4ebd10ee6b35d8ee990c341fcefcb2edd..12feb27a7e68ac139fab6eb5f1b07430a7666f0c 100644 (file)
 }
 
 {
-  "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"
 }
 
 {
-  "id": "libvirt-12",
+  "id": "libvirt-13",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-ccw' not found"
 }
 
 {
-  "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"
 }
 
 {
-  "id": "libvirt-14",
+  "id": "libvirt-16",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-s390' not found"
 }
 
 {
-  "id": "libvirt-15",
+  "id": "libvirt-17",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'pci-assign' not found"
       "type": "str"
     }
   ],
-  "id": "libvirt-16"
+  "id": "libvirt-18"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-17"
+  "id": "libvirt-19"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-18"
+  "id": "libvirt-20"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-19"
+  "id": "libvirt-21"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-20"
+  "id": "libvirt-22"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-21"
+  "id": "libvirt-23"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-22"
+  "id": "libvirt-24"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-23"
+  "id": "libvirt-25"
 }
 
 {
       "type": "size"
     }
   ],
-  "id": "libvirt-24"
+  "id": "libvirt-26"
 }
 
 {
       "type": "uint64"
     }
   ],
-  "id": "libvirt-25"
+  "id": "libvirt-27"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-26"
+  "id": "libvirt-28"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-27"
+  "id": "libvirt-29"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-28"
+  "id": "libvirt-30"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-29"
+  "id": "libvirt-31"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-30"
+  "id": "libvirt-32"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-33"
 }
 
 {
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-34"
 }
 
 {
       "name": "gpe0_blk"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-35"
 }
 
 
       "type": "uint32"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-36"
 }
 
 {
-  "id": "libvirt-35",
+  "id": "libvirt-37",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-balloon-ccw' not found"
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-38"
 }
 
 {
       "cpu-max": 255
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-39"
 }
 
 {
       "name": "qemu64"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-40"
 }
 
 {
     "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"
 }
 
 {
       "option": "drive"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-44"
 }
 
 {
       "capability": "events"
     }
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
index 8de8395d12a2588476bf27ed70698f4923075f37..e13945547af211d3802c211daf2f5fd04aea7795 100644 (file)
     <flag name='pxb'/>
     <flag name='device-tray-moved-event'/>
     <flag name='nec-usb-xhci-ports'/>
+    <flag name='virtio-scsi-pci.iothread'/>
   </qemuCaps>
index f25b1053037841005a5338de99319500942df5e7..0d9409918e458ec0a210442b146016e01c75433b 100644 (file)
 }
 
 {
-  "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"
 }
 
 {
-  "id": "libvirt-12",
+  "id": "libvirt-13",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-ccw' not found"
 }
 
 {
-  "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"
 }
 
 {
-  "id": "libvirt-14",
+  "id": "libvirt-16",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-s390' not found"
 }
 
 {
-  "id": "libvirt-15",
+  "id": "libvirt-17",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'pci-assign' not found"
       "type": "str"
     }
   ],
-  "id": "libvirt-16"
+  "id": "libvirt-18"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-17"
+  "id": "libvirt-19"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-18"
+  "id": "libvirt-20"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-19"
+  "id": "libvirt-21"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-20"
+  "id": "libvirt-22"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-21"
+  "id": "libvirt-23"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-22"
+  "id": "libvirt-24"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-23"
+  "id": "libvirt-25"
 }
 
 {
       "type": "size"
     }
   ],
-  "id": "libvirt-24"
+  "id": "libvirt-26"
 }
 
 {
       "type": "uint64"
     }
   ],
-  "id": "libvirt-25"
+  "id": "libvirt-27"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-26"
+  "id": "libvirt-28"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-27"
+  "id": "libvirt-29"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-28"
+  "id": "libvirt-30"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-29"
+  "id": "libvirt-31"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-30"
+  "id": "libvirt-32"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-33"
 }
 
 {
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-34"
 }
 
 {
       "name": "gpe0_blk"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-35"
 }
 
 
       "type": "bool"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-36"
 }
 
 {
-  "id": "libvirt-35",
+  "id": "libvirt-37",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-balloon-ccw' not found"
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-38"
 }
 
 {
       "cpu-max": 255
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-39"
 }
 
 {
       "name": "qemu64"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-40"
 }
 
 {
     "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"
 }
 
 {
       "option": "drive"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-44"
 }
 
 {
       "capability": "events"
     }
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-45"
 }
index 84b96c777922dfc3978a3c505f16c58db94901da..ec5bfcce533de62407b4b8b465afc89c49b1d2bc 100644 (file)
     <flag name='pxb-pcie'/>
     <flag name='device-tray-moved-event'/>
     <flag name='nec-usb-xhci-ports'/>
+    <flag name='virtio-scsi-pci.iothread'/>
   </qemuCaps>
index d80fe31ff6119990ffe7f6cc925c3ff874f46093..583a5af1b96305f4757f52d402e72911e96d59b1 100644 (file)
 }
 
 {
-  "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"
 }
 
 {
-  "id": "libvirt-12",
+  "id": "libvirt-13",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-ccw' not found"
 }
 
 {
-  "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"
 }
 
 {
-  "id": "libvirt-14",
+  "id": "libvirt-16",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-net-s390' not found"
 }
 
 {
-  "id": "libvirt-15",
+  "id": "libvirt-17",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'pci-assign' not found"
       "type": "str"
     }
   ],
-  "id": "libvirt-16"
+  "id": "libvirt-18"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-17"
+  "id": "libvirt-19"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-18"
+  "id": "libvirt-20"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-19"
+  "id": "libvirt-21"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-20"
+  "id": "libvirt-22"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-21"
+  "id": "libvirt-23"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-22"
+  "id": "libvirt-24"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-23"
+  "id": "libvirt-25"
 }
 
 {
       "type": "size"
     }
   ],
-  "id": "libvirt-24"
+  "id": "libvirt-26"
 }
 
 {
       "type": "uint64"
     }
   ],
-  "id": "libvirt-25"
+  "id": "libvirt-27"
 }
 
 {
       "type": "str"
     }
   ],
-  "id": "libvirt-26"
+  "id": "libvirt-28"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-27"
+  "id": "libvirt-29"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-28"
+  "id": "libvirt-30"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-29"
+  "id": "libvirt-31"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-30"
+  "id": "libvirt-32"
 }
 
 {
       "type": "uint32"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-33"
 }
 
 {
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-34"
 }
 
 {
       "name": "gpe0_blk"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-35"
 }
 
 
       "type": "bool"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-36"
 }
 
 {
-  "id": "libvirt-35",
+  "id": "libvirt-37",
   "error": {
     "class": "DeviceNotFound",
     "desc": "Device 'virtio-balloon-ccw' not found"
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-38"
 }
 
 {
       "cpu-max": 255
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-39"
 }
 
 {
       "name": "qemu64"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-40"
 }
 
 {
     "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"
 }
 
 {
       "option": "drive"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-44"
 }
 
 {
       "capability": "events"
     }
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-45"
 }