diff options
author | Kefeng Wang <wangkefeng.wang@huawei.com> | 2017-05-09 04:53:37 +0300 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2017-05-30 13:07:42 +0300 |
commit | 1149aad10b1e2f2cf1ea023889ac8604ae869c5a (patch) | |
tree | 3cca27fa938ff0108046f2adb4b8f2a24cdd7177 /arch/arm64/kernel/traps.c | |
parent | c07ab957d9af8092fc3caf3db5a0fb49098fdc65 (diff) | |
download | linux-1149aad10b1e2f2cf1ea023889ac8604ae869c5a.tar.xz |
arm64: Add dump_backtrace() in show_regs
Generic code expects show_regs() to dump the stack, but arm64's
show_regs() does not. This makes it hard to debug softlockups and
other issues that result in show_regs() being called.
This patch updates arm64's show_regs() to dump the stack, as common
code expects.
Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
[will: folded in bug_handler fix from mrutland]
Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm64/kernel/traps.c')
-rw-r--r-- | arch/arm64/kernel/traps.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/arch/arm64/kernel/traps.c b/arch/arm64/kernel/traps.c index 0805b44f986a..3ebfb1d00b53 100644 --- a/arch/arm64/kernel/traps.c +++ b/arch/arm64/kernel/traps.c @@ -140,7 +140,7 @@ static void dump_instr(const char *lvl, struct pt_regs *regs) } } -static void dump_backtrace(struct pt_regs *regs, struct task_struct *tsk) +void dump_backtrace(struct pt_regs *regs, struct task_struct *tsk) { struct stackframe frame; unsigned long irq_stack_ptr; @@ -728,8 +728,6 @@ static int bug_handler(struct pt_regs *regs, unsigned int esr) break; case BUG_TRAP_TYPE_WARN: - /* Ideally, report_bug() should backtrace for us... but no. */ - dump_backtrace(regs, NULL); break; default: |