Re: [PATCH 20/30] nullb: use blk_mq_alloc_disk
- To: Christoph Hellwig <hch@lst.de>
- Cc: Jens Axboe <axboe@kernel.dk>, Justin Sanders <justin@coraid.com>, Denis Efremov <efremov@linux.com>, Josef Bacik <josef@toxicpanda.com>, Tim Waugh <tim@cyberelk.net>, Geoff Levand <geoff@infradead.org>, Ilya Dryomov <idryomov@gmail.com>, "Md. Haris Iqbal" <haris.iqbal@ionos.com>, Jack Wang <jinpu.wang@ionos.com>, "Michael S. Tsirkin" <mst@redhat.com>, Jason Wang <jasowang@redhat.com>, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, Roger Pau Monné <roger.pau@citrix.com>, Mike Snitzer <snitzer@redhat.com>, Maxim Levitsky <maximlevitsky@gmail.com>, Alex Dubov <oakad@yahoo.com>, Miquel Raynal <miquel.raynal@bootlin.com>, Richard Weinberger <richard@nod.at>, Vignesh Raghavendra <vigneshr@ti.com>, Heiko Carstens <hca@linux.ibm.com>, Vasily Gorbik <gor@linux.ibm.com>, Christian Borntraeger <borntraeger@de.ibm.com>, "dm-devel@redhat.com" <dm-devel@redhat.com>, "linux-block@vger.kernel.org" <linux-block@vger.kernel.org>, "nbd@other.debian.org" <nbd@other.debian.org>, "linuxppc-dev@lists.ozlabs.org" <linuxppc-dev@lists.ozlabs.org>, "ceph-devel@vger.kernel.org" <ceph-devel@vger.kernel.org>, "virtualization@lists.linux-foundation.org" <virtualization@lists.linux-foundation.org>, "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, "linux-mmc@vger.kernel.org" <linux-mmc@vger.kernel.org>, "linux-mtd@lists.infradead.org" <linux-mtd@lists.infradead.org>, "linux-s390@vger.kernel.org" <linux-s390@vger.kernel.org>
- Subject: Re: [PATCH 20/30] nullb: use blk_mq_alloc_disk
- From: Chaitanya Kulkarni <Chaitanya.Kulkarni@wdc.com>
- Date: Thu, 3 Jun 2021 00:10:09 +0000
- Message-id: <[🔎] BYAPR04MB4965DDD0F4479F5B492A30D2863C9@BYAPR04MB4965.namprd04.prod.outlook.com>
- References: <[🔎] 20210602065345.355274-1-hch@lst.de> <[🔎] 20210602065345.355274-21-hch@lst.de>
On 6/1/21 23:56, Christoph Hellwig wrote:
> 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 | 11 +++++------
> 1 file changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/block/null_blk/main.c b/drivers/block/null_blk/main.c
> index d8e098f1e5b5..74fb2ec63219 100644
> --- a/drivers/block/null_blk/main.c
> +++ b/drivers/block/null_blk/main.c
> @@ -1851,13 +1851,12 @@ static int null_add_dev(struct nullb_device *dev)
>
> rv = -ENOMEM;
Is above initialization needed ?
> 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);
Reply to: