diff options
author | Jesper Nilsson <jesper.nilsson@axis.com> | 2010-08-04 11:48:40 -0400 |
---|---|---|
committer | Jesper Nilsson <jesper.nilsson@axis.com> | 2010-08-04 12:28:49 -0400 |
commit | 2d495ebc55f0d5a7ac488716230d817d43818549 (patch) | |
tree | 3f3c8f8f03f32453b82dcce4bd9b75f8567cf914 /arch | |
parent | b4e8a1813c7d65a7c28a3536da08444c21f2c37b (diff) |
CRIS: Always dump registers for segfaulting process.
Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/cris/mm/fault.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/cris/mm/fault.c b/arch/cris/mm/fault.c index 7705cd7cef36..9dcac8ec8fa0 100644 --- a/arch/cris/mm/fault.c +++ b/arch/cris/mm/fault.c | |||
@@ -12,6 +12,7 @@ | |||
12 | 12 | ||
13 | extern int find_fixup_code(struct pt_regs *); | 13 | extern int find_fixup_code(struct pt_regs *); |
14 | extern void die_if_kernel(const char *, struct pt_regs *, long); | 14 | extern void die_if_kernel(const char *, struct pt_regs *, long); |
15 | extern void show_registers(struct pt_regs *regs); | ||
15 | 16 | ||
16 | /* debug of low-level TLB reload */ | 17 | /* debug of low-level TLB reload */ |
17 | #undef DEBUG | 18 | #undef DEBUG |
@@ -195,6 +196,11 @@ do_page_fault(unsigned long address, struct pt_regs *regs, | |||
195 | "address %08lx at pc %08lx\n", | 196 | "address %08lx at pc %08lx\n", |
196 | tsk->comm, tsk->pid, | 197 | tsk->comm, tsk->pid, |
197 | address, instruction_pointer(regs)); | 198 | address, instruction_pointer(regs)); |
199 | |||
200 | /* With DPG on, we've already dumped registers above. */ | ||
201 | DPG(if (0)) | ||
202 | show_registers(regs); | ||
203 | |||
198 | #ifdef CONFIG_NO_SEGFAULT_TERMINATION | 204 | #ifdef CONFIG_NO_SEGFAULT_TERMINATION |
199 | DECLARE_WAIT_QUEUE_HEAD(wq); | 205 | DECLARE_WAIT_QUEUE_HEAD(wq); |
200 | wait_event_interruptible(wq, 0 == 1); | 206 | wait_event_interruptible(wq, 0 == 1); |