Commit 63a81db13205f21047a0799adfd3a2419f190577
1 parent
657bec850f
Exists in
master
and in
20 other branches
merge do_mremap() into sys_mremap()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Showing 1 changed file with 5 additions and 14 deletions Side-by-side Diff
mm/mremap.c
... | ... | @@ -432,15 +432,17 @@ |
432 | 432 | * MREMAP_FIXED option added 5-Dec-1999 by Benjamin LaHaise |
433 | 433 | * This option implies MREMAP_MAYMOVE. |
434 | 434 | */ |
435 | -unsigned long do_mremap(unsigned long addr, | |
436 | - unsigned long old_len, unsigned long new_len, | |
437 | - unsigned long flags, unsigned long new_addr) | |
435 | +SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len, | |
436 | + unsigned long, new_len, unsigned long, flags, | |
437 | + unsigned long, new_addr) | |
438 | 438 | { |
439 | 439 | struct mm_struct *mm = current->mm; |
440 | 440 | struct vm_area_struct *vma; |
441 | 441 | unsigned long ret = -EINVAL; |
442 | 442 | unsigned long charged = 0; |
443 | 443 | |
444 | + down_write(¤t->mm->mmap_sem); | |
445 | + | |
444 | 446 | if (flags & ~(MREMAP_FIXED | MREMAP_MAYMOVE)) |
445 | 447 | goto out; |
446 | 448 | |
... | ... | @@ -538,17 +540,6 @@ |
538 | 540 | out: |
539 | 541 | if (ret & ~PAGE_MASK) |
540 | 542 | vm_unacct_memory(charged); |
541 | - return ret; | |
542 | -} | |
543 | - | |
544 | -SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len, | |
545 | - unsigned long, new_len, unsigned long, flags, | |
546 | - unsigned long, new_addr) | |
547 | -{ | |
548 | - unsigned long ret; | |
549 | - | |
550 | - down_write(¤t->mm->mmap_sem); | |
551 | - ret = do_mremap(addr, old_len, new_len, flags, new_addr); | |
552 | 543 | up_write(¤t->mm->mmap_sem); |
553 | 544 | return ret; |
554 | 545 | } |