merge do_mremap() into sys_mremap()

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
Al Viro 2012-05-30 11:32:04 -04:00
parent 657bec850f
commit 63a81db132
1 changed files with 5 additions and 14 deletions

View File

@ -432,15 +432,17 @@ static int vma_expandable(struct vm_area_struct *vma, unsigned long delta)
* MREMAP_FIXED option added 5-Dec-1999 by Benjamin LaHaise * MREMAP_FIXED option added 5-Dec-1999 by Benjamin LaHaise
* This option implies MREMAP_MAYMOVE. * This option implies MREMAP_MAYMOVE.
*/ */
unsigned long do_mremap(unsigned long addr, SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len,
unsigned long old_len, unsigned long new_len, unsigned long, new_len, unsigned long, flags,
unsigned long flags, unsigned long new_addr) unsigned long, new_addr)
{ {
struct mm_struct *mm = current->mm; struct mm_struct *mm = current->mm;
struct vm_area_struct *vma; struct vm_area_struct *vma;
unsigned long ret = -EINVAL; unsigned long ret = -EINVAL;
unsigned long charged = 0; unsigned long charged = 0;
down_write(&current->mm->mmap_sem);
if (flags & ~(MREMAP_FIXED | MREMAP_MAYMOVE)) if (flags & ~(MREMAP_FIXED | MREMAP_MAYMOVE))
goto out; goto out;
@ -538,17 +540,6 @@ unsigned long do_mremap(unsigned long addr,
out: out:
if (ret & ~PAGE_MASK) if (ret & ~PAGE_MASK)
vm_unacct_memory(charged); vm_unacct_memory(charged);
return ret;
}
SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len,
unsigned long, new_len, unsigned long, flags,
unsigned long, new_addr)
{
unsigned long ret;
down_write(&current->mm->mmap_sem);
ret = do_mremap(addr, old_len, new_len, flags, new_addr);
up_write(&current->mm->mmap_sem); up_write(&current->mm->mmap_sem);
return ret; return ret;
} }