Thread (13 messages) flat view 13 messages, 2 authors, 2021-11-05

Re: [PATCH v2 5/5] powerpc/watchdog: Remove backtrace print from unstuck message

From: Laurent Dufour <hidden>
Date: 2021-11-04 16:49:49

Le 04/11/2021 à 17:10, Nicholas Piggin a écrit :
The watchdog unstuck message can't be serialised with other watchdog
messages because that might prevent watchdog reporting. This removes
the big backtrace from the unstuck message, which can get mixed with
other messages and confuse logs, and just prints a single line.
I'm not sure that's a good idea to remove the registers and backtrace here.
I agree that this output may interleaved (and usually it does), but it is also 
providing some good information about the culprit block of code. Usually, it's 
pointing the IRQ release code, and so the IRQ blocking one which are really useful.

I don't have a good way to prevent trace interleaving here, but I think 
interleaved traces are better here than nothing.

Thanks,
Laurent.
quoted hunk ↗ jump to hunk
Signed-of-by: Nicholas Piggin [off-list ref]
---
  arch/powerpc/kernel/watchdog.c | 6 ------
  1 file changed, 6 deletions(-)
diff --git a/arch/powerpc/kernel/watchdog.c b/arch/powerpc/kernel/watchdog.c
index 2444cd10b61a..5f69ba4de1f3 100644
--- a/arch/powerpc/kernel/watchdog.c
+++ b/arch/powerpc/kernel/watchdog.c
@@ -242,16 +242,10 @@ static void wd_smp_clear_cpu_pending(int cpu)
  {
  	if (!cpumask_test_cpu(cpu, &wd_smp_cpus_pending)) {
  		if (unlikely(cpumask_test_cpu(cpu, &wd_smp_cpus_stuck))) {
-			struct pt_regs *regs = get_irq_regs();
  			unsigned long flags;
  
  			pr_emerg("CPU %d became unstuck TB:%lld\n",
  				 cpu, get_tb());
-			print_irqtrace_events(current);
-			if (regs)
-				show_regs(regs);
-			else
-				dump_stack();
  
  			wd_smp_lock(&flags);
  			cpumask_clear_cpu(cpu, &wd_smp_cpus_stuck);
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help