pnp: avoid a small unlikely memory leak in proc_read_escd()
authorJesper Juhl <jesper.juhl@gmail.com>
Wed, 17 Oct 2007 06:26:56 +0000 (23:26 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Wed, 17 Oct 2007 15:42:51 +0000 (08:42 -0700)
There's a small and unlikely memory leak in
drivers/pnp/pnpbios/proc.c::proc_read_escd().  It's inside a sanity check,
so it probably won't trigger often (if at all), however it *is* a potential
leak and it's easy to avoid, so let's just fix it :)

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/pnp/pnpbios/proc.c

index 9d9841f24a85d28999e9b060589da88c9a4ff31e..bb19bc957bad9274457930b8b75b7753e62a7ac4 100644 (file)
@@ -94,8 +94,9 @@ static int proc_read_escd(char *buf, char **start, off_t pos,
 
        /* sanity check */
        if (escd_size > MAX_SANE_ESCD_SIZE) {
-               printk(KERN_ERR
-                      "PnPBIOS: proc_read_escd: ESCD size reported by BIOS read_escd call is too great\n");
+               printk(KERN_ERR "PnPBIOS: proc_read_escd: ESCD size reported by"
+                               " BIOS read_escd call is too great\n");
+               kfree(tmpbuf);
                return -EFBIG;
        }