nullb: use blk_mq_alloc_disk
authorChristoph Hellwig <hch@lst.de>
Tue, 4 May 2021 15:54:54 +0000 (17:54 +0200)
committerChristoph Hellwig <hch@lst.de>
Wed, 2 Jun 2021 05:49:26 +0000 (08:49 +0300)
Use blk_mq_alloc_disk and blk_cleanup_disk to simplify the gendisk and
request_queue allocation.

Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/block/null_blk/main.c

index d8e098f1e5b543d3b30593922562ce17a998bfa5..74fb2ec63219e5f2478a6b17597f30ccc258c0d9 100644 (file)
@@ -1851,13 +1851,12 @@ static int null_add_dev(struct nullb_device *dev)
 
                rv = -ENOMEM;
                nullb->tag_set->timeout = 5 * HZ;
-               nullb->q = blk_mq_init_queue_data(nullb->tag_set, nullb);
-               if (IS_ERR(nullb->q))
-                       goto out_cleanup_tags;
-               nullb->disk = alloc_disk_node(1, nullb->dev->home_node);
-               if (!nullb->disk)
+               nullb->disk = blk_mq_alloc_disk(nullb->tag_set, nullb);
+               if (IS_ERR(nullb->disk)) {
+                       rv = PTR_ERR(nullb->disk);
                        goto out_cleanup_disk;
-               nullb->disk->queue = nullb->q;
+               }
+               nullb->q = nullb->disk->queue;
        } else if (dev->queue_mode == NULL_Q_BIO) {
                rv = -ENOMEM;
                nullb->disk = blk_alloc_disk(nullb->dev->home_node);