Skip to content
  • Paul E. McKenney's avatar
    rcu: Make cond_resched_rcu_qs() supply RCU-sched expedited QS · a1e12248
    Paul E. McKenney authored
    
    
    Although cond_resched_rcu_qs() supplies quiescent states to all flavors
    of normal RCU grace periods, it does nothing for expedited RCU-sched
    grace periods.  This commit therefore adds a check for a need for a
    quiescent state from the current CPU by an expedited RCU-sched grace
    period, and invokes rcu_sched_qs() to supply that quiescent state if so.
    
    Note that the check is racy in that we might be migrated to some other
    CPU just after checking the per-CPU variable.  This is OK because the
    act of migration will do a context switch, which will supply the needed
    quiescent state.  The only downside is that we might do an unnecessary
    call to rcu_sched_qs(), but the probability is low and the overhead
    is small.
    
    Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
    a1e12248