OSDN Git Service

[PATCH] IA64: page_not_present fault in region 5 is normal
authorKiyoshi Ueda <k-ueda@ct.jp.nec.com>
Tue, 13 Sep 2005 14:15:57 +0000 (10:15 -0400)
committerMarcelo Tosatti <marcelo@dmt.cnet>
Mon, 19 Sep 2005 15:45:25 +0000 (12:45 -0300)
commit6ef620e13bc30c0f1f8ba095f4321273840ec364
tree6c8d8cf36def70a888ed3e21f8be580b96152edd
parent85bfe540fd7f3901cc92805808f3050d3fd135a5
[PATCH] IA64: page_not_present fault in region 5 is normal

Attached is a patch for the latest 2.4 tree
which is semantically identical to what was included in 2.6.
http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=63028aa7f581d9d4e6889f9dc06ded2534250a76

Without this patch, exception handler can be unexpectedly invoked for
page-not-present fault in region 5 and cause panic etc.

Could you apply the attached patch to 2.4?
We tested the patch on 2.4.29 + linux-2.4.29-ia64-050312 patch
which is the latest version working on ia64.

Excerpt from ChangeLog-2.6.14-rc1:

When copying data from user-space to kernel-space by __copy_user(),
a page_not_present fault sometimes occurs at vmalloced kernel address
because of VHPT pre-fetching.

Ignore the page_not_present fault in ia64_do_page_fault() before
jumping into exception handlers.

Signed-off-by: Kiyoshi Ueda <k-ueda@ct.jp.nec.com>
Signed-off-by: Jun'ichi Nomura <j-nomura@ce.jp.nec.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
diff --git a/arch/ia64/mm/fault.c b/arch/ia64/mm/fault.c
arch/ia64/mm/fault.c