mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-16 16:54:20 +08:00
[S390] cio: Call cancel_halt_clear even when actl == 0.
The subchannel may just be status pending, even with actl == 0. We must go through the cancel_halt_clear procedure to put the subchannel into a defined state. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
7c8427c3fa
commit
2470b648e1
@ -144,8 +144,8 @@ ccw_device_cancel_halt_clear(struct ccw_device *cdev)
|
||||
ret = stsch(sch->schid, &sch->schib);
|
||||
if (ret || !sch->schib.pmcw.dnv)
|
||||
return -ENODEV;
|
||||
if (!sch->schib.pmcw.ena || sch->schib.scsw.actl == 0)
|
||||
/* Not operational or no activity -> done. */
|
||||
if (!sch->schib.pmcw.ena)
|
||||
/* Not operational -> done. */
|
||||
return 0;
|
||||
/* Stage 1: cancel io. */
|
||||
if (!(sch->schib.scsw.actl & SCSW_ACTL_HALT_PEND) &&
|
||||
|
Loading…
Reference in New Issue
Block a user