]> git.baikalelectronics.ru Git - kernel.git/commit
arch: make TRACE_IRQFLAGS_NMI_SUPPORT generic
authorMark Rutland <mark.rutland@arm.com>
Wed, 11 May 2022 13:17:32 +0000 (14:17 +0100)
committerWill Deacon <will@kernel.org>
Thu, 23 Jun 2022 14:39:21 +0000 (15:39 +0100)
commitc6acd5a93600abbcf9146e6ae5fd8f8ee336a6f7
tree06872f0e84cb2f8cdadadbb103d8be7e6eceb0ef
parent08aafa0d475a08e31a13403e9df41c7179f4bdcd
arch: make TRACE_IRQFLAGS_NMI_SUPPORT generic

On most architectures, IRQ flag tracing is disabled in NMI context, and
architectures need to define and select TRACE_IRQFLAGS_NMI_SUPPORT in
order to enable this.

Commit:

  460e7f8d66abdf4b ("lockdep: Prepare for NMI IRQ state tracking")

Permitted IRQ flag tracing in NMI context, allowing lockdep to work in
NMI context where an architecture had suitable entry logic. At the time,
most architectures did not have such suitable entry logic, and this broke
lockdep on such architectures. Thus, this was partially disabled in
commit:

  166add0845e612f3 ("locking/lockdep: Fix TRACE_IRQFLAGS vs. NMIs")

... with architectures needing to select TRACE_IRQFLAGS_NMI_SUPPORT to
enable IRQ flag tracing in NMI context.

Currently TRACE_IRQFLAGS_NMI_SUPPORT is defined under
arch/x86/Kconfig.debug. Move it to arch/Kconfig so architectures can
select it without having to provide their own definition.

Since the regular TRACE_IRQFLAGS_SUPPORT is selected by
arch/x86/Kconfig, the select of TRACE_IRQFLAGS_NMI_SUPPORT is moved
there too.

There should be no functional change as a result of this patch.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20220511131733.4074499-2-mark.rutland@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
arch/Kconfig
arch/x86/Kconfig
arch/x86/Kconfig.debug