diff options
author | Ingo Molnar <mingo@elte.hu> | 2010-08-23 05:32:34 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2010-08-23 05:32:34 -0400 |
commit | a6b9b4d50f492630443b38404d1f436b3b748c14 (patch) | |
tree | f3512389c42cecfae50b6a315ec6ab1fa470e30d /lib | |
parent | e36c886a0f9d624377977fa6cae309cfd7f362fa (diff) | |
parent | 28457ee69c473a903e51e26c7bcd6f1e9eceb93e (diff) |
Merge branch 'rcu/next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu into core/rcu
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Kconfig.debug | 37 | ||||
-rw-r--r-- | lib/radix-tree.c | 2 |
2 files changed, 38 insertions, 1 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index 1b4afd2e6ca0..52c2172dff16 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug | |||
@@ -539,6 +539,19 @@ config PROVE_RCU_REPEATEDLY | |||
539 | disabling, allowing multiple RCU-lockdep warnings to be printed | 539 | disabling, allowing multiple RCU-lockdep warnings to be printed |
540 | on a single reboot. | 540 | on a single reboot. |
541 | 541 | ||
542 | config SPARSE_RCU_POINTER | ||
543 | bool "RCU debugging: sparse-based checks for pointer usage" | ||
544 | default n | ||
545 | help | ||
546 | This feature enables the __rcu sparse annotation for | ||
547 | RCU-protected pointers. This annotation will cause sparse | ||
548 | to flag any non-RCU used of annotated pointers. This can be | ||
549 | helpful when debugging RCU usage. Please note that this feature | ||
550 | is not intended to enforce code cleanliness; it is instead merely | ||
551 | a debugging aid. | ||
552 | |||
553 | Say Y to make sparse flag questionable use of RCU-protected pointers | ||
554 | |||
542 | Say N if you are unsure. | 555 | Say N if you are unsure. |
543 | 556 | ||
544 | config LOCKDEP | 557 | config LOCKDEP |
@@ -832,6 +845,30 @@ config RCU_CPU_STALL_DETECTOR | |||
832 | 845 | ||
833 | Say Y if you are unsure. | 846 | Say Y if you are unsure. |
834 | 847 | ||
848 | config RCU_CPU_STALL_TIMEOUT | ||
849 | int "RCU CPU stall timeout in seconds" | ||
850 | depends on RCU_CPU_STALL_DETECTOR | ||
851 | range 3 300 | ||
852 | default 60 | ||
853 | help | ||
854 | If a given RCU grace period extends more than the specified | ||
855 | number of seconds, a CPU stall warning is printed. If the | ||
856 | RCU grace period persists, additional CPU stall warnings are | ||
857 | printed at more widely spaced intervals. | ||
858 | |||
859 | config RCU_CPU_STALL_DETECTOR_RUNNABLE | ||
860 | bool "RCU CPU stall checking starts automatically at boot" | ||
861 | depends on RCU_CPU_STALL_DETECTOR | ||
862 | default y | ||
863 | help | ||
864 | If set, start checking for RCU CPU stalls immediately on | ||
865 | boot. Otherwise, RCU CPU stall checking must be manually | ||
866 | enabled. | ||
867 | |||
868 | Say Y if you are unsure. | ||
869 | |||
870 | Say N if you wish to suppress RCU CPU stall checking during boot. | ||
871 | |||
835 | config RCU_CPU_STALL_VERBOSE | 872 | config RCU_CPU_STALL_VERBOSE |
836 | bool "Print additional per-task information for RCU_CPU_STALL_DETECTOR" | 873 | bool "Print additional per-task information for RCU_CPU_STALL_DETECTOR" |
837 | depends on RCU_CPU_STALL_DETECTOR && TREE_PREEMPT_RCU | 874 | depends on RCU_CPU_STALL_DETECTOR && TREE_PREEMPT_RCU |
diff --git a/lib/radix-tree.c b/lib/radix-tree.c index 5b7d4623f0b7..0ccbcdf75000 100644 --- a/lib/radix-tree.c +++ b/lib/radix-tree.c | |||
@@ -49,7 +49,7 @@ struct radix_tree_node { | |||
49 | unsigned int height; /* Height from the bottom */ | 49 | unsigned int height; /* Height from the bottom */ |
50 | unsigned int count; | 50 | unsigned int count; |
51 | struct rcu_head rcu_head; | 51 | struct rcu_head rcu_head; |
52 | void *slots[RADIX_TREE_MAP_SIZE]; | 52 | void __rcu *slots[RADIX_TREE_MAP_SIZE]; |
53 | unsigned long tags[RADIX_TREE_MAX_TAGS][RADIX_TREE_TAG_LONGS]; | 53 | unsigned long tags[RADIX_TREE_MAX_TAGS][RADIX_TREE_TAG_LONGS]; |
54 | }; | 54 | }; |
55 | 55 | ||