提交 4e5d1d90 编写于 作者: M Miquel Raynal 提交者: Boris Brezillon

mtd: rawnand: denali: fix probe function error path

An error after nand_scan_tail() should trigger a nand_cleanup().
The helper mtd_device_register() returns an error code that should
be checked and nand_cleanup() called accordingly.
Signed-off-by: NMiquel Raynal <miquel.raynal@bootlin.com>
Signed-off-by: NBoris Brezillon <boris.brezillon@bootlin.com>
上级 4acc3046
...@@ -1384,10 +1384,12 @@ int denali_init(struct denali_nand_info *denali) ...@@ -1384,10 +1384,12 @@ int denali_init(struct denali_nand_info *denali)
ret = mtd_device_register(mtd, NULL, 0); ret = mtd_device_register(mtd, NULL, 0);
if (ret) { if (ret) {
dev_err(denali->dev, "Failed to register MTD: %d\n", ret); dev_err(denali->dev, "Failed to register MTD: %d\n", ret);
goto free_buf; goto cleanup_nand;
} }
return 0; return 0;
cleanup_nand:
nand_cleanup(chip);
free_buf: free_buf:
kfree(denali->buf); kfree(denali->buf);
disable_irq: disable_irq:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册