Re: [PATCH] mtd: onenand: prevent memory leak in onenand_scan

Navid Emamdoost
2019-09-30T21:37:30Z

Would you please take a look at this patch?

On Wed, Sep 25, 2019 at 10:43 AM Navid Emamdoost
<navid.emamdoost@gmail.com> wrote:
>
> In onenand_scan if scan_bbt fails the allocated buffers should be
> released.
>
> Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
> ---
> drivers/mtd/nand/onenand/onenand_base.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/mtd/nand/onenand/onenand_base.c b/drivers/mtd/nand/onenand/onenand_base.c
> index 77bd32a683e1..79c01f42925a 100644
> --- a/drivers/mtd/nand/onenand/onenand_base.c
> +++ b/drivers/mtd/nand/onenand/onenand_base.c
> @@ -3977,8 +3977,11 @@ int onenand_scan(struct mtd_info *mtd, int maxchips)
> this->badblockpos = ONENAND_BADBLOCK_POS;
>
> ret = this->scan_bbt(mtd);
> - if ((!FLEXONENAND(this)) || ret)
> + if ((!FLEXONENAND(this)) || ret) {
> + kfree(this->page_buf);
> + kfree(this->oob_buf);
> return ret;
> + }
>
> /* Change Flex-OneNAND boundaries if required */
> for (i = 0; i < MAX_DIES; i++)
> --
> 2.17.1
>

--
Navid.