In pxa3xx_nand_probe_dt if the function detects an error after
allocating memory that memory is not freed before exit. Add the
appropriate free.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodb...@linaro.org>
---
 drivers/mtd/nand/raw/pxa3xx_nand.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/mtd/nand/raw/pxa3xx_nand.c 
b/drivers/mtd/nand/raw/pxa3xx_nand.c
index b78b4e60238..7bf54fa4654 100644
--- a/drivers/mtd/nand/raw/pxa3xx_nand.c
+++ b/drivers/mtd/nand/raw/pxa3xx_nand.c
@@ -1765,6 +1765,7 @@ static int pxa3xx_nand_probe_dt(struct udevice *dev, 
struct pxa3xx_nand_info *in
        pdata->num_cs = dev_read_u32_default(dev, "num-cs", 1);
        if (pdata->num_cs != 1) {
                pr_err("pxa3xx driver supports single CS only\n");
+               kfree(pdata);
                return -EINVAL;
        }
 

-- 
2.39.5

Reply via email to