aboutsummaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorPetr Mladek2021-11-18 10:03:47 +0100
committerPetr Mladek2021-11-18 10:03:47 +0100
commitbf6d0d1e1ab38309ea2a234e2e4ba2a18d014af9 (patch)
treeacc97528dc62243c6379d0eb7c8823b861fd968b /arch
parenta0ddee65c527d877e798205c1391c6170e580c66 (diff)
parent5d5e4522a7f404d1a96fd6c703989d32a9c9568d (diff)
Merge branch 'rework/printk_safe-removal' into for-linus
Diffstat (limited to 'arch')
-rw-r--r--arch/powerpc/kernel/watchdog.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/watchdog.c b/arch/powerpc/kernel/watchdog.c
index f9ea0e5357f9..3fa6d240bade 100644
--- a/arch/powerpc/kernel/watchdog.c
+++ b/arch/powerpc/kernel/watchdog.c
@@ -187,6 +187,12 @@ static void watchdog_smp_panic(int cpu, u64 tb)
if (sysctl_hardlockup_all_cpu_backtrace)
trigger_allbutself_cpu_backtrace();
+ /*
+ * Force flush any remote buffers that might be stuck in IRQ context
+ * and therefore could not run their irq_work.
+ */
+ printk_trigger_flush();
+
if (hardlockup_panic)
nmi_panic(NULL, "Hard LOCKUP");