diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-04-14 16:36:04 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-04-14 16:36:04 -0400 |
commit | 078838d56574694d0a4815d9c1b7f28e8844638b (patch) | |
tree | 0d8c72d9dc46b0d2e72073fb928ec08e14b02b76 /lib | |
parent | eeee78cf77df0450ca285a7cd6d73842181e825c (diff) | |
parent | 590ee7dbd569a012df705a5204fc5f1066f52b8c (diff) |
Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull RCU changes from Ingo Molnar:
"The main changes in this cycle were:
- changes permitting use of call_rcu() and friends very early in
boot, for example, before rcu_init() is invoked.
- add in-kernel API to enable and disable expediting of normal RCU
grace periods.
- improve RCU's handling of (hotplug-) outgoing CPUs.
- NO_HZ_FULL_SYSIDLE fixes.
- tiny-RCU updates to make it more tiny.
- documentation updates.
- miscellaneous fixes"
* 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (58 commits)
cpu: Provide smpboot_thread_init() on !CONFIG_SMP kernels as well
cpu: Defer smpboot kthread unparking until CPU known to scheduler
rcu: Associate quiescent-state reports with grace period
rcu: Yet another fix for preemption and CPU hotplug
rcu: Add diagnostics to grace-period cleanup
rcutorture: Default to grace-period-initialization delays
rcu: Handle outgoing CPUs on exit from idle loop
cpu: Make CPU-offline idle-loop transition point more precise
rcu: Eliminate ->onoff_mutex from rcu_node structure
rcu: Process offlining and onlining only at grace-period start
rcu: Move rcu_report_unblock_qs_rnp() to common code
rcu: Rework preemptible expedited bitmask handling
rcu: Remove event tracing from rcu_cpu_notify(), used by offline CPUs
rcutorture: Enable slow grace-period initializations
rcu: Provide diagnostic option to slow down grace-period initialization
rcu: Detect stalls caused by failure to propagate up rcu_node tree
rcu: Eliminate empty HOTPLUG_CPU ifdef
rcu: Simplify sync_rcu_preempt_exp_init()
rcu: Put all orphan-callback-related code under same comment
rcu: Consolidate offline-CPU callback initialization
...
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Kconfig.debug | 35 |
1 files changed, 25 insertions, 10 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index 36b6fa88ce5b..93967e634a1e 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug | |||
@@ -1193,16 +1193,7 @@ config DEBUG_CREDENTIALS | |||
1193 | menu "RCU Debugging" | 1193 | menu "RCU Debugging" |
1194 | 1194 | ||
1195 | config PROVE_RCU | 1195 | config PROVE_RCU |
1196 | bool "RCU debugging: prove RCU correctness" | 1196 | def_bool PROVE_LOCKING |
1197 | depends on PROVE_LOCKING | ||
1198 | default n | ||
1199 | help | ||
1200 | This feature enables lockdep extensions that check for correct | ||
1201 | use of RCU APIs. This is currently under development. Say Y | ||
1202 | if you want to debug RCU usage or help work on the PROVE_RCU | ||
1203 | feature. | ||
1204 | |||
1205 | Say N if you are unsure. | ||
1206 | 1197 | ||
1207 | config PROVE_RCU_REPEATEDLY | 1198 | config PROVE_RCU_REPEATEDLY |
1208 | bool "RCU debugging: don't disable PROVE_RCU on first splat" | 1199 | bool "RCU debugging: don't disable PROVE_RCU on first splat" |
@@ -1270,6 +1261,30 @@ config RCU_TORTURE_TEST_RUNNABLE | |||
1270 | Say N here if you want the RCU torture tests to start only | 1261 | Say N here if you want the RCU torture tests to start only |
1271 | after being manually enabled via /proc. | 1262 | after being manually enabled via /proc. |
1272 | 1263 | ||
1264 | config RCU_TORTURE_TEST_SLOW_INIT | ||
1265 | bool "Slow down RCU grace-period initialization to expose races" | ||
1266 | depends on RCU_TORTURE_TEST | ||
1267 | help | ||
1268 | This option makes grace-period initialization block for a | ||
1269 | few jiffies between initializing each pair of consecutive | ||
1270 | rcu_node structures. This helps to expose races involving | ||
1271 | grace-period initialization, in other words, it makes your | ||
1272 | kernel less stable. It can also greatly increase grace-period | ||
1273 | latency, especially on systems with large numbers of CPUs. | ||
1274 | This is useful when torture-testing RCU, but in almost no | ||
1275 | other circumstance. | ||
1276 | |||
1277 | Say Y here if you want your system to crash and hang more often. | ||
1278 | Say N if you want a sane system. | ||
1279 | |||
1280 | config RCU_TORTURE_TEST_SLOW_INIT_DELAY | ||
1281 | int "How much to slow down RCU grace-period initialization" | ||
1282 | range 0 5 | ||
1283 | default 3 | ||
1284 | help | ||
1285 | This option specifies the number of jiffies to wait between | ||
1286 | each rcu_node structure initialization. | ||
1287 | |||
1273 | config RCU_CPU_STALL_TIMEOUT | 1288 | config RCU_CPU_STALL_TIMEOUT |
1274 | int "RCU CPU stall timeout in seconds" | 1289 | int "RCU CPU stall timeout in seconds" |
1275 | depends on RCU_STALL_COMMON | 1290 | depends on RCU_STALL_COMMON |