aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Kconfig.debug
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Kconfig.debug')
-rw-r--r--lib/Kconfig.debug79
1 files changed, 73 insertions, 6 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 0deaf81ac111..28b42b9274d0 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -317,6 +317,14 @@ config DEBUG_OBJECTS_RCU_HEAD
317 help 317 help
318 Enable this to turn on debugging of RCU list heads (call_rcu() usage). 318 Enable this to turn on debugging of RCU list heads (call_rcu() usage).
319 319
320config DEBUG_OBJECTS_PERCPU_COUNTER
321 bool "Debug percpu counter objects"
322 depends on DEBUG_OBJECTS
323 help
324 If you say Y here, additional code will be inserted into the
325 percpu counter routines to track the life time of percpu counter
326 objects and validate the percpu counter operations.
327
320config DEBUG_OBJECTS_ENABLE_DEFAULT 328config DEBUG_OBJECTS_ENABLE_DEFAULT
321 int "debug_objects bootup default value (0-1)" 329 int "debug_objects bootup default value (0-1)"
322 range 0 1 330 range 0 1
@@ -353,7 +361,7 @@ config SLUB_DEBUG_ON
353config SLUB_STATS 361config SLUB_STATS
354 default n 362 default n
355 bool "Enable SLUB performance statistics" 363 bool "Enable SLUB performance statistics"
356 depends on SLUB && SLUB_DEBUG && SYSFS 364 depends on SLUB && SYSFS
357 help 365 help
358 SLUB statistics are useful to debug SLUBs allocation behavior in 366 SLUB statistics are useful to debug SLUBs allocation behavior in
359 order find ways to optimize the allocator. This should never be 367 order find ways to optimize the allocator. This should never be
@@ -366,7 +374,7 @@ config SLUB_STATS
366config DEBUG_KMEMLEAK 374config DEBUG_KMEMLEAK
367 bool "Kernel memory leak detector" 375 bool "Kernel memory leak detector"
368 depends on DEBUG_KERNEL && EXPERIMENTAL && !MEMORY_HOTPLUG && \ 376 depends on DEBUG_KERNEL && EXPERIMENTAL && !MEMORY_HOTPLUG && \
369 (X86 || ARM || PPC || S390 || SPARC64 || SUPERH || MICROBLAZE) 377 (X86 || ARM || PPC || S390 || SPARC64 || SUPERH || MICROBLAZE || TILE)
370 378
371 select DEBUG_FS if SYSFS 379 select DEBUG_FS if SYSFS
372 select STACKTRACE if STACKTRACE_SUPPORT 380 select STACKTRACE if STACKTRACE_SUPPORT
@@ -461,6 +469,15 @@ config DEBUG_MUTEXES
461 This feature allows mutex semantics violations to be detected and 469 This feature allows mutex semantics violations to be detected and
462 reported. 470 reported.
463 471
472config BKL
473 bool "Big Kernel Lock" if (SMP || PREEMPT)
474 default y
475 help
476 This is the traditional lock that is used in old code instead
477 of proper locking. All drivers that use the BKL should depend
478 on this symbol.
479 Say Y here unless you are working on removing the BKL.
480
464config DEBUG_LOCK_ALLOC 481config DEBUG_LOCK_ALLOC
465 bool "Lock debugging: detect incorrect freeing of live locks" 482 bool "Lock debugging: detect incorrect freeing of live locks"
466 depends on DEBUG_KERNEL && TRACE_IRQFLAGS_SUPPORT && STACKTRACE_SUPPORT && LOCKDEP_SUPPORT 483 depends on DEBUG_KERNEL && TRACE_IRQFLAGS_SUPPORT && STACKTRACE_SUPPORT && LOCKDEP_SUPPORT
@@ -482,6 +499,7 @@ config PROVE_LOCKING
482 select DEBUG_SPINLOCK 499 select DEBUG_SPINLOCK
483 select DEBUG_MUTEXES 500 select DEBUG_MUTEXES
484 select DEBUG_LOCK_ALLOC 501 select DEBUG_LOCK_ALLOC
502 select TRACE_IRQFLAGS
485 default n 503 default n
486 help 504 help
487 This feature enables the kernel to prove that all locking 505 This feature enables the kernel to prove that all locking
@@ -539,6 +557,23 @@ config PROVE_RCU_REPEATEDLY
539 disabling, allowing multiple RCU-lockdep warnings to be printed 557 disabling, allowing multiple RCU-lockdep warnings to be printed
540 on a single reboot. 558 on a single reboot.
541 559
560 Say Y to allow multiple RCU-lockdep warnings per boot.
561
562 Say N if you are unsure.
563
564config SPARSE_RCU_POINTER
565 bool "RCU debugging: sparse-based checks for pointer usage"
566 default n
567 help
568 This feature enables the __rcu sparse annotation for
569 RCU-protected pointers. This annotation will cause sparse
570 to flag any non-RCU used of annotated pointers. This can be
571 helpful when debugging RCU usage. Please note that this feature
572 is not intended to enforce code cleanliness; it is instead merely
573 a debugging aid.
574
575 Say Y to make sparse flag questionable use of RCU-protected pointers
576
542 Say N if you are unsure. 577 Say N if you are unsure.
543 578
544config LOCKDEP 579config LOCKDEP
@@ -579,11 +614,10 @@ config DEBUG_LOCKDEP
579 of more runtime overhead. 614 of more runtime overhead.
580 615
581config TRACE_IRQFLAGS 616config TRACE_IRQFLAGS
582 depends on DEBUG_KERNEL
583 bool 617 bool
584 default y 618 help
585 depends on TRACE_IRQFLAGS_SUPPORT 619 Enables hooks to interrupt enabling and disabling for
586 depends on PROVE_LOCKING 620 either tracing or lock debugging.
587 621
588config DEBUG_SPINLOCK_SLEEP 622config DEBUG_SPINLOCK_SLEEP
589 bool "Spinlock debugging: sleep-inside-spinlock checking" 623 bool "Spinlock debugging: sleep-inside-spinlock checking"
@@ -714,6 +748,15 @@ config DEBUG_LIST
714 748
715 If unsure, say N. 749 If unsure, say N.
716 750
751config TEST_LIST_SORT
752 bool "Linked list sorting test"
753 depends on DEBUG_KERNEL
754 help
755 Enable this to turn on 'list_sort()' function test. This test is
756 executed only once during system boot, so affects only boot time.
757
758 If unsure, say N.
759
717config DEBUG_SG 760config DEBUG_SG
718 bool "Debug SG table operations" 761 bool "Debug SG table operations"
719 depends on DEBUG_KERNEL 762 depends on DEBUG_KERNEL
@@ -832,6 +875,30 @@ config RCU_CPU_STALL_DETECTOR
832 875
833 Say Y if you are unsure. 876 Say Y if you are unsure.
834 877
878config RCU_CPU_STALL_TIMEOUT
879 int "RCU CPU stall timeout in seconds"
880 depends on RCU_CPU_STALL_DETECTOR
881 range 3 300
882 default 60
883 help
884 If a given RCU grace period extends more than the specified
885 number of seconds, a CPU stall warning is printed. If the
886 RCU grace period persists, additional CPU stall warnings are
887 printed at more widely spaced intervals.
888
889config RCU_CPU_STALL_DETECTOR_RUNNABLE
890 bool "RCU CPU stall checking starts automatically at boot"
891 depends on RCU_CPU_STALL_DETECTOR
892 default y
893 help
894 If set, start checking for RCU CPU stalls immediately on
895 boot. Otherwise, RCU CPU stall checking must be manually
896 enabled.
897
898 Say Y if you are unsure.
899
900 Say N if you wish to suppress RCU CPU stall checking during boot.
901
835config RCU_CPU_STALL_VERBOSE 902config RCU_CPU_STALL_VERBOSE
836 bool "Print additional per-task information for RCU_CPU_STALL_DETECTOR" 903 bool "Print additional per-task information for RCU_CPU_STALL_DETECTOR"
837 depends on RCU_CPU_STALL_DETECTOR && TREE_PREEMPT_RCU 904 depends on RCU_CPU_STALL_DETECTOR && TREE_PREEMPT_RCU