summaryrefslogtreecommitdiff
path: root/kernel/sched
diff options
context:
space:
mode:
authorPaul E. McKenney <paul.mckenney@linaro.org>2012-08-03 13:16:15 -0700
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>2012-09-23 07:43:55 -0700
commit0d8ee37e2fcb7b77b9c5dee784beca5a215cad4c (patch)
tree6e7661bf5231b4c48a6681a9fa8e8ede7915d0a7 /kernel/sched
parent1331e7a1bbe1f11b19c4327ba0853bee2a606543 (diff)
rcu: Disallow callback registry on offline CPUs
Posting a callback after the CPU_DEAD notifier effectively leaks that callback unless/until that CPU comes back online. Silence is unhelpful when attempting to track down such leaks, so this commit emits a WARN_ON_ONCE() and unconditionally leaks the callback when an offline CPU attempts to register a callback. The rdp->nxttail[RCU_NEXT_TAIL] is set to NULL in the CPU_DEAD notifier and restored in the CPU_UP_PREPARE notifier, allowing _call_rcu() to determine exactly when posting callbacks is illegal. 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>
Diffstat (limited to 'kernel/sched')
0 files changed, 0 insertions, 0 deletions