From e156be6959d5c4e7e71af76bc9e69270ce208601 Mon Sep 17 00:00:00 2001 From: He Sheng Date: Sun, 9 Oct 2022 09:18:48 +0800 Subject: [PATCH] sw64: print real address of sp in show_regs() Sunway inclusion category: feature bugzilla: https://gitee.com/openeuler/kernel/issues/I56OLG -------------------------------- In show_regs(), we really want to print the address of stack pointer for debugging. Signed-off-by: He Sheng Reviewed-by: Cui Wei Signed-off-by: Gu Zitao --- arch/sw_64/kernel/traps.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/sw_64/kernel/traps.c b/arch/sw_64/kernel/traps.c index f01b88e53ff2..5fac85c29bf6 100644 --- a/arch/sw_64/kernel/traps.c +++ b/arch/sw_64/kernel/traps.c @@ -69,7 +69,8 @@ void show_regs(struct pt_regs *regs) regs->r22, regs->r23, regs->r24); printk("t11= %016lx pv = %016lx at = %016lx\n", regs->r25, regs->r27, regs->r28); - printk("gp = %016lx sp = %p\n", regs->gp, regs+1); + printk("gp = %016lx sp = %px\n", regs->gp, + user_mode(regs) ? (void *)rdusp() : (regs + 1)); } static void show_code(unsigned int *pc) -- GitLab