Commit ef09ae75 authored by Stefan Haberland's avatar Stefan Haberland Committed by Sasha Levin

s390/dasd: prevent incorrect length error under z/VM after PAV changes

[ Upstream commit 020bf042 ]

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: default avatarStefan Haberland <stefan.haberland@de.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: default avatarSasha Levin <sasha.levin@oracle.com>
parent 0c7c5f3e
...@@ -722,7 +722,7 @@ static int reset_summary_unit_check(struct alias_lcu *lcu, ...@@ -722,7 +722,7 @@ static int reset_summary_unit_check(struct alias_lcu *lcu,
ASCEBC((char *) &cqr->magic, 4); ASCEBC((char *) &cqr->magic, 4);
ccw = cqr->cpaddr; ccw = cqr->cpaddr;
ccw->cmd_code = DASD_ECKD_CCW_RSCK; ccw->cmd_code = DASD_ECKD_CCW_RSCK;
ccw->flags = 0 ; ccw->flags = CCW_FLAG_SLI;
ccw->count = 16; ccw->count = 16;
ccw->cda = (__u32)(addr_t) cqr->data; ccw->cda = (__u32)(addr_t) cqr->data;
((char *)cqr->data)[0] = reason; ((char *)cqr->data)[0] = reason;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment