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

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.

I could not test this patch for sparc64.

Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/sparc64/kernel/kprobes.c