s390/block/scm_blk: add error handling support for add_disk()
authorLuis Chamberlain <mcgrof@kernel.org>
Mon, 27 Sep 2021 22:02:32 +0000 (15:02 -0700)
committerVasily Gorbik <gor@linux.ibm.com>
Mon, 4 Oct 2021 07:49:37 +0000 (09:49 +0200)
We never checked for errors on add_disk() as this function
returned void. Now that this is fixed, use the shiny new
error handling.

Acked-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
Link: https://lore.kernel.org/r/20210927220232.1071926-7-mcgrof@kernel.org
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
drivers/s390/block/scm_blk.c

index 88cba62..61ecdcb 100644 (file)
@@ -495,9 +495,14 @@ int scm_blk_dev_setup(struct scm_blk_dev *bdev, struct scm_device *scmdev)
 
        /* 512 byte sectors */
        set_capacity(bdev->gendisk, scmdev->size >> 9);
-       device_add_disk(&scmdev->dev, bdev->gendisk, NULL);
+       ret = device_add_disk(&scmdev->dev, bdev->gendisk, NULL);
+       if (ret)
+               goto out_cleanup_disk;
+
        return 0;
 
+out_cleanup_disk:
+       blk_cleanup_disk(bdev->gendisk);
 out_tag:
        blk_mq_free_tag_set(&bdev->tag_set);
 out: