• Peter Zijlstra's avatar
    rcu: Make expedited GP CPU stoppage asynchronous · 3a6d7c64
    Peter Zijlstra authored
    Sequentially stopping the CPUs slows down expedited grace periods by
    at least a factor of two, based on rcutorture's grace-period-per-second
    rate.  This is a conservative measure because rcutorture uses unusually
    long RCU read-side critical sections and because rcutorture periodically
    quiesces the system in order to test RCU's ability to ramp down to and
    up from the idle state.  This commit therefore replaces the stop_one_cpu()
    with stop_one_cpu_nowait(), using an atomic-counter scheme to determine
    when all CPUs have passed through the stopped state.
    Signed-off-by: default avatarPeter Zijlstra <peterz@infradead.org>
    Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
    3a6d7c64
tree.c 129 KB