diff options
author | Paul E. McKenney <paul.mckenney@linaro.org> | 2011-11-24 00:02:05 +0100 |
---|---|---|
committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2011-12-11 19:32:05 +0100 |
commit | f0e7c19db8798b4b991a2c71911e71f5dfdb348f (patch) | |
tree | fce748b22aeb29f8e28a28028211e777bc4123dd /kernel/rcutree.c | |
parent | rcu: Remove dynticks false positives and RCU failures (diff) | |
download | linux-f0e7c19db8798b4b991a2c71911e71f5dfdb348f.tar.xz linux-f0e7c19db8798b4b991a2c71911e71f5dfdb348f.zip |
rcu: Identify dyntick-idle CPUs on first force_quiescent_state() pass
Fixes and workarounds for a number of issues (for example, that in
df4012edc) make it safe to once again detect dyntick-idle CPUs on the
first pass of force_quiescent_state(), so this commit makes that change.
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')
-rw-r--r-- | kernel/rcutree.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/rcutree.c b/kernel/rcutree.c index aab9ed504b17..69bb37287cc8 100644 --- a/kernel/rcutree.c +++ b/kernel/rcutree.c @@ -607,7 +607,7 @@ int rcu_is_cpu_rrupt_from_idle(void) static int dyntick_save_progress_counter(struct rcu_data *rdp) { rdp->dynticks_snap = atomic_add_return(0, &rdp->dynticks->dynticks); - return 0; + return (rdp->dynticks_snap & 0x1) == 0; } /* |