diff options
Diffstat (limited to 'init')
-rw-r--r-- | init/Kconfig | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/init/Kconfig b/init/Kconfig index 25373cf32672..f88da2d1c1fb 100644 --- a/init/Kconfig +++ b/init/Kconfig | |||
@@ -335,11 +335,20 @@ config PREEMPT_RCU | |||
335 | now-naive assumptions about each RCU read-side critical section | 335 | now-naive assumptions about each RCU read-side critical section |
336 | remaining on a given CPU through its execution. | 336 | remaining on a given CPU through its execution. |
337 | 337 | ||
338 | config TREE_PREEMPT_RCU | ||
339 | bool "Preemptable tree-based hierarchical RCU" | ||
340 | depends on PREEMPT | ||
341 | help | ||
342 | This option selects the RCU implementation that is | ||
343 | designed for very large SMP systems with hundreds or | ||
344 | thousands of CPUs, but for which real-time response | ||
345 | is also required. | ||
346 | |||
338 | endchoice | 347 | endchoice |
339 | 348 | ||
340 | config RCU_TRACE | 349 | config RCU_TRACE |
341 | bool "Enable tracing for RCU" | 350 | bool "Enable tracing for RCU" |
342 | depends on TREE_RCU || PREEMPT_RCU | 351 | depends on TREE_RCU || PREEMPT_RCU || TREE_PREEMPT_RCU |
343 | help | 352 | help |
344 | This option provides tracing in RCU which presents stats | 353 | This option provides tracing in RCU which presents stats |
345 | in debugfs for debugging RCU implementation. | 354 | in debugfs for debugging RCU implementation. |
@@ -351,7 +360,7 @@ config RCU_FANOUT | |||
351 | int "Tree-based hierarchical RCU fanout value" | 360 | int "Tree-based hierarchical RCU fanout value" |
352 | range 2 64 if 64BIT | 361 | range 2 64 if 64BIT |
353 | range 2 32 if !64BIT | 362 | range 2 32 if !64BIT |
354 | depends on TREE_RCU | 363 | depends on TREE_RCU || TREE_PREEMPT_RCU |
355 | default 64 if 64BIT | 364 | default 64 if 64BIT |
356 | default 32 if !64BIT | 365 | default 32 if !64BIT |
357 | help | 366 | help |
@@ -366,7 +375,7 @@ config RCU_FANOUT | |||
366 | 375 | ||
367 | config RCU_FANOUT_EXACT | 376 | config RCU_FANOUT_EXACT |
368 | bool "Disable tree-based hierarchical RCU auto-balancing" | 377 | bool "Disable tree-based hierarchical RCU auto-balancing" |
369 | depends on TREE_RCU | 378 | depends on TREE_RCU || TREE_PREEMPT_RCU |
370 | default n | 379 | default n |
371 | help | 380 | help |
372 | This option forces use of the exact RCU_FANOUT value specified, | 381 | This option forces use of the exact RCU_FANOUT value specified, |
@@ -379,11 +388,12 @@ config RCU_FANOUT_EXACT | |||
379 | Say N if unsure. | 388 | Say N if unsure. |
380 | 389 | ||
381 | config TREE_RCU_TRACE | 390 | config TREE_RCU_TRACE |
382 | def_bool RCU_TRACE && TREE_RCU | 391 | def_bool RCU_TRACE && ( TREE_RCU || TREE_PREEMPT_RCU ) |
383 | select DEBUG_FS | 392 | select DEBUG_FS |
384 | help | 393 | help |
385 | This option provides tracing for the TREE_RCU implementation, | 394 | This option provides tracing for the TREE_RCU and |
386 | permitting Makefile to trivially select kernel/rcutree_trace.c. | 395 | TREE_PREEMPT_RCU implementations, permitting Makefile to |
396 | trivially select kernel/rcutree_trace.c. | ||
387 | 397 | ||
388 | config PREEMPT_RCU_TRACE | 398 | config PREEMPT_RCU_TRACE |
389 | def_bool RCU_TRACE && PREEMPT_RCU | 399 | def_bool RCU_TRACE && PREEMPT_RCU |