Message ID | 20210927220110.1066271-7-mcgrof@kernel.org |
---|---|
State | Not Applicable |
Headers | show |
Series | block: third batch of add_disk() error handling conversions | expand |
On Mon, Sep 27, 2021 at 3:01 PM Luis Chamberlain <mcgrof@kernel.org> wrote: > > 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> > --- > arch/xtensa/platforms/iss/simdisk.c | 13 +++++++++++-- > 1 file changed, 11 insertions(+), 2 deletions(-) Acked-by: Max Filippov <jcmvbkbc@gmail.com>
On 9/27/21 4:50 PM, Max Filippov wrote: > On Mon, Sep 27, 2021 at 3:01 PM Luis Chamberlain <mcgrof@kernel.org> wrote: >> >> 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> >> --- >> arch/xtensa/platforms/iss/simdisk.c | 13 +++++++++++-- >> 1 file changed, 11 insertions(+), 2 deletions(-) > > Acked-by: Max Filippov <jcmvbkbc@gmail.com> Applied, thanks.
diff --git a/arch/xtensa/platforms/iss/simdisk.c b/arch/xtensa/platforms/iss/simdisk.c index 3cdfa00738e0..ad85c554cd45 100644 --- a/arch/xtensa/platforms/iss/simdisk.c +++ b/arch/xtensa/platforms/iss/simdisk.c @@ -259,6 +259,7 @@ static int __init simdisk_setup(struct simdisk *dev, int which, struct proc_dir_entry *procdir) { char tmp[2] = { '0' + which, 0 }; + int err = -ENOMEM; dev->fd = -1; dev->filename = NULL; @@ -267,7 +268,7 @@ static int __init simdisk_setup(struct simdisk *dev, int which, dev->gd = blk_alloc_disk(NUMA_NO_NODE); if (!dev->gd) - return -ENOMEM; + goto out; dev->gd->major = simdisk_major; dev->gd->first_minor = which; dev->gd->minors = SIMDISK_MINORS; @@ -275,10 +276,18 @@ static int __init simdisk_setup(struct simdisk *dev, int which, dev->gd->private_data = dev; snprintf(dev->gd->disk_name, 32, "simdisk%d", which); set_capacity(dev->gd, 0); - add_disk(dev->gd); + err = add_disk(dev->gd); + if (err) + goto out_cleanup_disk; dev->procfile = proc_create_data(tmp, 0644, procdir, &simdisk_proc_ops, dev); + return 0; + +out_cleanup_disk: + blk_cleanup_disk(dev->gd); +out: + return err; } static int __init simdisk_init(void)
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> --- arch/xtensa/platforms/iss/simdisk.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-)