rcu: Prevent offline CPUs from executing RCU core code
authorPaul E. McKenney <paul.mckenney@linaro.org>
Thu, 21 Jun 2012 16:54:10 +0000 (09:54 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Sun, 23 Sep 2012 14:41:53 +0000 (07:41 -0700)
commitbfa00b4c4028f39357d16279ff0fddf550241593
tree81f7ba2a050d2ddb033bf690ade41052a866d7fb
parent7fdefc10e1d730d4608cc59d386bc446f5b9ee99
rcu: Prevent offline CPUs from executing RCU core code

Earlier versions of RCU invoked the RCU core from the CPU_DYING notifier
in order to note a quiescent state for the outgoing CPU.  Because the
CPU is marked "offline" during the execution of the CPU_DYING notifiers,
the RCU core had to tolerate being invoked from an offline CPU.  However,
commit b1420f1c (Make rcu_barrier() less disruptive) left only tracing
code in the CPU_DYING notifier, so the RCU core need no longer execute
on offline CPUs.  This commit therefore enforces this restriction.

Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
kernel/rcutree.c