ASoC: Fix incorrect kfree in ad193x_probe error path
authorAxel Lin <axel.lin@gmail.com>
Tue, 16 Nov 2010 08:08:51 +0000 (16:08 +0800)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Tue, 16 Nov 2010 11:23:39 +0000 (11:23 +0000)
We allocated memory for ad193x in ad193x_spi_probe,
and will free the memory in either ad193x_spi_probe error path or
ad193x_spi_remove.

Thus we should not call kfree(ad193x) in ad193x_probe, otherwise
we have double free of ad193x.

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>
sound/soc/codecs/ad193x.c

index dc105d8aaa0fb30e3117f4b61bce145c12faf807..fd3e659f90b13b96ccaaad1fa39fd70675cd813e 100644 (file)
@@ -364,7 +364,6 @@ static int ad193x_probe(struct snd_soc_codec *codec)
        if (ret < 0) {
                dev_err(codec->dev, "failed to set cache I/O: %d\n",
                                ret);
-               kfree(ad193x);
                return ret;
        }