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 | |
| 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')
| -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 |
