Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1232019 > unrolled thread

Re: [PATCH] fbdev: broadsheetfb: fix memory leak

Started byTomi Valkeinen <tomi.valkeinen@ti.com>
First post2015-09-24 12:20 +0200
Last post2015-09-25 15:50 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH] fbdev: broadsheetfb: fix memory leak Tomi Valkeinen <tomi.valkeinen@ti.com> - 2015-09-24 12:20 +0200
    Re: [PATCH] fbdev: broadsheetfb: fix memory leak Sudip Mukherjee <sudipm.mukherjee@gmail.com> - 2015-09-25 15:50 +0200

#1232019 — Re: [PATCH] fbdev: broadsheetfb: fix memory leak

FromTomi Valkeinen <tomi.valkeinen@ti.com>
Date2015-09-24 12:20 +0200
SubjectRe: [PATCH] fbdev: broadsheetfb: fix memory leak
Message-ID<qcbN8-8v1-1@gated-at.bofh.it>

[Multipart message — attachments visible in raw view] — view raw

On 18/09/15 14:16, Sudip Mukherjee wrote:
> On the error path we have missed releasing the firmware.
> 
> Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
> ---
>  drivers/video/fbdev/broadsheetfb.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/video/fbdev/broadsheetfb.c b/drivers/video/fbdev/broadsheetfb.c
> index 0e5fde1..ac1f41e 100644
> --- a/drivers/video/fbdev/broadsheetfb.c
> +++ b/drivers/video/fbdev/broadsheetfb.c
> @@ -752,7 +752,7 @@ static ssize_t broadsheet_loadstore_waveform(struct device *dev,
>  	if ((fw_entry->size < 8*1024) || (fw_entry->size > 64*1024)) {
>  		dev_err(dev, "Invalid waveform\n");
>  		err = -EINVAL;
> -		goto err_failed;
> +		goto err_fw;
>  	}
>  
>  	mutex_lock(&(par->io_lock));
> @@ -762,13 +762,15 @@ static ssize_t broadsheet_loadstore_waveform(struct device *dev,
>  	mutex_unlock(&(par->io_lock));
>  	if (err < 0) {
>  		dev_err(dev, "Failed to store broadsheet waveform\n");
> -		goto err_failed;
> +		goto err_fw;
>  	}
>  
>  	dev_info(dev, "Stored broadsheet waveform, size %zd\n", fw_entry->size);
>  
>  	return len;
>  
> +err_fw:
> +	release_firmware(fw_entry);
>  err_failed:
>  	return err;
>  }

This looks like correct fix, but where is the firmware released when
there is no error?

 Tomi

[toc] | [next] | [standalone]


#1232830

FromSudip Mukherjee <sudipm.mukherjee@gmail.com>
Date2015-09-25 15:50 +0200
Message-ID<qcBxT-30Z-1@gated-at.bofh.it>
In reply to#1232019
On Thu, Sep 24, 2015 at 01:12:48PM +0300, Tomi Valkeinen wrote:
> 
> On 18/09/15 14:16, Sudip Mukherjee wrote:
> > On the error path we have missed releasing the firmware.
> > 
> > Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
> > ---
<snip>
> 
> This looks like correct fix, but where is the firmware released when
> there is no error?
I will send v2. Usually all the memleaks will be in the error path so I
concentrate on that part. Sorry, should have looked fully.

regards
sudip
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web