|
@@ -1699,8 +1699,11 @@ static void __dasd_process_request_queue(struct dasd_block *block)
|
|
|
* for that. State DASD_STATE_ONLINE is normal block device
|
|
|
* operation.
|
|
|
*/
|
|
|
- if (basedev->state < DASD_STATE_READY)
|
|
|
+ if (basedev->state < DASD_STATE_READY) {
|
|
|
+ while ((req = blk_fetch_request(block->request_queue)))
|
|
|
+ __blk_end_request_all(req, -EIO);
|
|
|
return;
|
|
|
+ }
|
|
|
/* Now we try to fetch requests from the request queue */
|
|
|
while (!blk_queue_plugged(queue) && (req = blk_peek_request(queue))) {
|
|
|
if (basedev->features & DASD_FEATURE_READONLY &&
|