[PATCH tip/core/rcu 0/10] Expedited grace-period updates for v5.6
From: Paul E. McKenney
Date: Mon Dec 09 2019 - 23:01:25 EST
Hello!
This series provides updates to RCU's expedited grace periods:
1. Use *_ONCE() to protect lockless ->expmask accesses.
2. Avoid modifying mask_ofl_ipi in sync_rcu_exp_select_node_cpus(),
courtesy of Boqun Feng.
3. Fix data-race due to atomic_t copy-by-value, courtesy of
Marco Elver.
4. Lookup instead of bit-twiddling in sync_rcu_exp_select_node_cpus().
5. Fix missed wakeup of exp_wq waiters, courtesy of Neeraj Upadhyay.
6. Allow only one expedited GP to run concurrently with wakeups,
courtesy of Neeraj Upadhyay.
7. Rename sync_rcu_preempt_exp_done() to sync_rcu_exp_done().
8. Update tree_exp.h function-header comments.
9. Replace synchronize_sched_expedited_wait() "_sched" with "_rcu".
10. Enable tick for nohz_full CPUs slow to provide expedited QS.
Thanx, Paul
------------------------------------------------------------------------
include/linux/tick.h | 5 +
include/trace/events/rcu.h | 4 -
kernel/rcu/tree.c | 11 +--
kernel/rcu/tree.h | 1
kernel/rcu/tree_exp.h | 149 +++++++++++++++++++++++++++------------------
kernel/rcu/tree_plugin.h | 4 -
6 files changed, 107 insertions(+), 67 deletions(-)