diff options
author | Luis Chamberlain <mcgrof@kernel.org> | 2021-10-16 01:30:25 +0200 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2021-10-21 17:00:56 +0200 |
commit | 21fd880d3da7564bab68979417cab7408e4f9642 (patch) | |
tree | 3715b93015ae13a69508f11e85136198463a2885 /arch/m68k/emu | |
parent | xen-blkfront: add error handling support for add_disk() (diff) | |
download | linux-21fd880d3da7564bab68979417cab7408e4f9642.tar.xz linux-21fd880d3da7564bab68979417cab7408e4f9642.zip |
m68k/emu/nfblock: add error handling support for add_disk()
We never checked for errors on add_disk() as this function
returned void. Now that this is fixed, use the shiny new
error handling.
Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
Link: https://lore.kernel.org/r/20211015233028.2167651-7-mcgrof@kernel.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'arch/m68k/emu')
-rw-r--r-- | arch/m68k/emu/nfblock.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/m68k/emu/nfblock.c b/arch/m68k/emu/nfblock.c index 4ef457ba5220..9c57b245dc12 100644 --- a/arch/m68k/emu/nfblock.c +++ b/arch/m68k/emu/nfblock.c @@ -99,6 +99,7 @@ static int __init nfhd_init_one(int id, u32 blocks, u32 bsize) { struct nfhd_device *dev; int dev_id = id - NFHD_DEV_OFFSET; + int err = -ENOMEM; pr_info("nfhd%u: found device with %u blocks (%u bytes)\n", dev_id, blocks, bsize); @@ -129,16 +130,20 @@ static int __init nfhd_init_one(int id, u32 blocks, u32 bsize) sprintf(dev->disk->disk_name, "nfhd%u", dev_id); set_capacity(dev->disk, (sector_t)blocks * (bsize / 512)); blk_queue_logical_block_size(dev->disk->queue, bsize); - add_disk(dev->disk); + err = add_disk(dev->disk); + if (err) + goto out_cleanup_disk; list_add_tail(&dev->list, &nfhd_list); return 0; +out_cleanup_disk: + blk_cleanup_disk(dev->disk); free_dev: kfree(dev); out: - return -ENOMEM; + return err; } static int __init nfhd_init(void) |