diff options
Diffstat (limited to 'arch/s390/kernel/traps.c')
-rw-r--r-- | arch/s390/kernel/traps.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/arch/s390/kernel/traps.c b/arch/s390/kernel/traps.c index b3524134f213..57b607b61100 100644 --- a/arch/s390/kernel/traps.c +++ b/arch/s390/kernel/traps.c | |||
@@ -134,7 +134,6 @@ void show_trace(struct task_struct *task, unsigned long *stack) | |||
134 | else | 134 | else |
135 | __show_trace(sp, S390_lowcore.thread_info, | 135 | __show_trace(sp, S390_lowcore.thread_info, |
136 | S390_lowcore.thread_info + THREAD_SIZE); | 136 | S390_lowcore.thread_info + THREAD_SIZE); |
137 | printk("\n"); | ||
138 | if (!task) | 137 | if (!task) |
139 | task = current; | 138 | task = current; |
140 | debug_show_held_locks(task); | 139 | debug_show_held_locks(task); |
@@ -162,6 +161,15 @@ void show_stack(struct task_struct *task, unsigned long *sp) | |||
162 | show_trace(task, sp); | 161 | show_trace(task, sp); |
163 | } | 162 | } |
164 | 163 | ||
164 | #ifdef CONFIG_64BIT | ||
165 | void show_last_breaking_event(struct pt_regs *regs) | ||
166 | { | ||
167 | printk("Last Breaking-Event-Address:\n"); | ||
168 | printk(" [<%016lx>] ", regs->args[0] & PSW_ADDR_INSN); | ||
169 | print_symbol("%s\n", regs->args[0] & PSW_ADDR_INSN); | ||
170 | } | ||
171 | #endif | ||
172 | |||
165 | /* | 173 | /* |
166 | * The architecture-independent dump_stack generator | 174 | * The architecture-independent dump_stack generator |
167 | */ | 175 | */ |