Skip to content

Commit

Permalink
rcu: Make RCU_BOOST default on CONFIG_PREEMPT_RT
Browse files Browse the repository at this point in the history
On PREEMPT_RT kernels, RCU callbacks are deferred to the `rcuc' kthread.
This can stall RCU grace periods due to lengthy preemption not only of RCU
readers but also of 'rcuc' kthreads, either of which prevent grace periods
from completing, which can in turn result in OOM.  Because PREEMPT_RT
kernels have more kthreads that can block grace periods, it is more
important for such kernels to enable RCU_BOOST.

This commit therefore makes RCU_BOOST the default on PREEMPT_RT.
RCU_BOOST can still be manually disabled if need be.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
  • Loading branch information
Sebastian Andrzej Siewior authored and Paul E. McKenney committed Jan 4, 2021
1 parent 5c8fe58 commit 2341bc4
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions kernel/rcu/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -188,8 +188,8 @@ config RCU_FAST_NO_HZ

config RCU_BOOST
bool "Enable RCU priority boosting"
depends on RT_MUTEXES && PREEMPT_RCU && RCU_EXPERT
default n
depends on (RT_MUTEXES && PREEMPT_RCU && RCU_EXPERT) || PREEMPT_RT
default y if PREEMPT_RT
help
This option boosts the priority of preempted RCU readers that
block the current preemptible RCU grace period for too long.
Expand Down

0 comments on commit 2341bc4

Please sign in to comment.