From: Stefan Haberland Date: Tue, 30 Jul 2013 08:49:43 +0000 (+0200) Subject: s390/dasd: fix hanging devices after path events X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=0e003b709ef9f4c43f6338834526c3556ea71b19;p=linux.git s390/dasd: fix hanging devices after path events The processing of the dasd_block tasklet may have been interrupted by a path event. Restart the dasd tasklets in sleep_on_immediately function. Signed-off-by: Stefan Haberland Signed-off-by: Martin Schwidefsky --- diff --git a/drivers/s390/block/dasd.c b/drivers/s390/block/dasd.c index 17150a7789843..451bf99582ff0 100644 --- a/drivers/s390/block/dasd.c +++ b/drivers/s390/block/dasd.c @@ -2392,6 +2392,12 @@ int dasd_sleep_on_immediatly(struct dasd_ccw_req *cqr) rc = cqr->intrc; else rc = -EIO; + + /* kick tasklets */ + dasd_schedule_device_bh(device); + if (device->block) + dasd_schedule_block_bh(device->block); + return rc; }