diff options
Diffstat (limited to 'lib/Kconfig.debug')
-rw-r--r-- | lib/Kconfig.debug | 79 |
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 | ||
320 | config 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 | |||
320 | config DEBUG_OBJECTS_ENABLE_DEFAULT | 328 | config 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 | |||
353 | config SLUB_STATS | 361 | config 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 | |||
366 | config DEBUG_KMEMLEAK | 374 | config 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 | ||
472 | config 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 | |||
464 | config DEBUG_LOCK_ALLOC | 481 | config 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 | |||
564 | config 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 | ||
544 | config LOCKDEP | 579 | config LOCKDEP |
@@ -579,11 +614,10 @@ config DEBUG_LOCKDEP | |||
579 | of more runtime overhead. | 614 | of more runtime overhead. |
580 | 615 | ||
581 | config TRACE_IRQFLAGS | 616 | config 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 | ||
588 | config DEBUG_SPINLOCK_SLEEP | 622 | config 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 | ||
751 | config 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 | |||
717 | config DEBUG_SG | 760 | config 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 | ||
878 | config 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 | |||
889 | config 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 | |||
835 | config RCU_CPU_STALL_VERBOSE | 902 | config 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 |