From: Namhyung Kim Date: Wed, 25 May 2011 00:11:26 +0000 (-0700) Subject: mm: nommu: fix a potential memory leak in do_mmap_private() X-Git-Tag: firefly_0821_release~7613^2~1279 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=7223bb4a829628bdf37d544ed4363d99bac1ade6;p=firefly-linux-kernel-4.4.55.git mm: nommu: fix a potential memory leak in do_mmap_private() If f_op->read() fails and sysctl_nr_trim_pages > 1, there could be a memory leak between @region->vm_end and @region->vm_top. Signed-off-by: Namhyung Kim Acked-by: Greg Ungerer Cc: David Howells Cc: Paul Mundt Cc: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/mm/nommu.c b/mm/nommu.c index 0563fd9003df..57ae6126b29a 100644 --- a/mm/nommu.c +++ b/mm/nommu.c @@ -1217,7 +1217,7 @@ static int do_mmap_private(struct vm_area_struct *vma, return 0; error_free: - free_page_series(region->vm_start, region->vm_end); + free_page_series(region->vm_start, region->vm_top); region->vm_start = vma->vm_start = 0; region->vm_end = vma->vm_end = 0; region->vm_top = 0;