• Paul E. McKenney's avatar
    rcu: Apply results of code inspection of kernel/rcutree_plugin.h · e7d8842e
    Paul E. McKenney authored
    o Drop the calls to cpu_quiet() from the online/offline code.
      These are unnecessary, since force_quiescent_state() will
      clean up, and removing them simplifies the code a bit.
    
    o Add a warning to check that we don't enqueue the same blocked
      task twice onto the ->blocked_tasks[] lists.
    
    o Rework the phase computation in rcu_preempt_note_context_switch()
      to be more readable, as suggested by Josh Triplett.
    
    o Disable irqs to close a race between the scheduling clock
      interrupt and rcu_preempt_note_context_switch() WRT the
      ->rcu_read_unlock_special field.
    
    o Add comments to rnp->lock acquisition and release within
      rcu_read_unlock_special() noting that irqs are already
      disabled.
    Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
    Cc: laijs@cn.fujitsu.com
    Cc: dipankar@in.ibm.com
    Cc: akpm@linux-foundation.org
    Cc: mathieu.desnoyers@polymtl.ca
    Cc: josh@joshtriplett.org
    Cc: dvhltc@us.ibm.com
    Cc: niv@us.ibm.com
    Cc: peterz@infradead.org
    Cc: rostedt@goodmis.org
    Cc: Valdis.Kletnieks@vt.edu
    LKML-Reference: <12532926201851-git-send-email->
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    e7d8842e
rcutree.c 45.6 KB