Message ID | 20210116072802.21940-1-dinghao.liu@zju.edu.cn (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | block: Fix an error handling in add_partition | expand |
On 1/15/21 11:34 PM, Dinghao Liu wrote: > 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> Please consider having following commit message, since above commit message is looking odd from what we have in the tree :- 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(). Also have you tested this patch with the with generating appropriate error ?
> On 1/15/21 11:34 PM, Dinghao Liu wrote: > > 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> > Please consider having following commit message, since above > commit message is looking odd from what we have in the tree :- > > > 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(). > Thanks for this suggestion! > > Also have you tested this patch with the with generating appropriate error ? > No, this problem is found through comparing existing source code. Regards, Dinghao
diff --git a/block/partitions/core.c b/block/partitions/core.c index e7d776db803b..23460cee9de5 100644 --- a/block/partitions/core.c +++ b/block/partitions/core.c @@ -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 */
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> --- block/partitions/core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)