diff options
author | Dave Hansen <dave@linux.vnet.ibm.com> | 2013-01-07 11:19:23 -0500 |
---|---|---|
committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2013-01-26 19:34:48 -0500 |
commit | 2f03e3ca74a7f8b17ce626d337d321163dce2dad (patch) | |
tree | fd0f962c74e840b9492bd4631da06583d00da95f /lib/Kconfig.debug | |
parent | b44f665623d15ff391c7e9fe7600c5e7bc2fc9c2 (diff) |
rcu: Consolidate debugging Kconfig options
The RCU-related debugging Kconfig options are in two different places,
and consume too much screen real estate. This commit therefore
consolidates them into their own menu.
Signed-off-by: Dave Hansen <dave@linux.vnet.ibm.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Diffstat (limited to 'lib/Kconfig.debug')
-rw-r--r-- | lib/Kconfig.debug | 114 |
1 files changed, 59 insertions, 55 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index 3a353091a903..122db3d323c8 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug | |||
@@ -605,61 +605,6 @@ config PROVE_LOCKING | |||
605 | 605 | ||
606 | For more details, see Documentation/lockdep-design.txt. | 606 | For more details, see Documentation/lockdep-design.txt. |
607 | 607 | ||
608 | config PROVE_RCU | ||
609 | bool "RCU debugging: prove RCU correctness" | ||
610 | depends on PROVE_LOCKING | ||
611 | default n | ||
612 | help | ||
613 | This feature enables lockdep extensions that check for correct | ||
614 | use of RCU APIs. This is currently under development. Say Y | ||
615 | if you want to debug RCU usage or help work on the PROVE_RCU | ||
616 | feature. | ||
617 | |||
618 | Say N if you are unsure. | ||
619 | |||
620 | config PROVE_RCU_REPEATEDLY | ||
621 | bool "RCU debugging: don't disable PROVE_RCU on first splat" | ||
622 | depends on PROVE_RCU | ||
623 | default n | ||
624 | help | ||
625 | By itself, PROVE_RCU will disable checking upon issuing the | ||
626 | first warning (or "splat"). This feature prevents such | ||
627 | disabling, allowing multiple RCU-lockdep warnings to be printed | ||
628 | on a single reboot. | ||
629 | |||
630 | Say Y to allow multiple RCU-lockdep warnings per boot. | ||
631 | |||
632 | Say N if you are unsure. | ||
633 | |||
634 | config PROVE_RCU_DELAY | ||
635 | bool "RCU debugging: preemptible RCU race provocation" | ||
636 | depends on DEBUG_KERNEL && PREEMPT_RCU | ||
637 | default n | ||
638 | help | ||
639 | There is a class of races that involve an unlikely preemption | ||
640 | of __rcu_read_unlock() just after ->rcu_read_lock_nesting has | ||
641 | been set to INT_MIN. This feature inserts a delay at that | ||
642 | point to increase the probability of these races. | ||
643 | |||
644 | Say Y to increase probability of preemption of __rcu_read_unlock(). | ||
645 | |||
646 | Say N if you are unsure. | ||
647 | |||
648 | config SPARSE_RCU_POINTER | ||
649 | bool "RCU debugging: sparse-based checks for pointer usage" | ||
650 | default n | ||
651 | help | ||
652 | This feature enables the __rcu sparse annotation for | ||
653 | RCU-protected pointers. This annotation will cause sparse | ||
654 | to flag any non-RCU used of annotated pointers. This can be | ||
655 | helpful when debugging RCU usage. Please note that this feature | ||
656 | is not intended to enforce code cleanliness; it is instead merely | ||
657 | a debugging aid. | ||
658 | |||
659 | Say Y to make sparse flag questionable use of RCU-protected pointers | ||
660 | |||
661 | Say N if you are unsure. | ||
662 | |||
663 | config LOCKDEP | 608 | config LOCKDEP |
664 | bool | 609 | bool |
665 | depends on DEBUG_KERNEL && TRACE_IRQFLAGS_SUPPORT && STACKTRACE_SUPPORT && LOCKDEP_SUPPORT | 610 | depends on DEBUG_KERNEL && TRACE_IRQFLAGS_SUPPORT && STACKTRACE_SUPPORT && LOCKDEP_SUPPORT |
@@ -937,6 +882,63 @@ config BOOT_PRINTK_DELAY | |||
937 | BOOT_PRINTK_DELAY also may cause LOCKUP_DETECTOR to detect | 882 | BOOT_PRINTK_DELAY also may cause LOCKUP_DETECTOR to detect |
938 | what it believes to be lockup conditions. | 883 | what it believes to be lockup conditions. |
939 | 884 | ||
885 | menu "RCU Debugging" | ||
886 | |||
887 | config PROVE_RCU | ||
888 | bool "RCU debugging: prove RCU correctness" | ||
889 | depends on PROVE_LOCKING | ||
890 | default n | ||
891 | help | ||
892 | This feature enables lockdep extensions that check for correct | ||
893 | use of RCU APIs. This is currently under development. Say Y | ||
894 | if you want to debug RCU usage or help work on the PROVE_RCU | ||
895 | feature. | ||
896 | |||
897 | Say N if you are unsure. | ||
898 | |||
899 | config PROVE_RCU_REPEATEDLY | ||
900 | bool "RCU debugging: don't disable PROVE_RCU on first splat" | ||
901 | depends on PROVE_RCU | ||
902 | default n | ||
903 | help | ||
904 | By itself, PROVE_RCU will disable checking upon issuing the | ||
905 | first warning (or "splat"). This feature prevents such | ||
906 | disabling, allowing multiple RCU-lockdep warnings to be printed | ||
907 | on a single reboot. | ||
908 | |||
909 | Say Y to allow multiple RCU-lockdep warnings per boot. | ||
910 | |||
911 | Say N if you are unsure. | ||
912 | |||
913 | config PROVE_RCU_DELAY | ||
914 | bool "RCU debugging: preemptible RCU race provocation" | ||
915 | depends on DEBUG_KERNEL && PREEMPT_RCU | ||
916 | default n | ||
917 | help | ||
918 | There is a class of races that involve an unlikely preemption | ||
919 | of __rcu_read_unlock() just after ->rcu_read_lock_nesting has | ||
920 | been set to INT_MIN. This feature inserts a delay at that | ||
921 | point to increase the probability of these races. | ||
922 | |||
923 | Say Y to increase probability of preemption of __rcu_read_unlock(). | ||
924 | |||
925 | Say N if you are unsure. | ||
926 | |||
927 | config SPARSE_RCU_POINTER | ||
928 | bool "RCU debugging: sparse-based checks for pointer usage" | ||
929 | default n | ||
930 | help | ||
931 | This feature enables the __rcu sparse annotation for | ||
932 | RCU-protected pointers. This annotation will cause sparse | ||
933 | to flag any non-RCU used of annotated pointers. This can be | ||
934 | helpful when debugging RCU usage. Please note that this feature | ||
935 | is not intended to enforce code cleanliness; it is instead merely | ||
936 | a debugging aid. | ||
937 | |||
938 | Say Y to make sparse flag questionable use of RCU-protected pointers | ||
939 | |||
940 | Say N if you are unsure. | ||
941 | |||
940 | config RCU_TORTURE_TEST | 942 | config RCU_TORTURE_TEST |
941 | tristate "torture tests for RCU" | 943 | tristate "torture tests for RCU" |
942 | depends on DEBUG_KERNEL | 944 | depends on DEBUG_KERNEL |
@@ -1015,6 +1017,8 @@ config RCU_TRACE | |||
1015 | Say Y here if you want to enable RCU tracing | 1017 | Say Y here if you want to enable RCU tracing |
1016 | Say N if you are unsure. | 1018 | Say N if you are unsure. |
1017 | 1019 | ||
1020 | endmenu # "RCU Debugging" | ||
1021 | |||
1018 | config KPROBES_SANITY_TEST | 1022 | config KPROBES_SANITY_TEST |
1019 | bool "Kprobes sanity tests" | 1023 | bool "Kprobes sanity tests" |
1020 | depends on DEBUG_KERNEL | 1024 | depends on DEBUG_KERNEL |