mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-14 14:34:28 +08:00
pktcdvd: convert to blk_alloc_disk/blk_cleanup_disk
Convert the pktcdvd driver to use the blk_alloc_disk and blk_cleanup_disk helpers to simplify gendisk and request_queue allocation. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Hannes Reinecke <hare@suse.de> Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org> Link: https://lore.kernel.org/r/20210521055116.1053587-9-hch@lst.de Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
b647ad0248
commit
4441348452
@ -2711,19 +2711,17 @@ static int pkt_setup_dev(dev_t dev, dev_t* pkt_dev)
|
||||
pd->write_congestion_off = write_congestion_off;
|
||||
|
||||
ret = -ENOMEM;
|
||||
disk = alloc_disk(1);
|
||||
disk = blk_alloc_disk(NUMA_NO_NODE);
|
||||
if (!disk)
|
||||
goto out_mem;
|
||||
pd->disk = disk;
|
||||
disk->major = pktdev_major;
|
||||
disk->first_minor = idx;
|
||||
disk->minors = 1;
|
||||
disk->fops = &pktcdvd_ops;
|
||||
disk->flags = GENHD_FL_REMOVABLE;
|
||||
strcpy(disk->disk_name, pd->name);
|
||||
disk->private_data = pd;
|
||||
disk->queue = blk_alloc_queue(NUMA_NO_NODE);
|
||||
if (!disk->queue)
|
||||
goto out_mem2;
|
||||
|
||||
pd->pkt_dev = MKDEV(pktdev_major, idx);
|
||||
ret = pkt_new_dev(pd, dev);
|
||||
@ -2746,7 +2744,7 @@ static int pkt_setup_dev(dev_t dev, dev_t* pkt_dev)
|
||||
return 0;
|
||||
|
||||
out_mem2:
|
||||
put_disk(disk);
|
||||
blk_cleanup_disk(disk);
|
||||
out_mem:
|
||||
mempool_exit(&pd->rb_pool);
|
||||
kfree(pd);
|
||||
@ -2796,8 +2794,7 @@ static int pkt_remove_dev(dev_t pkt_dev)
|
||||
pkt_dbg(1, pd, "writer unmapped\n");
|
||||
|
||||
del_gendisk(pd->disk);
|
||||
blk_cleanup_queue(pd->disk->queue);
|
||||
put_disk(pd->disk);
|
||||
blk_cleanup_disk(pd->disk);
|
||||
|
||||
mempool_exit(&pd->rb_pool);
|
||||
kfree(pd);
|
||||
|
Loading…
Reference in New Issue
Block a user