Merge commit 'v2.6.35' into kbuild/kbuild
[linux-2.6.git] / lib / Kconfig.debug
index 2af5d84..083b23d 100644 (file)
@@ -103,7 +103,8 @@ config HEADERS_CHECK
 
 config DEBUG_SECTION_MISMATCH
        bool "Enable full Section mismatch analysis"
-       depends on UNDEFINED
+       depends on UNDEFINED || (BLACKFIN)
+       default y
        # This option is on purpose disabled for now.
        # It will be enabled when we are down to a reasonable number
        # of section mismatch warnings (< 10 for an allyesconfig build)
@@ -355,7 +356,7 @@ config SLUB_STATS
 config DEBUG_KMEMLEAK
        bool "Kernel memory leak detector"
        depends on DEBUG_KERNEL && EXPERIMENTAL && !MEMORY_HOTPLUG && \
-               (X86 || ARM || PPC || S390)
+               (X86 || ARM || PPC || S390 || SPARC64 || SUPERH || MICROBLAZE)
 
        select DEBUG_FS if SYSFS
        select STACKTRACE if STACKTRACE_SUPPORT
@@ -499,6 +500,30 @@ config PROVE_LOCKING
 
         For more details, see Documentation/lockdep-design.txt.
 
+config PROVE_RCU
+       bool "RCU debugging: prove RCU correctness"
+       depends on PROVE_LOCKING
+       default n
+       help
+        This feature enables lockdep extensions that check for correct
+        use of RCU APIs.  This is currently under development.  Say Y
+        if you want to debug RCU usage or help work on the PROVE_RCU
+        feature.
+
+        Say N if you are unsure.
+
+config PROVE_RCU_REPEATEDLY
+       bool "RCU debugging: don't disable PROVE_RCU on first splat"
+       depends on PROVE_RCU
+       default n
+       help
+        By itself, PROVE_RCU will disable checking upon issuing the
+        first warning (or "splat").  This feature prevents such
+        disabling, allowing multiple RCU-lockdep warnings to be printed
+        on a single reboot.
+
+        Say N if you are unsure.
+
 config LOCKDEP
        bool
        depends on DEBUG_KERNEL && TRACE_IRQFLAGS_SUPPORT && STACKTRACE_SUPPORT && LOCKDEP_SUPPORT
@@ -520,6 +545,14 @@ config LOCK_STAT
 
         For more details, see Documentation/lockstat.txt
 
+        This also enables lock events required by "perf lock",
+        subcommand of perf.
+        If you want to use "perf lock", you also need to turn on
+        CONFIG_EVENT_TRACING.
+
+        CONFIG_LOCK_STAT defines "contended" and "acquired" lock events.
+        (CONFIG_LOCKDEP defines "acquire" and "release" events.)
+
 config DEBUG_LOCKDEP
        bool "Lock dependency engine debugging"
        depends on DEBUG_KERNEL && LOCKDEP
@@ -778,10 +811,22 @@ config RCU_CPU_STALL_DETECTOR
          CPUs are delaying the current grace period, but only when
          the grace period extends for excessive time periods.
 
-         Say Y if you want RCU to perform such checks.
+         Say N if you want to disable such checks.
+
+         Say Y if you are unsure.
+
+config RCU_CPU_STALL_VERBOSE
+       bool "Print additional per-task information for RCU_CPU_STALL_DETECTOR"
+       depends on RCU_CPU_STALL_DETECTOR && TREE_PREEMPT_RCU
+       default y
+       help
+         This option causes RCU to printk detailed per-task information
+         for any tasks that are stalling the current RCU grace period.
 
          Say N if you are unsure.
 
+         Say Y if you want to enable such checks.
+
 config KPROBES_SANITY_TEST
        bool "Kprobes sanity tests"
        depends on DEBUG_KERNEL
@@ -853,8 +898,7 @@ config DEBUG_FORCE_WEAK_PER_CPU
 
 config LKDTM
        tristate "Linux Kernel Dump Test Tool Module"
-       depends on DEBUG_KERNEL
-       depends on KPROBES
+       depends on DEBUG_FS
        depends on BLOCK
        default n
        help
@@ -865,7 +909,19 @@ config LKDTM
        called lkdtm.
 
        Documentation on how to use the module can be found in
-       drivers/misc/lkdtm.c
+       Documentation/fault-injection/provoke-crashes.txt
+
+config CPU_NOTIFIER_ERROR_INJECT
+       tristate "CPU notifier error injection module"
+       depends on HOTPLUG_CPU && DEBUG_KERNEL
+       help
+         This option provides a kernel module that can be used to test
+         the error handling of the cpu notifiers
+
+         To compile this code as a module, choose M here: the module will
+         be called cpu-notifier-error-inject.
+
+         If unsure, say N.
 
 config FAULT_INJECTION
        bool "Fault-injection framework"
@@ -1008,10 +1064,10 @@ config DYNAMIC_DEBUG
 
          Usage:
 
-         Dynamic debugging is controlled via the 'dynamic_debug/ddebug' file,
+         Dynamic debugging is controlled via the 'dynamic_debug/control' file,
          which is contained in the 'debugfs' filesystem. Thus, the debugfs
          filesystem must first be mounted before making use of this feature.
-         We refer the control file as: <debugfs>/dynamic_debug/ddebug. This
+         We refer the control file as: <debugfs>/dynamic_debug/control. This
          file contains a list of the debug statements that can be enabled. The
          format for each line of the file is:
 
@@ -1026,7 +1082,7 @@ config DYNAMIC_DEBUG
 
          From a live system:
 
-               nullarbor:~ # cat <debugfs>/dynamic_debug/ddebug
+               nullarbor:~ # cat <debugfs>/dynamic_debug/control
                # filename:lineno [module]function flags format
                fs/aio.c:222 [aio]__put_ioctx - "__put_ioctx:\040freeing\040%p\012"
                fs/aio.c:248 [aio]ioctx_alloc - "ENOMEM:\040nr_events\040too\040high\012"
@@ -1036,23 +1092,23 @@ config DYNAMIC_DEBUG
 
                // enable the message at line 1603 of file svcsock.c
                nullarbor:~ # echo -n 'file svcsock.c line 1603 +p' >
-                                               <debugfs>/dynamic_debug/ddebug
+                                               <debugfs>/dynamic_debug/control
 
                // enable all the messages in file svcsock.c
                nullarbor:~ # echo -n 'file svcsock.c +p' >
-                                               <debugfs>/dynamic_debug/ddebug
+                                               <debugfs>/dynamic_debug/control
 
                // enable all the messages in the NFS server module
                nullarbor:~ # echo -n 'module nfsd +p' >
-                                               <debugfs>/dynamic_debug/ddebug
+                                               <debugfs>/dynamic_debug/control
 
                // enable all 12 messages in the function svc_process()
                nullarbor:~ # echo -n 'func svc_process +p' >
-                                               <debugfs>/dynamic_debug/ddebug
+                                               <debugfs>/dynamic_debug/control
 
                // disable all 12 messages in the function svc_process()
                nullarbor:~ # echo -n 'func svc_process -p' >
-                                               <debugfs>/dynamic_debug/ddebug
+                                               <debugfs>/dynamic_debug/control
 
          See Documentation/dynamic-debug-howto.txt for additional information.
 
@@ -1067,6 +1123,13 @@ config DMA_API_DEBUG
          This option causes a performance degredation.  Use only if you want
          to debug device drivers. If unsure, say N.
 
+config ATOMIC64_SELFTEST
+       bool "Perform an atomic64_t self-test at boot"
+       help
+         Enable this option to test the atomic64_t functions at boot.
+
+         If unsure, say N.
+
 source "samples/Kconfig"
 
 source "lib/Kconfig.kgdb"