diff options
author | Paul E. McKenney <paul.mckenney@linaro.org> | 2012-12-28 14:30:36 -0500 |
---|---|---|
committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2013-03-26 11:04:51 -0400 |
commit | c0f4dfd4f90f1667d234d21f15153ea09a2eaa66 (patch) | |
tree | e06fa6eef015a373849855249752ec525ca8ad4b /init | |
parent | b11cc5760a9c48c870ad286e8a6d8fdb998fa58d (diff) |
rcu: Make RCU_FAST_NO_HZ take advantage of numbered callbacks
Because RCU callbacks are now associated with the number of the grace
period that they must wait for, CPUs can now take advance callbacks
corresponding to grace periods that ended while a given CPU was in
dyntick-idle mode. This eliminates the need to try forcing the RCU
state machine while entering idle, thus reducing the CPU intensiveness
of RCU_FAST_NO_HZ, which should increase its energy efficiency.
Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Diffstat (limited to 'init')
-rw-r--r-- | init/Kconfig | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/init/Kconfig b/init/Kconfig index 717584064a7e..a3a2304fa6d2 100644 --- a/init/Kconfig +++ b/init/Kconfig | |||
@@ -582,13 +582,16 @@ config RCU_FAST_NO_HZ | |||
582 | depends on NO_HZ && SMP | 582 | depends on NO_HZ && SMP |
583 | default n | 583 | default n |
584 | help | 584 | help |
585 | This option causes RCU to attempt to accelerate grace periods in | 585 | This option permits CPUs to enter dynticks-idle state even if |
586 | order to allow CPUs to enter dynticks-idle state more quickly. | 586 | they have RCU callbacks queued, and prevents RCU from waking |
587 | On the other hand, this option increases the overhead of the | 587 | these CPUs up more than roughly once every four jiffies (by |
588 | dynticks-idle checking, thus degrading scheduling latency. | 588 | default, you can adjust this using the rcutree.rcu_idle_gp_delay |
589 | 589 | parameter), thus improving energy efficiency. On the other | |
590 | Say Y if energy efficiency is critically important, and you don't | 590 | hand, this option increases the duration of RCU grace periods, |
591 | care about real-time response. | 591 | for example, slowing down synchronize_rcu(). |
592 | |||
593 | Say Y if energy efficiency is critically important, and you | ||
594 | don't care about increased grace-period durations. | ||
592 | 595 | ||
593 | Say N if you are unsure. | 596 | Say N if you are unsure. |
594 | 597 | ||