• T
    rcu: increase synchronize_sched_expedited() batching · e27fc964
    Tejun Heo 提交于
    The fix in commit #6a0cc49 requires more than three concurrent instances
    of synchronize_sched_expedited() before batching is possible.  This
    patch uses a ticket-counter-like approach that is also not unrelated to
    Lai Jiangshan's Ring RCU to allow sharing of expedited grace periods even
    when there are only two concurrent instances of synchronize_sched_expedited().
    
    This commit builds on Tejun's original posting, which may be found at
    http://lkml.org/lkml/2010/11/9/204, adding memory barriers, avoiding
    overflow of signed integers (other than via atomic_t), and fixing the
    detection of batching.
    Signed-off-by: NTejun Heo <tj@kernel.org>
    Signed-off-by: NPaul E. McKenney <paulmck@linux.vnet.ibm.com>
    e27fc964
rcupdate.h 25.8 KB