]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
mmap: Use find_vma_intersection in do_mmap() for overlap
authorLiam R. Howlett <Liam.Howlett@Oracle.com>
Tue, 24 Nov 2020 21:23:38 +0000 (16:23 -0500)
committerLiam R. Howlett <Liam.Howlett@Oracle.com>
Wed, 20 Jan 2021 14:28:15 +0000 (09:28 -0500)
When detecting a conflict with MAP_FIXED_NOREPLACE, using the new interface avoids
the need for a temp variable

Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com>
mm/mmap.c

index 9f011aa96af987a408d27347f2ce85422140d6aa..e49f71792c95bc65f6f0302117b8657927984825 100644 (file)
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -1443,9 +1443,7 @@ unsigned long do_mmap(struct file *file, unsigned long addr,
                return addr;
 
        if (flags & MAP_FIXED_NOREPLACE) {
-               struct vm_area_struct *vma = find_vma(mm, addr);
-
-               if (vma && vma->vm_start < addr + len)
+               if (find_vma_intersection(mm, addr, addr + len))
                        return -EEXIST;
        }