summaryrefslogtreecommitdiffstats
path: root/kernel/rcutree.c
diff options
context:
space:
mode:
authorPaul E. McKenney <paul.mckenney@linaro.org>2011-11-30 15:41:14 -0800
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>2011-12-11 10:32:10 -0800
commitf23f7fa1c8effca19b52b98fc71016109d21db59 (patch)
treee669b1b0cd96820949dd9deee1e5113fd667fb36 /kernel/rcutree.c
parentdff1672d9199fffddb58fa7970ccf59005fc35f3 (diff)
downloadlinux-f23f7fa1c8effca19b52b98fc71016109d21db59.tar.bz2
rcu: Adaptive dyntick-idle preparation
If there are other CPUs active at a given point in time, then there is a limit to what a given CPU can do to advance the current RCU grace period. Beyond this limit, attempting to force the RCU grace period forward will do nothing but consume energy burning CPU cycles. Therefore, this commit takes an adaptive approach to RCU_FAST_NO_HZ preparations for idle. It pushes the RCU core state machine for two cycles unconditionally, and then it will push from zero to three additional cycles, but only as long as the RCU core has work for this CPU to do immediately. The rcu_pending() function is used to check whether the RCU core has such work. Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Diffstat (limited to 'kernel/rcutree.c')
0 files changed, 0 insertions, 0 deletions