From 9ec14bb8cf4f97efd10f33ee72b19cb792040efe Mon Sep 17 00:00:00 2001 From: Al Viro Date: Wed, 30 May 2012 11:32:04 -0400 Subject: [PATCH] --- yaml --- r: 310034 b: refs/heads/master c: 63a81db13205f21047a0799adfd3a2419f190577 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/mm/mremap.c | 19 +++++-------------- 2 files changed, 6 insertions(+), 15 deletions(-) diff --git a/[refs] b/[refs] index 8a81876dcd77..5ac640d60076 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 657bec850ff98b82b3a617b588a6523487344ccc +refs/heads/master: 63a81db13205f21047a0799adfd3a2419f190577 diff --git a/trunk/mm/mremap.c b/trunk/mm/mremap.c index db8d983b5a7d..169c53b87749 100644 --- a/trunk/mm/mremap.c +++ b/trunk/mm/mremap.c @@ -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 * This option implies MREMAP_MAYMOVE. */ -unsigned long do_mremap(unsigned long addr, - unsigned long old_len, unsigned long new_len, - unsigned long flags, unsigned long new_addr) +SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len, + unsigned long, new_len, unsigned long, flags, + unsigned long, new_addr) { struct mm_struct *mm = current->mm; struct vm_area_struct *vma; unsigned long ret = -EINVAL; unsigned long charged = 0; + down_write(¤t->mm->mmap_sem); + if (flags & ~(MREMAP_FIXED | MREMAP_MAYMOVE)) goto out; @@ -538,17 +540,6 @@ unsigned long do_mremap(unsigned long addr, out: if (ret & ~PAGE_MASK) 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(¤t->mm->mmap_sem); - ret = do_mremap(addr, old_len, new_len, flags, new_addr); up_write(¤t->mm->mmap_sem); return ret; }