aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2021-11-18 10:50:45 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2021-11-18 10:50:45 -0800
commit7d5775d49e4a488bc8a07e5abb2b71a4c28aadbb (patch)
treedc93689f2ece8f213e223951f75aada9d86c6be6 /arch/powerpc
parentMerge tag 'gfs2-v5.16-rc2-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2 (diff)
parentMerge branch 'rework/printk_safe-removal' into for-linus (diff)
downloadlinux-dev-7d5775d49e4a488bc8a07e5abb2b71a4c28aadbb.tar.xz
linux-dev-7d5775d49e4a488bc8a07e5abb2b71a4c28aadbb.zip
Merge tag 'printk-for-5.16-fixup' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux
Pull printk fixes from Petr Mladek: - Try to flush backtraces from other CPUs also on the local one. This was a regression caused by printk_safe buffers removal. - Remove header dependency warning. * tag 'printk-for-5.16-fixup' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux: printk: Remove printk.h inclusion in percpu.h printk: restore flushing of NMI buffers on remote CPUs after NMI backtraces
Diffstat (limited to 'arch/powerpc')
-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");