mtd: rawnand: orion: Fix the probe error path
authorMiquel Raynal <miquel.raynal@bootlin.com>
Tue, 19 May 2020 13:00:06 +0000 (15:00 +0200)
committerSasha Levin <sashal@kernel.org>
Tue, 30 Jun 2020 19:38:36 +0000 (15:38 -0400)
[ Upstream commit be238fbf78e4c7c586dac235ab967d3e565a4d1a ]

nand_release() is supposed be called after MTD device registration.
Here, only nand_scan() happened, so use nand_cleanup() instead.

There is no real Fixes tag applying here as the use of nand_release()
in this driver predates by far the introduction of nand_cleanup() in
commit d44154f969a4 ("mtd: nand: Provide nand_cleanup() function to free NAND related resources")
which makes this change possible. However, pointing this commit as the
culprit for backporting purposes makes sense even if this commit is not
introducing any bug.

Fixes: d44154f969a4 ("mtd: nand: Provide nand_cleanup() function to free NAND related resources")
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/linux-mtd/20200519130035.1883-34-miquel.raynal@bootlin.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/mtd/nand/orion_nand.c

index cfd53f0ba6c3168eceda7eaa7d2452d3637639ae..0acfc0a7d8e082893af2dc3581dbe6c7f07fcce8 100644 (file)
@@ -167,7 +167,7 @@ static int __init orion_nand_probe(struct platform_device *pdev)
        mtd->name = "orion_nand";
        ret = mtd_device_register(mtd, board->parts, board->nr_parts);
        if (ret) {
-               nand_release(nc);
+               nand_cleanup(nc);
                goto no_dev;
        }