diff options
Diffstat (limited to 'arch/x86/kernel/traps_32.c')
-rw-r--r-- | arch/x86/kernel/traps_32.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/x86/kernel/traps_32.c b/arch/x86/kernel/traps_32.c index 298d13ed3ab..ef601026259 100644 --- a/arch/x86/kernel/traps_32.c +++ b/arch/x86/kernel/traps_32.c | |||
@@ -283,6 +283,11 @@ void dump_stack(void) | |||
283 | { | 283 | { |
284 | unsigned long stack; | 284 | unsigned long stack; |
285 | 285 | ||
286 | printk("Pid: %d, comm: %.20s %s %s %.*s\n", | ||
287 | current->pid, current->comm, print_tainted(), | ||
288 | init_utsname()->release, | ||
289 | (int)strcspn(init_utsname()->version, " "), | ||
290 | init_utsname()->version); | ||
286 | show_trace(current, NULL, &stack); | 291 | show_trace(current, NULL, &stack); |
287 | } | 292 | } |
288 | 293 | ||
@@ -828,6 +833,8 @@ fastcall void __kprobes do_debug(struct pt_regs * regs, long error_code) | |||
828 | unsigned int condition; | 833 | unsigned int condition; |
829 | struct task_struct *tsk = current; | 834 | struct task_struct *tsk = current; |
830 | 835 | ||
836 | trace_hardirqs_fixup(); | ||
837 | |||
831 | get_debugreg(condition, 6); | 838 | get_debugreg(condition, 6); |
832 | 839 | ||
833 | if (notify_die(DIE_DEBUG, "debug", regs, condition, error_code, | 840 | if (notify_die(DIE_DEBUG, "debug", regs, condition, error_code, |