All of lore.kernel.org
 help / color / mirror / Atom feed
From: Huang Shijie <b32955@freescale.com>
To: Brian Norris <computersforpeace@gmail.com>
Cc: linux-mtd@lists.infradead.org,
	David Woodhouse <dwmw2@infradead.org>,
	Linux Kernel <linux-kernel@vger.kernel.org>,
	Artem Bityutskiy <dedekind1@gmail.com>
Subject: Re: [PATCH] mtd: nand: fix memory leak in ONFI extended parameter page
Date: Tue, 17 Sep 2013 10:12:57 +0800	[thread overview]
Message-ID: <5237BAA9.6000606@freescale.com> (raw)
In-Reply-To: <1379381512-2007-1-git-send-email-computersforpeace@gmail.com>

于 2013年09月17日 09:31, Brian Norris 写道:
> This fixes a memory leak in the ONFI support code for detecting the
> required ECC levels from this commit:
>
>   commit 6dcbe0cdd83fb5f77be4f44c9e06c535281c375a
>   Author: Huang Shijie <b32955@freescale.com>
>   Date:   Wed May 22 10:28:27 2013 +0800
>
>       mtd: get the ECC info from the Extended Parameter Page
>
> In the success case, we never freed the 'ep' buffer.
>
> Also, this fixes an oversight in the same commit where we (harmlessly)
> freed the NULL pointer.
>
> Signed-off-by: Brian Norris <computersforpeace@gmail.com>
> Cc: Huang Shijie <b32955@freescale.com>
> ---
> David, if there are no objections, can you send this to Linus for 3.12?
>
> If this doesn't make it into 3.12, then it will be -stable material.
>
>  drivers/mtd/nand/nand_base.c | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
> index d4578a1..00022b4 100644
> --- a/drivers/mtd/nand/nand_base.c
> +++ b/drivers/mtd/nand/nand_base.c
> @@ -2869,10 +2869,8 @@ static int nand_flash_detect_ext_param_page(struct mtd_info *mtd,
>  
>  	len = le16_to_cpu(p->ext_param_page_length) * 16;
>  	ep = kmalloc(len, GFP_KERNEL);
> -	if (!ep) {
> -		ret = -ENOMEM;
> -		goto ext_out;
> -	}
> +	if (!ep)
> +		return -ENOMEM;
>  
>  	/* Send our own NAND_CMD_PARAM. */
>  	chip->cmdfunc(mtd, NAND_CMD_PARAM, 0, -1);
> @@ -2920,7 +2918,7 @@ static int nand_flash_detect_ext_param_page(struct mtd_info *mtd,
>  	}
>  
>  	pr_info("ONFI extended param page detected.\n");
> -	return 0;
> +	ret = 0;
>  
>  ext_out:
>  	kfree(ep);
good catch!

Acked-by: Huang Shijie <b32955@freescale.com>

WARNING: multiple messages have this Message-ID (diff)
From: Huang Shijie <b32955@freescale.com>
To: Brian Norris <computersforpeace@gmail.com>
Cc: David Woodhouse <dwmw2@infradead.org>,
	Artem Bityutskiy <dedekind1@gmail.com>,
	<linux-mtd@lists.infradead.org>,
	Linux Kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] mtd: nand: fix memory leak in ONFI extended parameter page
Date: Tue, 17 Sep 2013 10:12:57 +0800	[thread overview]
Message-ID: <5237BAA9.6000606@freescale.com> (raw)
In-Reply-To: <1379381512-2007-1-git-send-email-computersforpeace@gmail.com>

于 2013年09月17日 09:31, Brian Norris 写道:
> This fixes a memory leak in the ONFI support code for detecting the
> required ECC levels from this commit:
>
>   commit 6dcbe0cdd83fb5f77be4f44c9e06c535281c375a
>   Author: Huang Shijie <b32955@freescale.com>
>   Date:   Wed May 22 10:28:27 2013 +0800
>
>       mtd: get the ECC info from the Extended Parameter Page
>
> In the success case, we never freed the 'ep' buffer.
>
> Also, this fixes an oversight in the same commit where we (harmlessly)
> freed the NULL pointer.
>
> Signed-off-by: Brian Norris <computersforpeace@gmail.com>
> Cc: Huang Shijie <b32955@freescale.com>
> ---
> David, if there are no objections, can you send this to Linus for 3.12?
>
> If this doesn't make it into 3.12, then it will be -stable material.
>
>  drivers/mtd/nand/nand_base.c | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
> index d4578a1..00022b4 100644
> --- a/drivers/mtd/nand/nand_base.c
> +++ b/drivers/mtd/nand/nand_base.c
> @@ -2869,10 +2869,8 @@ static int nand_flash_detect_ext_param_page(struct mtd_info *mtd,
>  
>  	len = le16_to_cpu(p->ext_param_page_length) * 16;
>  	ep = kmalloc(len, GFP_KERNEL);
> -	if (!ep) {
> -		ret = -ENOMEM;
> -		goto ext_out;
> -	}
> +	if (!ep)
> +		return -ENOMEM;
>  
>  	/* Send our own NAND_CMD_PARAM. */
>  	chip->cmdfunc(mtd, NAND_CMD_PARAM, 0, -1);
> @@ -2920,7 +2918,7 @@ static int nand_flash_detect_ext_param_page(struct mtd_info *mtd,
>  	}
>  
>  	pr_info("ONFI extended param page detected.\n");
> -	return 0;
> +	ret = 0;
>  
>  ext_out:
>  	kfree(ep);
good catch!

Acked-by: Huang Shijie <b32955@freescale.com>


  reply	other threads:[~2013-09-17  2:11 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-17  1:31 [PATCH] mtd: nand: fix memory leak in ONFI extended parameter page Brian Norris
2013-09-17  1:31 ` Brian Norris
2013-09-17  2:12 ` Huang Shijie [this message]
2013-09-17  2:12   ` Huang Shijie
2013-09-19  4:15   ` Brian Norris
2013-09-19  4:15     ` Brian Norris

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5237BAA9.6000606@freescale.com \
    --to=b32955@freescale.com \
    --cc=computersforpeace@gmail.com \
    --cc=dedekind1@gmail.com \
    --cc=dwmw2@infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.