On 07/09/2019 06:14 AM, Cornelia Huck wrote:
On Mon, 8 Jul 2019 16:10:38 -0400
Farhan Ali <alifm@xxxxxxxxxxxxx> wrote:
We now support CLEAR SUBCHANNEL and HALT SUBCHANNEL
via ccw_cmd_region.
Thanks, I forgot about this.
Fixes: d5afd5d135c8 ("vfio-ccw: add handling for async channel instructions")
I don't know if this warranted a fixes tag but I will add it.
Signed-off-by: Farhan Ali <alifm@xxxxxxxxxxxxx>
---
Documentation/s390/vfio-ccw.rst | 31 ++++++++++++++++++++++++++++---
1 file changed, 28 insertions(+), 3 deletions(-)
diff --git a/Documentation/s390/vfio-ccw.rst b/Documentation/s390/vfio-ccw.rst
index 1f6d0b5..40e4110 100644
--- a/Documentation/s390/vfio-ccw.rst
+++ b/Documentation/s390/vfio-ccw.rst
@@ -180,6 +180,13 @@ The process of how these work together.
add it to an iommu_group and a vfio_group. Then we could pass through
the mdev to a guest.
+
+VFIO-CCW Regions
+----------------
+
+The vfio-ccw driver exposes MMIO regions to accept requests from and return
+results to userspace.
+
vfio-ccw I/O region
-------------------
@@ -205,6 +212,25 @@ irb_area stores the I/O result.
ret_code stores a return code for each access of the region.
+This region is always available.
+
+vfio-ccw cmd region
+-------------------
+
+The vfio-ccw cmd region is used to accept asynchronous instructions
+from userspace.
+
+#define VFIO_CCW_ASYNC_CMD_HSCH (1 << 0)
+#define VFIO_CCW_ASYNC_CMD_CSCH (1 << 1)
+struct ccw_cmd_region {
+ __u32 command;
+ __u32 ret_code;
+} __packed;
+
+This region is exposed via region type VFIO_REGION_SUBTYPE_CCW_ASYNC_CMD.
+
+CLEAR SUBCHANNEL and HALT SUBCHANNEL currently uses this region.
"Currently, CLEAR SUBCHANNEL and HALT SUBCHANNEL use this region". ?
This sounds better to me :)
+
vfio-ccw operation details
--------------------------
@@ -306,9 +332,8 @@ Together with the corresponding work in QEMU, we can bring the passed
through DASD/ECKD device online in a guest now and use it as a block
device.
-While the current code allows the guest to start channel programs via
-START SUBCHANNEL, support for HALT SUBCHANNEL or CLEAR SUBCHANNEL is
-not yet implemented.
+The current code allows the guest to start channel programs via
+START SUBCHANNEL, and supports HALT SUBCHANNEL or CLEAR SUBCHANNEL.
"The current code allows the guest to start channel programs via START
SUBCHANNEL, and to issue HALT SUBCHANNEL and CLEAR SUBCHANNEL." ?
Same. I will update with the changes you requested.
vfio-ccw supports classic (command mode) channel I/O only. Transport
mode (HPF) is not supported.
Thanks for taking a look.
Thanks
Farhan