• Paul E. McKenney's avatar
    rcu: Abstract the dynticks momentary-idle operation · 6563de9d
    Paul E. McKenney authored
    This commit is the first step towards full abstraction of all accesses to
    the ->dynticks counter, implementing the previously open-coded atomic add
    of two in a new rcu_dynticks_momentary_idle() function.  This abstraction
    will ease changes to the ->dynticks counter operation.
    
    Note that this commit gets rid of the smp_mb__before_atomic() and the
    smp_mb__after_atomic() calls that were previously present.  The reason
    that this is OK from a memory-ordering perspective is that the atomic
    operation is now atomic_add_return(), which, as a value-returning atomic,
    guarantees full ordering.
    Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
    Reviewed-by: default avatarJosh Triplett <josh@joshtriplett.org>
    6563de9d
tree.c 131 KB