Lines Matching refs:new_len
238 unsigned long new_len, unsigned long new_addr, bool *locked) in move_vma() argument
271 new_vma = copy_vma(&vma, new_addr, new_len, new_pgoff, in move_vma()
293 old_len = new_len; in move_vma()
298 new_addr, new_addr + new_len); in move_vma()
320 vm_stat_account(mm, vma->vm_flags, vma->vm_file, new_len>>PAGE_SHIFT); in move_vma()
337 mm->locked_vm += new_len >> PAGE_SHIFT; in move_vma()
345 unsigned long old_len, unsigned long new_len, unsigned long *p) in vma_to_resize() argument
361 if (new_len == old_len) in vma_to_resize()
367 if (pgoff + (new_len >> PAGE_SHIFT) < pgoff) in vma_to_resize()
377 locked += new_len - old_len; in vma_to_resize()
382 if (!may_expand_vm(mm, (new_len - old_len) >> PAGE_SHIFT)) in vma_to_resize()
386 unsigned long charged = (new_len - old_len) >> PAGE_SHIFT; in vma_to_resize()
396 unsigned long new_addr, unsigned long new_len, bool *locked) in mremap_to() argument
407 if (new_len > TASK_SIZE || new_addr > TASK_SIZE - new_len) in mremap_to()
411 if (addr + old_len > new_addr && new_addr + new_len > addr) in mremap_to()
414 ret = do_munmap(mm, new_addr, new_len); in mremap_to()
418 if (old_len >= new_len) { in mremap_to()
419 ret = do_munmap(mm, addr+new_len, old_len - new_len); in mremap_to()
420 if (ret && old_len != new_len) in mremap_to()
422 old_len = new_len; in mremap_to()
425 vma = vma_to_resize(addr, old_len, new_len, &charged); in mremap_to()
435 ret = get_unmapped_area(vma->vm_file, new_addr, new_len, vma->vm_pgoff + in mremap_to()
441 ret = move_vma(vma, addr, old_len, new_len, new_addr, locked); in mremap_to()
472 unsigned long, new_len, unsigned long, flags, in SYSCALL_DEFINE5() argument
491 new_len = PAGE_ALIGN(new_len); in SYSCALL_DEFINE5()
498 if (!new_len) in SYSCALL_DEFINE5()
504 ret = mremap_to(addr, old_len, new_addr, new_len, in SYSCALL_DEFINE5()
514 if (old_len >= new_len) { in SYSCALL_DEFINE5()
515 ret = do_munmap(mm, addr+new_len, old_len - new_len); in SYSCALL_DEFINE5()
516 if (ret && old_len != new_len) in SYSCALL_DEFINE5()
525 vma = vma_to_resize(addr, old_len, new_len, &charged); in SYSCALL_DEFINE5()
535 if (vma_expandable(vma, new_len - old_len)) { in SYSCALL_DEFINE5()
536 int pages = (new_len - old_len) >> PAGE_SHIFT; in SYSCALL_DEFINE5()
538 if (vma_adjust(vma, vma->vm_start, addr + new_len, in SYSCALL_DEFINE5()
565 new_addr = get_unmapped_area(vma->vm_file, 0, new_len, in SYSCALL_DEFINE5()
574 ret = move_vma(vma, addr, old_len, new_len, new_addr, &locked); in SYSCALL_DEFINE5()
582 if (locked && new_len > old_len) in SYSCALL_DEFINE5()
583 mm_populate(new_addr + old_len, new_len - old_len); in SYSCALL_DEFINE5()