summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mm/vma.c15
1 files changed, 4 insertions, 11 deletions
diff --git a/mm/vma.c b/mm/vma.c
index c75322d0ffc2..78af0e530066 100644
--- a/mm/vma.c
+++ b/mm/vma.c
@@ -714,9 +714,6 @@ void validate_mm(struct mm_struct *mm)
*/
static void vmg_adjust_set_range(struct vma_merge_struct *vmg)
{
- struct vm_area_struct *adjust;
- pgoff_t pgoff;
-
if (vmg->__adjust_middle_start) {
/*
* vmg->start vmg->end
@@ -735,8 +732,8 @@ static void vmg_adjust_set_range(struct vma_merge_struct *vmg)
struct vm_area_struct *middle = vmg->middle;
const unsigned long delta = vmg->end - middle->vm_start;
- pgoff = vma_start_pgoff(middle) + (delta >> PAGE_SHIFT);
- adjust = middle;
+ __vma_set_range(middle, vmg->end, middle->vm_end);
+ vma_add_pgoff(middle, delta >> PAGE_SHIFT);
} else if (vmg->__adjust_next_start) {
/*
* Originally:
@@ -764,13 +761,9 @@ static void vmg_adjust_set_range(struct vma_merge_struct *vmg)
struct vm_area_struct *next = vmg->next;
const unsigned long delta = next->vm_start - vmg->end;
- pgoff = vma_start_pgoff(next) - (delta >> PAGE_SHIFT);
- adjust = next;
- } else {
- return;
+ __vma_set_range(next, vmg->end, next->vm_end);
+ vma_sub_pgoff(next, delta >> PAGE_SHIFT);
}
-
- vma_set_range(adjust, vmg->end, adjust->vm_end, pgoff);
}
/*