2007-10-13 16:28:47

by Florin Malita

[permalink] [raw]
Subject: [PATCH] mmc: possible leak in mmc_read_ext_csd

The exception path associated with an invalid ext_csd_struct returns
without freeing ext_csd.

Coverity CID 1909.

Signed-off-by: Florin Malita
---

drivers/mmc/core/mmc.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
index 65fe288..68c0e3b 100644
--- a/drivers/mmc/core/mmc.c
+++ b/drivers/mmc/core/mmc.c
@@ -213,7 +213,8 @@ static int mmc_read_ext_csd(struct mmc_card *card)
printk(KERN_ERR "%s: unrecognised EXT_CSD structure "
"version %d\n", mmc_hostname(card->host),
ext_csd_struct);
- return -EINVAL;
+ err = -EINVAL;
+ goto out;
}

if (ext_csd_struct >= 2) {


2007-10-17 19:32:30

by Pierre Ossman

[permalink] [raw]
Subject: Re: [PATCH] mmc: possible leak in mmc_read_ext_csd

On Sat, 13 Oct 2007 12:27:20 -0400
Florin Malita <[email protected]> wrote:

> The exception path associated with an invalid ext_csd_struct returns
> without freeing ext_csd.
>
> Coverity CID 1909.
>
> Signed-off-by: Florin Malita

Quite right. Applied.

Rgds
--
-- Pierre Ossman

Linux kernel, MMC maintainer http://www.kernel.org
PulseAudio, core developer http://pulseaudio.org
rdesktop, core developer http://www.rdesktop.org