public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH][cciss] Fix a small memory leak in the cciss driver
@ 2007-07-20 21:58 Jesper Juhl
  0 siblings, 0 replies; only message in thread
From: Jesper Juhl @ 2007-07-20 21:58 UTC (permalink / raw)
  To: Mike Miller; +Cc: Linux Kernel Mailing List, iss_storagedev, Jesper Juhl

Hello,

There's a memory leak in the cciss driver.

in alloc_cciss_hba() we may leak sizeof(ctlr_info_t) bytes if a 
call to alloc_disk(1 << NWD_SHIFT) fails.
This patch should fix the issue.

 Spotted by the Coverity checker.
 Compile tested only.


Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
---

 drivers/block/cciss.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
index a2d6612..ef7ba22 100644
--- a/drivers/block/cciss.c
+++ b/drivers/block/cciss.c
@@ -3227,12 +3227,15 @@ static int alloc_cciss_hba(void)
 	for (i = 0; i < MAX_CTLR; i++) {
 		if (!hba[i]) {
 			ctlr_info_t *p;
+
 			p = kzalloc(sizeof(ctlr_info_t), GFP_KERNEL);
 			if (!p)
 				goto Enomem;
 			p->gendisk[0] = alloc_disk(1 << NWD_SHIFT);
-			if (!p->gendisk[0])
+			if (!p->gendisk[0]) {
+				kfree(p);
 				goto Enomem;
+			}
 			hba[i] = p;
 			return i;
 		}



^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2007-07-20 22:00 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-07-20 21:58 [PATCH][cciss] Fix a small memory leak in the cciss driver Jesper Juhl

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox