summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2020-03-27 09:30:09 +0100
committerJens Axboe <axboe@kernel.dk>2020-03-27 10:23:43 -0600
commit8d96a1117c21faad4f88d3d2df8c62712b3f495d (patch)
treec7acec60971bddff228bc3ba534d76f9111535ad
parent2f227bb99934a4faa6dfe2cda2594bce8897a323 (diff)
null_blk: use blk_mq_init_queue_data
Use the new blk_mq_init_queue_data instead of open coding the queue allocation and initialization. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jens Axboe <axboe@kernel.dk>
-rw-r--r--drivers/block/null_blk_main.c23
1 files changed, 1 insertions, 22 deletions
diff --git a/drivers/block/null_blk_main.c b/drivers/block/null_blk_main.c
index 89bb16a99007..2f864782550d 100644
--- a/drivers/block/null_blk_main.c
+++ b/drivers/block/null_blk_main.c
@@ -1698,27 +1698,6 @@ static bool null_setup_fault(void)
return true;
}
-/*
- * This function is identical to blk_mq_init_queue() except that it sets
- * queuedata before .init_hctx is called.
- */
-static struct request_queue *nullb_alloc_queue(struct nullb *nullb)
-{
- struct request_queue *uninit_q, *q;
- struct blk_mq_tag_set *set = nullb->tag_set;
-
- uninit_q = blk_alloc_queue_node(GFP_KERNEL, set->numa_node);
- if (!uninit_q)
- return ERR_PTR(-ENOMEM);
-
- uninit_q->queuedata = nullb;
- q = blk_mq_init_allocated_queue(set, uninit_q, false);
- if (IS_ERR(q))
- blk_cleanup_queue(uninit_q);
-
- return q;
-}
-
static int null_add_dev(struct nullb_device *dev)
{
struct nullb *nullb;
@@ -1758,7 +1737,7 @@ static int null_add_dev(struct nullb_device *dev)
goto out_cleanup_queues;
nullb->tag_set->timeout = 5 * HZ;
- nullb->q = nullb_alloc_queue(nullb);
+ nullb->q = blk_mq_init_queue_data(nullb->tag_set, nullb);
if (IS_ERR(nullb->q)) {
rv = -ENOMEM;
goto out_cleanup_tags;