|
@@ -2445,10 +2445,8 @@ blk_qc_t generic_make_request(struct bio *bio)
|
|
|
flags = 0;
|
|
flags = 0;
|
|
|
if (bio->bi_opf & REQ_NOWAIT)
|
|
if (bio->bi_opf & REQ_NOWAIT)
|
|
|
flags = BLK_MQ_REQ_NOWAIT;
|
|
flags = BLK_MQ_REQ_NOWAIT;
|
|
|
- if (blk_queue_enter(q, flags) < 0) {
|
|
|
|
|
|
|
+ if (blk_queue_enter(q, flags) < 0)
|
|
|
enter_succeeded = false;
|
|
enter_succeeded = false;
|
|
|
- q = NULL;
|
|
|
|
|
- }
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
if (enter_succeeded) {
|
|
if (enter_succeeded) {
|
|
@@ -2479,6 +2477,7 @@ blk_qc_t generic_make_request(struct bio *bio)
|
|
|
bio_wouldblock_error(bio);
|
|
bio_wouldblock_error(bio);
|
|
|
else
|
|
else
|
|
|
bio_io_error(bio);
|
|
bio_io_error(bio);
|
|
|
|
|
+ q = NULL;
|
|
|
}
|
|
}
|
|
|
bio = bio_list_pop(&bio_list_on_stack[0]);
|
|
bio = bio_list_pop(&bio_list_on_stack[0]);
|
|
|
} while (bio);
|
|
} while (bio);
|