]> git.proxmox.com Git - mirror_ubuntu-disco-kernel.git/commit
mips,kgdb: fix recursive page fault with CONFIG_KPROBES
authorJason Wessel <jason.wessel@windriver.com>
Fri, 10 Aug 2012 17:21:15 +0000 (12:21 -0500)
committerJason Wessel <jason.wessel@windriver.com>
Fri, 12 Oct 2012 11:37:34 +0000 (06:37 -0500)
commitf0a996eeeda214f4293e234df33b29bec003b536
tree0e99211ea48768a0bf9a9590861a24640cc50ea6
parentf30fed10c440a25937e509860fa207399b26efe5
mips,kgdb: fix recursive page fault with CONFIG_KPROBES

This fault was detected using the kgdb test suite on boot and it
crashes recursively due to the fact that CONFIG_KPROBES on mips adds
an extra die notifier in the page fault handler.  The crash signature
looks like this:

kgdbts:RUN bad memory access test
KGDB: re-enter exception: ALL breakpoints killed
Call Trace:
[<807b7548>] dump_stack+0x20/0x54
[<807b7548>] dump_stack+0x20/0x54

The fix for now is to have kgdb return immediately if the fault type
is DIE_PAGE_FAULT and allow the kprobe code to decide what is supposed
to happen.

Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: <stable@vger.kernel.org>
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
arch/mips/kernel/kgdb.c