summaryrefslogtreecommitdiffstats
path: root/drivers/s390/block
diff options
context:
space:
mode:
authorStefan Haberland <stefan.haberland@de.ibm.com>2015-12-15 10:16:43 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2016-02-11 13:05:53 +0100
commit020bf042e5b397479c1174081b935d0ff15d1a64 (patch)
tree27defbf6bd87d61e03eab2f7b888e1de1f7ebdf3 /drivers/s390/block
parents390: fix DAT off memory access, e.g. on kdump (diff)
downloadlinux-020bf042e5b397479c1174081b935d0ff15d1a64.tar.xz
linux-020bf042e5b397479c1174081b935d0ff15d1a64.zip
s390/dasd: prevent incorrect length error under z/VM after PAV changes
The channel checks the specified length and the provided amount of data for CCWs and provides an incorrect length error if the size does not match. Under z/VM with simulation activated the length may get changed. Having the suppress length indication bit set is stated as good CCW coding practice and avoids errors under z/VM. Cc: stable@vger.kernel.org Signed-off-by: Stefan Haberland <stefan.haberland@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390/block')
-rw-r--r--drivers/s390/block/dasd_alias.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/s390/block/dasd_alias.c b/drivers/s390/block/dasd_alias.c
index 184b1dbeb554..4ff914c0f13c 100644
--- a/drivers/s390/block/dasd_alias.c
+++ b/drivers/s390/block/dasd_alias.c
@@ -723,7 +723,7 @@ static int reset_summary_unit_check(struct alias_lcu *lcu,
ASCEBC((char *) &cqr->magic, 4);
ccw = cqr->cpaddr;
ccw->cmd_code = DASD_ECKD_CCW_RSCK;
- ccw->flags = 0 ;
+ ccw->flags = CCW_FLAG_SLI;
ccw->count = 16;
ccw->cda = (__u32)(addr_t) cqr->data;
((char *)cqr->data)[0] = reason;