mtd: rawnand: nandsim: Stop using nand_release()
authorMiquel Raynal <miquel.raynal@bootlin.com>
Mon, 25 May 2020 08:58:45 +0000 (10:58 +0200)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Sun, 31 May 2020 08:53:38 +0000 (10:53 +0200)
nand_release() basically calls mtd_device_unregister() and
nand_cleanup(). Both helpers should be called after MTD device
registration and NAND scan, respectively. Drop nand_release() and use
the two helpers directly so that they fit the error path and the
labels there.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20200525085851.17682-12-miquel.raynal@bootlin.com
drivers/mtd/nand/raw/nandsim.c

index 4bc5da3..127ba20 100644 (file)
@@ -2400,13 +2400,15 @@ static int __init ns_init_module(void)
 
        ret = ns_debugfs_create(ns);
        if (ret)
-               goto err_exit;
+               goto unregister_mtd;
 
         return 0;
 
+unregister_mtd:
+       WARN_ON(mtd_device_unregister(nsmtd));
 err_exit:
        ns_free(ns);
-       nand_release(chip);
+       nand_cleanup(chip);
 error:
        kfree(ns);
        ns_free_lists();