linux/arch/x86
Paul E. McKenney 3186b61812 x86/nmi: Upgrade NMI backtrace stall checks & messages
The commit to improve NMI stall debuggability:

  344da544f1 ("x86/nmi: Print reasons why backtrace NMIs are ignored")

... has shown value, but widespread use has also identified a few
opportunities for improvement.

The systems have (as usual) shown far more creativity than that commit's
author, demonstrating yet again that failing CPUs can do whatever they want.

In addition, the current message format is less friendly than one might
like to those attempting to use these messages to identify failing CPUs.

Therefore, separately flag CPUs that, during the full time that the
stack-backtrace request was waiting, were always in an NMI handler,
were never in an NMI handler, or exited one NMI handler.

Also, split the message identifying the CPU and the time since that CPU's
last NMI-related activity so that a single line identifies the CPU without
any other variable information, greatly reducing the processing overhead
required to identify repeat-offender CPUs.

Co-developed-by: Breno Leitao <leitao@debian.org>
Signed-off-by: Breno Leitao <leitao@debian.org>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Link: https://lore.kernel.org/r/ab4d70c8-c874-42dc-b206-643018922393@paulmck-laptop
2024-03-26 10:07:59 +01:00
..
boot EFI fixes for v6.9 #2 2024-03-24 13:54:06 -07:00
coco x86/sev: Fix position dependent variable references in startup code 2024-02-06 16:38:42 +01:00
configs x86/config: Fix warning for 'make ARCH=x86_64 tinyconfig' 2024-03-21 10:09:41 +01:00
crypto This update includes the following changes: 2024-01-10 12:23:43 -08:00
entry Kbuild updates for v6.9 2024-03-21 14:41:00 -07:00
events perf/x86/amd/core: Avoid register reset when CPU is dead 2024-03-13 11:01:30 +01:00
hyperv hyperv-next for v6.9 2024-03-21 10:01:02 -07:00
ia32
include A set of x86 fixes: 2024-03-24 11:13:56 -07:00
kernel x86/nmi: Upgrade NMI backtrace stall checks & messages 2024-03-26 10:07:59 +01:00
kvm Kbuild updates for v6.9 2024-03-21 14:41:00 -07:00
lib Merge branch 'linus' into x86/boot, to resolve conflict 2024-03-12 09:55:57 +01:00
math-emu
mm Revert "x86/mm/ident_map: Use gbpages only where full GB page should be mapped." 2024-03-25 11:54:35 +01:00
net Networking changes for 6.9. 2024-03-12 17:44:08 -07:00
pci PCI: Disable D3cold on Asus B1400 PCI-NVMe bridge 2024-02-29 13:25:24 -06:00
platform xen: branch for v6.9-rc1 2024-03-19 08:48:09 -07:00
power - Kuan-Wei Chiu has developed the well-named series "lib min_heap: Min 2024-03-14 18:03:09 -07:00
purgatory x86/bugs: Rename CONFIG_RETPOLINE => CONFIG_MITIGATION_RETPOLINE 2024-01-10 10:52:28 +01:00
ras
realmode x86/trampoline: Bypass compat mode in trampoline_start64() if not needed 2024-02-23 08:40:29 -08:00
tools x86, relocs: Ignore relocations in .notes section 2024-02-29 22:34:42 -08:00
um This pull request contains the following changes for UML: 2024-01-17 10:44:34 -08:00
video fbdev: Replace fb_pgprotect() with pgprot_framebuffer() 2023-10-12 09:20:46 +02:00
virt crypto: ccp: Add panic notifier for SEV/SNP firmware shutdown on kdump 2024-01-29 20:34:19 +01:00
xen Kbuild updates for v6.9 2024-03-21 14:41:00 -07:00
.gitignore
Kbuild x86/sev: Add SEV-SNP host initialization support 2024-01-29 17:20:23 +01:00
Kconfig x86/percpu: Disable named address spaces for KCSAN 2024-03-25 12:17:01 +01:00
Kconfig.assembler
Kconfig.cpu x86/Kconfig: Transmeta Crusoe is CPU family 5, not 6 2024-02-09 16:28:19 +01:00
Kconfig.debug
Makefile - Kuan-Wei Chiu has developed the well-named series "lib min_heap: Min 2024-03-14 18:03:09 -07:00
Makefile_32.cpu
Makefile.postlink kbuild: remove ARCH_POSTLINK from module builds 2023-10-28 21:10:08 +09:00
Makefile.um