diff options
author | Nick Piggin <nickpiggin@yahoo.com.au> | 2005-11-29 02:43:17 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-11-29 10:53:32 -0500 |
commit | fa2a455b028f3b6ca4dae129c6337d7edf21f12c (patch) | |
tree | 42b147522c5c112e26efa55b8173a97b424149a5 /mm/memory.c | |
parent | 624f54be206adf970cd8eece16446b027913e533 (diff) |
[PATCH] Fix vma argument in get_usr_pages() for gate areas
The system call gate area handling called vm_normal_page() with the
wrong vma (which was always NULL, and caused an oops).
Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'mm/memory.c')
-rw-r--r-- | mm/memory.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/memory.c b/mm/memory.c index 9ab206b829a2..6c1eac92a316 100644 --- a/mm/memory.c +++ b/mm/memory.c | |||
@@ -988,7 +988,7 @@ int get_user_pages(struct task_struct *tsk, struct mm_struct *mm, | |||
988 | return i ? : -EFAULT; | 988 | return i ? : -EFAULT; |
989 | } | 989 | } |
990 | if (pages) { | 990 | if (pages) { |
991 | struct page *page = vm_normal_page(vma, start, *pte); | 991 | struct page *page = vm_normal_page(gate_vma, start, *pte); |
992 | pages[i] = page; | 992 | pages[i] = page; |
993 | if (page) | 993 | if (page) |
994 | get_page(page); | 994 | get_page(page); |