aboutsummaryrefslogtreecommitdiffstats
path: root/init
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2014-09-23 01:21:42 -0400
committerIngo Molnar <mingo@kernel.org>2014-09-23 01:21:42 -0400
commit62731433591156ece255e23ffd69ea4544b424f1 (patch)
tree125ce584cdb3166456b1767d03c3d5e72ea79a6e /init
parent7c9a3730a5ef4c6240eaaa2d8dcdb8cc1627d715 (diff)
parentdd56af42bd829c6e770ed69812bd65a04eaeb1e4 (diff)
Merge branch 'rcu/next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/rcu
Pull the v3.18 RCU changes from Paul E. McKenney: " * Update RCU documentation. These were posted to LKML at https://lkml.org/lkml/2014/8/28/378. * Miscellaneous fixes. These were posted to LKML at https://lkml.org/lkml/2014/8/28/386. An additional fix that eliminates a documented (but now inconvenient) deadlock between RCU hotplug and expedited grace periods was posted at https://lkml.org/lkml/2014/8/28/573. * Changes related to No-CBs CPUs and NO_HZ_FULL. These were posted to LKML at https://lkml.org/lkml/2014/8/28/412. * Torture-test updates. These were posted to LKML at https://lkml.org/lkml/2014/8/28/546 and at https://lkml.org/lkml/2014/9/11/1114. * RCU-tasks implementation. These were posted to LKML at https://lkml.org/lkml/2014/8/28/540. " Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'init')
-rw-r--r--init/Kconfig14
-rw-r--r--init/main.c1
2 files changed, 13 insertions, 2 deletions
diff --git a/init/Kconfig b/init/Kconfig
index e84c6423a2e5..4fe5500b998f 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -507,6 +507,16 @@ config PREEMPT_RCU
507 This option enables preemptible-RCU code that is common between 507 This option enables preemptible-RCU code that is common between
508 TREE_PREEMPT_RCU and, in the old days, TINY_PREEMPT_RCU. 508 TREE_PREEMPT_RCU and, in the old days, TINY_PREEMPT_RCU.
509 509
510config TASKS_RCU
511 bool "Task_based RCU implementation using voluntary context switch"
512 default n
513 help
514 This option enables a task-based RCU implementation that uses
515 only voluntary context switch (not preemption!), idle, and
516 user-mode execution as quiescent states.
517
518 If unsure, say N.
519
510config RCU_STALL_COMMON 520config RCU_STALL_COMMON
511 def_bool ( TREE_RCU || TREE_PREEMPT_RCU || RCU_TRACE ) 521 def_bool ( TREE_RCU || TREE_PREEMPT_RCU || RCU_TRACE )
512 help 522 help
@@ -737,7 +747,7 @@ choice
737 747
738config RCU_NOCB_CPU_NONE 748config RCU_NOCB_CPU_NONE
739 bool "No build_forced no-CBs CPUs" 749 bool "No build_forced no-CBs CPUs"
740 depends on RCU_NOCB_CPU && !NO_HZ_FULL_ALL 750 depends on RCU_NOCB_CPU
741 help 751 help
742 This option does not force any of the CPUs to be no-CBs CPUs. 752 This option does not force any of the CPUs to be no-CBs CPUs.
743 Only CPUs designated by the rcu_nocbs= boot parameter will be 753 Only CPUs designated by the rcu_nocbs= boot parameter will be
@@ -751,7 +761,7 @@ config RCU_NOCB_CPU_NONE
751 761
752config RCU_NOCB_CPU_ZERO 762config RCU_NOCB_CPU_ZERO
753 bool "CPU 0 is a build_forced no-CBs CPU" 763 bool "CPU 0 is a build_forced no-CBs CPU"
754 depends on RCU_NOCB_CPU && !NO_HZ_FULL_ALL 764 depends on RCU_NOCB_CPU
755 help 765 help
756 This option forces CPU 0 to be a no-CBs CPU, so that its RCU 766 This option forces CPU 0 to be a no-CBs CPU, so that its RCU
757 callbacks are invoked by a per-CPU kthread whose name begins 767 callbacks are invoked by a per-CPU kthread whose name begins
diff --git a/init/main.c b/init/main.c
index bb1aed928f21..e3c4cdd94d5b 100644
--- a/init/main.c
+++ b/init/main.c
@@ -578,6 +578,7 @@ asmlinkage __visible void __init start_kernel(void)
578 idr_init_cache(); 578 idr_init_cache();
579 rcu_init(); 579 rcu_init();
580 tick_nohz_init(); 580 tick_nohz_init();
581 rcu_init_nohz();
581 context_tracking_init(); 582 context_tracking_init();
582 radix_tree_init(); 583 radix_tree_init();
583 /* init some links before init_ISA_irqs() */ 584 /* init some links before init_ISA_irqs() */