diff options
author | Paul E. McKenney <paul.mckenney@linaro.org> | 2011-11-22 17:46:19 -0800 |
---|---|---|
committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2011-12-11 10:32:01 -0800 |
commit | 84ad00cb61f1cb21f0b63bc6f7dc254399eb3830 (patch) | |
tree | 7f275af0caaead54a5e8847afa308f5e2b33997a /kernel/rcutree.h | |
parent | 3084f2f80cc8a1fd66233722d88beac0fe85e26f (diff) | |
download | linux-84ad00cb61f1cb21f0b63bc6f7dc254399eb3830.tar.gz |
rcu: Avoid needlessly IPIing CPUs at GP end
If a CPU enters dyntick-idle mode with callbacks pending, it will need
an IPI at the end of the grace period. However, if it exits dyntick-idle
mode before the grace period ends, it will be needlessly IPIed at the
end of the grace period.
Therefore, this commit clears the per-CPU rcu_awake_at_gp_end flag
when a CPU determines that it does not need it. This in turn requires
disabling interrupts across much of rcu_prepare_for_idle() in order to
avoid having nested interrupts clearing this state out from under us.
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.h')
0 files changed, 0 insertions, 0 deletions