diff options
Diffstat (limited to 'mm/fremap.c')
-rw-r--r-- | mm/fremap.c | 3 |
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. */ |