rbd: add add_disk() error handling

We never checked for errors on add_disk() as this function
returned void. Now that this is fixed, use the shiny new
error handling.

Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
Luis Chamberlain 2021-09-27 15:02:28 -07:00 committed by Jens Axboe
parent d6ac27c60f
commit 27c97abc30
1 changed files with 5 additions and 1 deletions

View File

@ -7054,7 +7054,9 @@ static ssize_t do_rbd_add(struct bus_type *bus,
if (rc)
goto err_out_image_lock;
device_add_disk(&rbd_dev->dev, rbd_dev->disk, NULL);
rc = device_add_disk(&rbd_dev->dev, rbd_dev->disk, NULL);
if (rc)
goto err_out_cleanup_disk;
spin_lock(&rbd_dev_list_lock);
list_add_tail(&rbd_dev->node, &rbd_dev_list);
@ -7068,6 +7070,8 @@ out:
module_put(THIS_MODULE);
return rc;
err_out_cleanup_disk:
rbd_free_disk(rbd_dev);
err_out_image_lock:
rbd_dev_image_unlock(rbd_dev);
rbd_dev_device_release(rbd_dev);