summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHugh Dickins <hugh@veritas.com>2007-10-28 22:22:25 +0100
committerAdrian Bunk <bunk@kernel.org>2007-10-28 22:22:25 +0100
commit255189a700d809000157d5eed1a3ede9e6426f68 (patch)
tree7db1820e62d95b91779f4e09f80f8a31729afbde
parent6a93b22bc8569315b2e0ce07297b73673882925a (diff)
hugetlb: fix error return for brk() entering a hugepage region
The lats commit causes the wrong return value. is_hugepage_only_range() is a boolean, so we should return -EINVAL rather than 1. Also - we can use "mm" instead of looking up "current->mm" again. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Adrian Bunk <bunk@kernel.org>
-rw-r--r--mm/mmap.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/mm/mmap.c b/mm/mmap.c
index a04576de3254..666932b09ea0 100644
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -1870,9 +1870,8 @@ unsigned long do_brk(unsigned long addr, unsigned long len)
if ((addr + len) > TASK_SIZE || (addr + len) < addr)
return -EINVAL;
- error = is_hugepage_only_range(current->mm, addr, len);
- if (error)
- return error;
+ if (is_hugepage_only_range(mm, addr, len))
+ return -EINVAL;
flags = VM_DATA_DEFAULT_FLAGS | VM_ACCOUNT | mm->def_flags;