linux/drivers/s390
Alexandra Winter afb373ff3f s390/qeth: handle deferred cc1
The IO subsystem expects a driver to retry a ccw_device_start, when the
subsequent interrupt response block (irb) contains a deferred
condition code 1.

Symptoms before this commit:
On the read channel we always trigger the next read anyhow, so no
different behaviour here.
On the write channel we may experience timeout errors, because the
expected reply will never be received without the retry.
Other callers of qeth_send_control_data() may wrongly assume that the ccw
was successful, which may cause problems later.

Note that since
commit 2297791c92 ("s390/cio: dont unregister subchannel from child-drivers")
and
commit 5ef1dc40ff ("s390/cio: fix invalid -EBUSY on ccw_device_start")
deferred CC1s are much more likely to occur. See the commit message of the
latter for more background information.

Fixes: 2297791c92 ("s390/cio: dont unregister subchannel from child-drivers")
Signed-off-by: Alexandra Winter <wintera@linux.ibm.com>
Co-developed-by: Thorsten Winkler <twinkler@linux.ibm.com>
Signed-off-by: Thorsten Winkler <twinkler@linux.ibm.com>
Reviewed-by: Peter Oberparleiter <oberpar@linux.ibm.com>
Link: https://lore.kernel.org/r/20240321115337.3564694-1-wintera@linux.ibm.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2024-03-25 19:46:49 -07:00
..
block more s390 updates for 6.9 merge window 2024-03-19 11:38:27 -07:00
char more s390 updates for 6.9 merge window 2024-03-19 11:38:27 -07:00
cio s390/cio: use while (i--) pattern to clean up 2024-03-17 19:08:49 +01:00
crypto s390/zcrypt: make zcrypt_class constant 2024-03-13 09:23:49 +01:00
net s390/qeth: handle deferred cc1 2024-03-25 19:46:49 -07:00
scsi s390/zfcp: use new address translation helpers 2024-03-13 09:23:48 +01:00
virtio s390/virtio_ccw: avoid converting dma addresses / handles 2024-03-13 09:23:46 +01:00
Makefile