ps3disk: add error handling support for add_disk()
authorLuis Chamberlain <mcgrof@kernel.org>
Fri, 15 Oct 2021 23:52:16 +0000 (16:52 -0700)
committerJens Axboe <axboe@kernel.dk>
Sat, 30 Oct 2021 17:03:37 +0000 (11:03 -0600)
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>
Tested-by: Geoff Levand <geoff@infradead.org>
Link: https://lore.kernel.org/r/20211015235219.2191207-11-mcgrof@kernel.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/ps3disk.c

index 8d51efbe045ddc63e98241c69ef0bf2dcee78e66..3054adf7746036e5357d893f88ad17cacceeca90 100644 (file)
@@ -467,9 +467,13 @@ static int ps3disk_probe(struct ps3_system_bus_device *_dev)
                 gendisk->disk_name, priv->model, priv->raw_capacity >> 11,
                 get_capacity(gendisk) >> 11);
 
-       device_add_disk(&dev->sbd.core, gendisk, NULL);
-       return 0;
+       error = device_add_disk(&dev->sbd.core, gendisk, NULL);
+       if (error)
+               goto fail_cleanup_disk;
 
+       return 0;
+fail_cleanup_disk:
+       blk_cleanup_disk(gendisk);
 fail_free_tag_set:
        blk_mq_free_tag_set(&priv->tag_set);
 fail_teardown: