]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
mm/mmap: Fix remap_file_pages() locking to work with new do_mmap()
authorLiam R. Howlett <Liam.Howlett@Oracle.com>
Tue, 16 Mar 2021 16:35:18 +0000 (12:35 -0400)
committerLiam R. Howlett <Liam.Howlett@Oracle.com>
Tue, 16 Mar 2021 16:35:18 +0000 (12:35 -0400)
Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com>
mm/mmap.c

index b425510cd64a7aadb9604237f1915a013fc2ab29..601632be18d98e320219e6e101fa3372d7f87cdd 100644 (file)
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -2979,7 +2979,7 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
        if (mmap_write_lock_killable(mm))
                return -EINTR;
 
-       mas_lock(&mas);
+       rcu_read_lock();
        mas_set(&mas, start);
        vma = mas_walk(&mas);
 
@@ -3028,7 +3028,7 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
                        prot, flags, pgoff, &populate, NULL);
        fput(file);
 out:
-       mas_unlock(&mas);
+       rcu_read_unlock();
        mmap_write_unlock(mm);
        if (populate)
                mm_populate(ret, populate);