alloc_vmap_area: fix memory leak
authorRalph Wuerthner <ralphw@linux.vnet.ibm.com>
Wed, 6 May 2009 23:02:59 +0000 (16:02 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 6 May 2009 23:36:10 +0000 (16:36 -0700)
If alloc_vmap_area() fails the allocated struct vmap_area has to be freed.

Signed-off-by: Ralph Wuerthner <ralphw@linux.vnet.ibm.com>
Reviewed-by: Christoph Lameter <cl@linux-foundation.org>
Reviewed-by: Minchan Kim <minchan.kim@gmail.com>
Cc: Nick Piggin <npiggin@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/vmalloc.c

index fab19876b4d178986979c2b5d2cb353285507b46..083716ea38c9f7ba636cababe6859cd8e3c14106 100644 (file)
@@ -402,6 +402,7 @@ overflow:
                        printk(KERN_WARNING
                                "vmap allocation for size %lu failed: "
                                "use vmalloc=<size> to increase size.\n", size);
+               kfree(va);
                return ERR_PTR(-EBUSY);
        }