Nicholas Piggin <npig...@gmail.com> writes: > On Thu, 12 Oct 2017 15:44:34 +1100 > Michael Ellerman <m...@ellerman.id.au> wrote: > >> When a CPU detects its locked up via soft_nmi_interrupt() we have >> pt_regs, so print the regs->nip, which points to where we took the >> soft-NMI. >> >> Signed-off-by: Michael Ellerman <m...@ellerman.id.au> >> --- >> arch/powerpc/kernel/watchdog.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/arch/powerpc/kernel/watchdog.c b/arch/powerpc/kernel/watchdog.c >> index 2494cbe34132..4594ba0979e4 100644 >> --- a/arch/powerpc/kernel/watchdog.c >> +++ b/arch/powerpc/kernel/watchdog.c >> @@ -235,7 +235,7 @@ void soft_nmi_interrupt(struct pt_regs *regs) >> } >> set_cpu_stuck(cpu, tb); >> >> - pr_emerg("CPU %d self-detected hard LOCKUP\n", cpu); >> + pr_emerg("CPU %d self-detected hard LOCKUP @ %pS\n", cpu, (void >> *)regs->nip); >> print_modules(); >> print_irqtrace_events(current); >> show_regs(regs); > > These patches all look fine to me, but we should be printing nip > with show_regs, so why here too?
Because we can? :) But maybe it's overkill. We also have issues with loglevels, where sometimes you don't see the regs, and just the EMERG lines, so it helps then. But possibly we should fix that by making show_regs() EMERG, though other arches don't seem to. cheers