diff options
author | Jarkko Nikula <jhnikula@gmail.com> | 2010-12-08 01:25:40 +0100 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2010-12-08 01:25:40 +0100 |
commit | 5f3b7284cb35c9e3eead279cb35f017b9735bb43 (patch) | |
tree | 3209cd1cd21e96fd5abaae88acacc00fb46f4c38 /arch/arm/plat-omap/mcbsp.c | |
parent | omap: Ptr "isr_reg" tracked as NULL was dereferenced (diff) | |
download | linux-5f3b7284cb35c9e3eead279cb35f017b9735bb43.tar.xz linux-5f3b7284cb35c9e3eead279cb35f017b9735bb43.zip |
omap: McBSP: Fix potential memory leak in omap_mcbsp_remove
Function omap_mcbsp_probe allocates struct omap_mcbsp *mcbsp but it is not
freed in omap_mcbsp_remove. Fix this, remove unneeded structure cleanups
and clk_disable calls since they are not needed here.
This is not problem currently but becomes if the mcbsp driver is ever
modularized.
Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/plat-omap/mcbsp.c')
-rw-r--r-- | arch/arm/plat-omap/mcbsp.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/arch/arm/plat-omap/mcbsp.c b/arch/arm/plat-omap/mcbsp.c index eac4b978e9fd..f79090cb823b 100644 --- a/arch/arm/plat-omap/mcbsp.c +++ b/arch/arm/plat-omap/mcbsp.c @@ -1836,17 +1836,11 @@ static int __devexit omap_mcbsp_remove(struct platform_device *pdev) omap34xx_device_exit(mcbsp); - clk_disable(mcbsp->fclk); - clk_disable(mcbsp->iclk); clk_put(mcbsp->fclk); clk_put(mcbsp->iclk); iounmap(mcbsp->io_base); - - mcbsp->fclk = NULL; - mcbsp->iclk = NULL; - mcbsp->free = 0; - mcbsp->dev = NULL; + kfree(mcbsp); } return 0; |