Merge tag 'metag-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan...
[cascardo/linux.git] / lib / Kconfig.debug
index a6c2c5c..88c8d98 100644 (file)
@@ -604,6 +604,8 @@ config DEBUG_SHIRQ
          Drivers ought to be able to handle interrupts coming in at those
          points; some don't and need to be caught.
 
+menu "Debug Lockups and Hangs"
+
 config LOCKUP_DETECTOR
        bool "Detect Hard and Soft Lockups"
        depends on DEBUG_KERNEL && !S390
@@ -675,25 +677,6 @@ config BOOTPARAM_SOFTLOCKUP_PANIC_VALUE
        default 0 if !BOOTPARAM_SOFTLOCKUP_PANIC
        default 1 if BOOTPARAM_SOFTLOCKUP_PANIC
 
-config PANIC_ON_OOPS
-       bool "Panic on Oops"
-       help
-         Say Y here to enable the kernel to panic when it oopses. This
-         has the same effect as setting oops=panic on the kernel command
-         line.
-
-         This feature is useful to ensure that the kernel does not do
-         anything erroneous after an oops which could result in data
-         corruption or other issues.
-
-         Say N if unsure.
-
-config PANIC_ON_OOPS_VALUE
-       int
-       range 0 1
-       default 0 if !PANIC_ON_OOPS
-       default 1 if PANIC_ON_OOPS
-
 config DETECT_HUNG_TASK
        bool "Detect Hung Tasks"
        depends on DEBUG_KERNEL
@@ -748,6 +731,27 @@ config BOOTPARAM_HUNG_TASK_PANIC_VALUE
        default 0 if !BOOTPARAM_HUNG_TASK_PANIC
        default 1 if BOOTPARAM_HUNG_TASK_PANIC
 
+endmenu # "Debug lockups and hangs"
+
+config PANIC_ON_OOPS
+       bool "Panic on Oops"
+       help
+         Say Y here to enable the kernel to panic when it oopses. This
+         has the same effect as setting oops=panic on the kernel command
+         line.
+
+         This feature is useful to ensure that the kernel does not do
+         anything erroneous after an oops which could result in data
+         corruption or other issues.
+
+         Say N if unsure.
+
+config PANIC_ON_OOPS_VALUE
+       int
+       range 0 1
+       default 0 if !PANIC_ON_OOPS
+       default 1 if PANIC_ON_OOPS
+
 config SCHED_DEBUG
        bool "Collect scheduler debugging info"
        depends on DEBUG_KERNEL && PROC_FS
@@ -830,6 +834,19 @@ config DEBUG_MUTEXES
         This feature allows mutex semantics violations to be detected and
         reported.
 
+config DEBUG_WW_MUTEX_SLOWPATH
+       bool "Wait/wound mutex debugging: Slowpath testing"
+       depends on DEBUG_KERNEL && TRACE_IRQFLAGS_SUPPORT && STACKTRACE_SUPPORT && LOCKDEP_SUPPORT
+       select DEBUG_LOCK_ALLOC
+       select DEBUG_SPINLOCK
+       select DEBUG_MUTEXES
+       help
+        This feature enables slowpath testing for w/w mutex users by
+        injecting additional -EDEADLK wound/backoff cases. Together with
+        the full mutex checks enabled with (CONFIG_PROVE_LOCKING) this
+        will test all possible w/w mutex interface abuse with the
+        exception of simply not acquiring all the required locks.
+
 config DEBUG_LOCK_ALLOC
        bool "Lock debugging: detect incorrect freeing of live locks"
        depends on DEBUG_KERNEL && TRACE_IRQFLAGS_SUPPORT && STACKTRACE_SUPPORT && LOCKDEP_SUPPORT