aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHugh Dickins <hugh@veritas.com>2006-11-14 08:43:38 -0500
committerLinus Torvalds <torvalds@woody.osdl.org>2006-11-14 18:15:01 -0500
commitcd2579d7aa7bfc966cc271a88e77f8cfc3b0b7ba (patch)
tree47687e0e88bf5f5ea266112490a63f55085b8c18
parent1f794b6082a5ff88f7c48d1634056026acf806f4 (diff)
[PATCH] hugetlb: fix error return for brk() entering a hugepage region
Commit cb07c9a1864a8eac9f3123e428100d5b2a16e65a 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: Linus Torvalds <torvalds@osdl.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 2526463c99a7..7b40abd7cba2 100644
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -1880,9 +1880,8 @@ unsigned long do_brk(unsigned long addr, unsigned long len)
1880 if ((addr + len) > TASK_SIZE || (addr + len) < addr) 1880 if ((addr + len) > TASK_SIZE || (addr + len) < addr)
1881 return -EINVAL; 1881 return -EINVAL;
1882 1882
1883 error = is_hugepage_only_range(current->mm, addr, len); 1883 if (is_hugepage_only_range(mm, addr, len))
1884 if (error) 1884 return -EINVAL;
1885 return error;
1886 1885
1887 flags = VM_DATA_DEFAULT_FLAGS | VM_ACCOUNT | mm->def_flags; 1886 flags = VM_DATA_DEFAULT_FLAGS | VM_ACCOUNT | mm->def_flags;
1888 1887