Re: [PATCH 32/38] arm64: nmi: Add Kconfig for NMI
flat view
From: Vladimir Murzin <hidden>
Date: 2026-09-21 13:47:49
On 9/16/26 10:06, Jinjie Ruan wrote:
在 2026/9/14 18:20, Vladimir Murzin 写道:quoted
From: Mark Brown <broonie@kernel.org> Since NMI handling is in some fairly hot paths we provide a Kconfig option which allows support to be compiled out when not needed. Signed-off-by: Mark Brown <broonie@kernel.org> Signed-off-by: Ada Couprie Diaz <redacted> Signed-off-by: Vladimir Murzin <redacted> --- arch/arm64/Kconfig | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+)diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index 2738637ccb92..df5ff59715d1 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig@@ -2251,6 +2251,24 @@ endmenu # "ARMv8.7 architectural features" config AS_HAS_MOPS def_bool $(as-instr,.arch_extension mops) +menu "ARMv8.8 architectural features" + +config ARM64_NMI + bool "Enable support for Non-maskable Interrupts (NMI)" + default yWe should select HAVE_PERF_EVENTS_NMI to enable perf-NMI-based hardlockup detector as pseudo NMI do.
It seems there are ongoing discussions [1,2] about moving away from it towards the buddy detector. So I can add it, but I'm not sure whether it will still be necessary in the future. [1] https://lore.kernel.org/linux-arm-kernel/amtyQH7lzLDKE3WD@thinkstation/ (local) [2] https://lore.kernel.org/lkml/20260902-qcom-wdt-nmi-series-v3-0-f3999362a9ea@google.com/ (local) Thanks Vladimir
arch/arm64/Kconfig: select HAVE_PERF_EVENTS_NMI if ARM64_PSEUDO_NMI || ARM64_NMIquoted
+ help + Non-maskable interrupts are an architecture and GIC feature + which allow the system to configure some interrupts to be + configured to have superpriority, allowing them to be handled + before other interrupts and masked for shorter periods of time. + + The feature is detected at runtime, and will remain disabled + if the cpu does not implement the feature. It will also be + disabled if pseudo NMIs are enabled at runtime. + +endmenu # "ARMv8.8 architectural features" + + menu "ARMv8.9 architectural features" config ARM64_POE