block: Fix an error handling in add_partition
authorDinghao Liu <dinghao.liu@zju.edu.cn>
Sun, 17 Jan 2021 08:50:17 +0000 (16:50 +0800)
committerJens Axboe <axboe@kernel.dk>
Mon, 25 Jan 2021 04:35:58 +0000 (21:35 -0700)
Once we have called device_initialize(), we should use put_device() to
give up the reference on error, just like what we have done on failure
of device_add().

Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/partitions/core.c

index e7d776d..23460ce 100644 (file)
@@ -384,7 +384,7 @@ static struct block_device *add_partition(struct gendisk *disk, int partno,
 
        err = blk_alloc_devt(bdev, &devt);
        if (err)
-               goto out_bdput;
+               goto out_put;
        pdev->devt = devt;
 
        /* delay uevent until 'holders' subdir is created */