mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-24 09:40:58 +07:00
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 <namhyung@gmail.com> Acked-by: Greg Ungerer <gerg@uclinux.org> Cc: David Howells <dhowells@redhat.com> Cc: Paul Mundt <lethal@linux-sh.org> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
d75a310c42
commit
7223bb4a82
@ -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;
|
||||
|
Loading…
Reference in New Issue
Block a user