diff mbox

[2/3] ASoC: wm0010: fix memory leak

Message ID 1442572341-28201-2-git-send-email-sudipm.mukherjee@gmail.com (mailing list archive)
State Accepted
Commit 2ace47be5a315def8f493ca77aa59c077ade30a1
Headers show

Commit Message

Sudip Mukherjee Sept. 18, 2015, 10:32 a.m. UTC
We have requested for the firmware but we have missed releasing it both
on success and on error path.
While checking the code it turned out that the requested firmware is not
even used. More over the same firmware is being loaded by
wm0010_stage2_load().

Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
---
 sound/soc/codecs/wm0010.c | 9 ---------
 1 file changed, 9 deletions(-)

Comments

Charles Keepax Sept. 18, 2015, 11:39 a.m. UTC | #1
On Fri, Sep 18, 2015 at 04:02:20PM +0530, Sudip Mukherjee wrote:
> We have requested for the firmware but we have missed releasing it both
> on success and on error path.
> While checking the code it turned out that the requested firmware is not
> even used. More over the same firmware is being loaded by
> wm0010_stage2_load().
> 
> Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
> ---

hmm... odd guess this must have been missed when
wm0010_stage2_load was created.

Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>

Thanks,
Charles
diff mbox

Patch

diff --git a/sound/soc/codecs/wm0010.c b/sound/soc/codecs/wm0010.c
index 79a7cd3..4947be5 100644
--- a/sound/soc/codecs/wm0010.c
+++ b/sound/soc/codecs/wm0010.c
@@ -577,7 +577,6 @@  static int wm0010_boot(struct snd_soc_codec *codec)
 	struct wm0010_priv *wm0010 = snd_soc_codec_get_drvdata(codec);
 	unsigned long flags;
 	int ret;
-	const struct firmware *fw;
 	struct spi_message m;
 	struct spi_transfer t;
 	struct dfw_pllrec pll_rec;
@@ -623,14 +622,6 @@  static int wm0010_boot(struct snd_soc_codec *codec)
 	wm0010->state = WM0010_OUT_OF_RESET;
 	spin_unlock_irqrestore(&wm0010->irq_lock, flags);
 
-	/* First the bootloader */
-	ret = request_firmware(&fw, "wm0010_stage2.bin", codec->dev);
-	if (ret != 0) {
-		dev_err(codec->dev, "Failed to request stage2 loader: %d\n",
-			ret);
-		goto abort;
-	}
-
 	if (!wait_for_completion_timeout(&wm0010->boot_completion,
 					 msecs_to_jiffies(20)))
 		dev_err(codec->dev, "Failed to get interrupt from DSP\n");