]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - mm/util.c
mm: make vm_mmap killable
[mirror_ubuntu-bionic-kernel.git] / mm / util.c
index 03b23774685081d77391505816bc00221d1a1ea8..917e0e3d0f8ee3a05edf78a665eace20635b3aa0 100644 (file)
--- a/mm/util.c
+++ b/mm/util.c
@@ -289,7 +289,7 @@ EXPORT_SYMBOL_GPL(get_user_pages_fast);
 
 unsigned long vm_mmap_pgoff(struct file *file, unsigned long addr,
        unsigned long len, unsigned long prot,
-       unsigned long flag, unsigned long pgoff, bool killable)
+       unsigned long flag, unsigned long pgoff)
 {
        unsigned long ret;
        struct mm_struct *mm = current->mm;
@@ -297,12 +297,8 @@ unsigned long vm_mmap_pgoff(struct file *file, unsigned long addr,
 
        ret = security_mmap_file(file, prot, flag);
        if (!ret) {
-               if (killable) {
-                       if (down_write_killable(&mm->mmap_sem))
-                               return -EINTR;
-               } else {
-                       down_write(&mm->mmap_sem);
-               }
+               if (down_write_killable(&mm->mmap_sem))
+                       return -EINTR;
                ret = do_mmap_pgoff(file, addr, len, prot, flag, pgoff,
                                    &populate);
                up_write(&mm->mmap_sem);
@@ -312,7 +308,6 @@ unsigned long vm_mmap_pgoff(struct file *file, unsigned long addr,
        return ret;
 }
 
-/* XXX are all callers checking an error */
 unsigned long vm_mmap(struct file *file, unsigned long addr,
        unsigned long len, unsigned long prot,
        unsigned long flag, unsigned long offset)
@@ -322,7 +317,7 @@ unsigned long vm_mmap(struct file *file, unsigned long addr,
        if (unlikely(offset_in_page(offset)))
                return -EINVAL;
 
-       return vm_mmap_pgoff(file, addr, len, prot, flag, offset >> PAGE_SHIFT, false);
+       return vm_mmap_pgoff(file, addr, len, prot, flag, offset >> PAGE_SHIFT);
 }
 EXPORT_SYMBOL(vm_mmap);