Skip to content

Commit

Permalink
null_blk: use blk_mq_init_queue_data
Browse files Browse the repository at this point in the history
Use the new blk_mq_init_queue_data instead of open coding the queue
allocation and initialization.

Reviewed-by: Johannes Thumshirn <[email protected]>
Signed-off-by: Christoph Hellwig <[email protected]>
Signed-off-by: Jens Axboe <[email protected]>
  • Loading branch information
Christoph Hellwig authored and axboe committed Mar 27, 2020
1 parent 2f227bb commit 8d96a11
Showing 1 changed file with 1 addition and 22 deletions.
23 changes: 1 addition & 22 deletions drivers/block/null_blk_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down Expand Up @@ -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;
Expand Down

0 comments on commit 8d96a11

Please sign in to comment.