[PATCH] kprobes: fix broken fault handling for i386
authorPrasanna S Panchamukhi <prasanna@in.ibm.com>
Sun, 26 Mar 2006 09:38:22 +0000 (01:38 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sun, 26 Mar 2006 16:57:04 +0000 (08:57 -0800)
commitb4026513b88e7eaa52a31117e2b7bafdc1e40ef1
tree92bbffa53339d237424099bce8fb72d8996f93c2
parent2326c77017c79fd6d55c69d8a49a57a252921bcd
[PATCH] kprobes: fix broken fault handling for i386

Provide proper kprobes fault handling, if a user-specified pre/post handlers
tries to access user address space, through copy_from_user(), get_user() etc.

The user-specified fault handler gets called only if the fault occurs while
executing user-specified handlers.  In such a case user-specified handler is
allowed to fix it first, later if the user-specifed fault handler does not fix
it, we try to fix it by calling fix_exception().

The user-specified handler will not be called if the fault happens when single
stepping the original instruction, instead we reset the current probe and
allow the system page fault handler to fix it up.

Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/i386/kernel/kprobes.c