diff options
author | Axel Lin <axel.lin@gmail.com> | 2010-11-16 03:08:00 -0500 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-11-16 06:23:24 -0500 |
commit | af353d8a134d6147e29a3371015d2eef8d7f0657 (patch) | |
tree | a23fd30f0e2ff42daa45a95f16596f5987c8db89 /sound/soc/codecs/ad1836.c | |
parent | ef995e3a91e290684f24696e1d2e8767a2a2ebb6 (diff) |
ASoC: Fix incorrect kfree in ad1836_probe error path
We allocated memory for ad1836 in ad1836_spi_probe,
and will free the memory in either ad1836_spi_probe error path or
ad1836_spi_remove.
Thus we should not call kfree(ad1836) in ad1836_probe, otherwise
we have double free of ad1836.
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/codecs/ad1836.c')
-rw-r--r-- | sound/soc/codecs/ad1836.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/sound/soc/codecs/ad1836.c b/sound/soc/codecs/ad1836.c index c71b05ddd752..e5d3db950a08 100644 --- a/sound/soc/codecs/ad1836.c +++ b/sound/soc/codecs/ad1836.c | |||
@@ -228,7 +228,6 @@ static int ad1836_probe(struct snd_soc_codec *codec) | |||
228 | if (ret < 0) { | 228 | if (ret < 0) { |
229 | dev_err(codec->dev, "failed to set cache I/O: %d\n", | 229 | dev_err(codec->dev, "failed to set cache I/O: %d\n", |
230 | ret); | 230 | ret); |
231 | kfree(ad1836); | ||
232 | return ret; | 231 | return ret; |
233 | } | 232 | } |
234 | 233 | ||