diff options
author | Hugh Dickins <hugh@veritas.com> | 2006-11-14 08:43:38 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.osdl.org> | 2006-11-14 18:15:01 -0500 |
commit | cd2579d7aa7bfc966cc271a88e77f8cfc3b0b7ba (patch) | |
tree | 47687e0e88bf5f5ea266112490a63f55085b8c18 /mm | |
parent | 1f794b6082a5ff88f7c48d1634056026acf806f4 (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>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/mmap.c | 5 |
1 files changed, 2 insertions, 3 deletions
@@ -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 | ||