]> www.infradead.org Git - users/hch/block.git/commitdiff
virtio_blk: add error handling support for add_disk()
authorLuis Chamberlain <mcgrof@kernel.org>
Tue, 13 Jul 2021 18:54:48 +0000 (18:54 +0000)
committerChristoph Hellwig <hch@lst.de>
Wed, 18 Aug 2021 14:34:33 +0000 (16:34 +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.

Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
drivers/block/virtio_blk.c

index 767b4f72a54d653ddaa62dda6fa069d1db506b77..63dc121a4c43b9d29370d4f1401579b05da45b78 100644 (file)
@@ -875,9 +875,14 @@ static int virtblk_probe(struct virtio_device *vdev)
        virtblk_update_capacity(vblk, false);
        virtio_device_ready(vdev);
 
-       device_add_disk(&vdev->dev, vblk->disk, virtblk_attr_groups);
+       err = device_add_disk(&vdev->dev, vblk->disk, virtblk_attr_groups);
+       if (err)
+               goto out_cleanup_disk;
+
        return 0;
 
+out_cleanup_disk:
+       blk_cleanup_disk(vblk->disk);
 out_free_tags:
        blk_mq_free_tag_set(&vblk->tag_set);
 out_free_vq: