aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVineeth Vijayan <vneethv@linux.ibm.com>2023-05-02 11:12:42 +0200
committerAlexander Gordeev <agordeev@linux.ibm.com>2023-05-15 14:20:14 +0200
commitb1b0d5aec1cf9f9a900a14964f869c68688d923e (patch)
tree6ec19fea66d2584281ba5c230c254bcf6eddb5a7
parent124acbe275040809abfa5fbe6e25790a53d5a161 (diff)
downloadlinux-b1b0d5aec1cf9f9a900a14964f869c68688d923e.tar.gz
s390/cio: include subchannels without devices also for evaluation
Currently when the new channel-path is enabled, we do evaluation only on the subchannels with a device connected on it. This is because, in the past, if the device in the subchannel is not working or not available, we used to unregister the subchannels. But, from the 'commit 2297791c92d0 ("s390/cio: dont unregister subchannel from child-drivers")' we allow subchannels with or without an active device connected on it. So, when we do the io_subchannel_verify, make sure that, we are evaluating the subchannels without any device too. Fixes: 2297791c92d0 ("s390/cio: dont unregister subchannel from child-drivers") Reported-by: Boris Fiuczynski <fiuczy@linux.ibm.com> Signed-off-by: Vineeth Vijayan <vneethv@linux.ibm.com> Reviewed-by: Peter Oberparleiter <oberpar@linux.ibm.com> Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
-rw-r--r--drivers/s390/cio/device.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/s390/cio/device.c b/drivers/s390/cio/device.c
index 8eb089b99cde92..d5c43e9b512894 100644
--- a/drivers/s390/cio/device.c
+++ b/drivers/s390/cio/device.c
@@ -1111,6 +1111,8 @@ static void io_subchannel_verify(struct subchannel *sch)
cdev = sch_get_cdev(sch);
if (cdev)
dev_fsm_event(cdev, DEV_EVENT_VERIFY);
+ else
+ css_schedule_eval(sch->schid);
}
static void io_subchannel_terminate_path(struct subchannel *sch, u8 mask)