aboutsummaryrefslogtreecommitdiffstats
path: root/mm/fremap.c
diff options
context:
space:
mode:
Diffstat (limited to 'mm/fremap.c')
-rw-r--r--mm/fremap.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/mm/fremap.c b/mm/fremap.c
index 46f5dacf90a2..7b7f852848de 100644
--- a/mm/fremap.c
+++ b/mm/fremap.c
@@ -125,7 +125,6 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
125{ 125{
126 struct mm_struct *mm = current->mm; 126 struct mm_struct *mm = current->mm;
127 struct address_space *mapping; 127 struct address_space *mapping;
128 unsigned long end = start + size;
129 struct vm_area_struct *vma; 128 struct vm_area_struct *vma;
130 int err = -EINVAL; 129 int err = -EINVAL;
131 int has_write_lock = 0; 130 int has_write_lock = 0;
@@ -168,7 +167,7 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
168 if (!(vma->vm_flags & VM_CAN_NONLINEAR)) 167 if (!(vma->vm_flags & VM_CAN_NONLINEAR))
169 goto out; 168 goto out;
170 169
171 if (end <= start || start < vma->vm_start || end > vma->vm_end) 170 if (start < vma->vm_start || start + size > vma->vm_end)
172 goto out; 171 goto out;
173 172
174 /* Must set VM_NONLINEAR before any pages are populated. */ 173 /* Must set VM_NONLINEAR before any pages are populated. */