• Paul E. McKenney's avatar
    rcu: Don't funnel-lock above leaf node if GP in progress · a2165e41
    Paul E. McKenney authored
    The old grace-period start code would acquire only the leaf's rcu_node
    structure's ->lock if that structure believed that a grace period was
    in progress.  The new code advances to the leaf's parent in this case,
    needlessly acquiring then leaf's parent's ->lock.  This commit therefore
    checks the grace-period state after marking the leaf with the need for
    the specified grace period, and if the leaf believes that a grace period
    is in progress, takes an early exit.
    Reported-by: default avatarJoel Fernandes <joel@joelfernandes.org>
    Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
    [ paulmck: Add "Startedleaf" tracing as suggested by Joel Fernandes. ]
    a2165e41
rcu.h 23.6 KB