From 2f529f9b558ca1c1bd74be7437a84e4711743404 Mon Sep 17 00:00:00 2001 From: hc <hc@nodka.com> Date: Fri, 01 Nov 2024 02:11:33 +0000 Subject: [PATCH] add xenomai --- kernel/lib/Kconfig.debug | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 53 insertions(+), 0 deletions(-) diff --git a/kernel/lib/Kconfig.debug b/kernel/lib/Kconfig.debug index 8608332..77c03b3 100644 --- a/kernel/lib/Kconfig.debug +++ b/kernel/lib/Kconfig.debug @@ -897,6 +897,38 @@ is currently disabled). Drivers need to handle this correctly. Some don't and need to be caught. +config DEBUG_IRQ_PIPELINE + bool "Debug IRQ pipeline" + depends on IRQ_PIPELINE && DEBUG_KERNEL + help + Turn on this option for enabling debug checks related to + interrupt pipelining, like interrupt state consistency and + proper context isolation between the in-band and oob stages. + + If unsure, say N. + +config IRQ_PIPELINE_TORTURE_TEST + bool "Torture tests for IRQ pipeline" + depends on DEBUG_IRQ_PIPELINE + select TORTURE_TEST + default n + help + This option provides a kernel module that runs torture tests + on the IRQ pipeline mechanism. + + Say Y here if you want the IRQ pipeline torture tests to run + when the kernel starts. Say N if you are unsure. + +config DEBUG_DOVETAIL + bool "Debug Dovetail interface" + depends on DOVETAIL && DEBUG_KERNEL + select DEBUG_IRQ_PIPELINE + help + Turn on this option for enabling debug checks related to + running a dual kernel configuration, aka dovetailing. This + option implicitly enables the interrupt pipeline debugging + features. + menu "Debug Oops, Lockups and Hangs" config PANIC_ON_OOPS @@ -1315,6 +1347,27 @@ spin_lock_init()/mutex_init()/etc., or whether there is any lock held during task exit. +config DEBUG_HARD_LOCKS + bool "Debug hard spinlocks" + depends on DEBUG_IRQ_PIPELINE && LOCKDEP && EXPERT + help + Turn on this option for enabling LOCKDEP for hard spinlock + types used in interrupt pipelining. + + Keep in mind that enabling such feature will ruin the + latency figures for any out-of-band code, this is merely + useful for proving the correctness of the locking scheme of + such code without any consideration for real-time + guarantees. You have been warned. + + If unsure, say N. + +if DEBUG_HARD_LOCKS +comment "WARNING! DEBUG_HARD_LOCKS induces **massive** latency" +comment "overhead for the code running on the out-of-band" +comment "interrupt stage." +endif + config LOCKDEP bool depends on DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT -- Gitblit v1.6.2