summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSascha Silbe <silbe@linux.vnet.ibm.com>2016-07-11 13:00:36 +0200
committerCornelia Huck <cornelia.huck@de.ibm.com>2016-07-20 15:47:25 +0200
commit485dd69088b6ff6cf1c1b6b2c8157c1c9846992a (patch)
tree7fa1a652896de43d2b8b0f091275ab8a3b37172b
parent1ecfb24da987b862fd46a5b37292879952ea9e7d (diff)
downloadqemu-485dd69088b6ff6cf1c1b6b2c8157c1c9846992a.tar.gz
s390x/css: copy CCW format bit from ORB to SCSW
The CCW Format (F) flag of the Subchannel-Status Word (SCSW) indicates the format of the CCWs "associated with an I/O operation", i.e. the value of CCW-Format Control (F) bit of the Operation-Request Block (ORB). Copy the CCW format bit from the ORB to the SCSW so we correctly indicate the format of the CCWs to the guest. Signed-off-by: Sascha Silbe <silbe@linux.vnet.ibm.com> Reviewed-by: Halil Pasic <pasic@linux.vnet.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
-rw-r--r--hw/s390x/css.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/hw/s390x/css.c b/hw/s390x/css.c
index aa61773885..9e98f50868 100644
--- a/hw/s390x/css.c
+++ b/hw/s390x/css.c
@@ -524,6 +524,7 @@ static void sch_handle_start_func(SubchDev *sch, ORB *orb)
return;
}
sch->ccw_fmt_1 = !!(orb->ctrl0 & ORB_CTRL0_MASK_FMT);
+ s->flags |= (sch->ccw_fmt_1) ? SCSW_FLAGS_MASK_FMT : 0;
sch->ccw_no_data_cnt = 0;
suspend_allowed = !!(orb->ctrl0 & ORB_CTRL0_MASK_SPND);
} else {