Commit b48fda09 authored by Jens Axboe's avatar Jens Axboe

blk-mq-sched: check for successful allocation before assigning tag

We don't trigger this from the normal IO path, since we always use
blocking allocations from there. But Bart saw it testing multipath
dm, since that is a heavy user of atomic request allocations in
the map and clone path.
Reported-by: default avatarBart Van Assche <bart.vanassche@sandisk.com>
Signed-off-by: default avatarJens Axboe <axboe@fb.com>
parent 5a797e00
...@@ -134,7 +134,8 @@ struct request *blk_mq_sched_get_request(struct request_queue *q, ...@@ -134,7 +134,8 @@ struct request *blk_mq_sched_get_request(struct request_queue *q,
rq = __blk_mq_alloc_request(data, op); rq = __blk_mq_alloc_request(data, op);
} else { } else {
rq = __blk_mq_alloc_request(data, op); rq = __blk_mq_alloc_request(data, op);
data->hctx->tags->rqs[rq->tag] = rq; if (rq)
data->hctx->tags->rqs[rq->tag] = rq;
} }
if (rq) { if (rq) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment