• P
    rcu: Remove redundant grace-period check · 45f014c5
    Paul E. McKenney 提交于
    The rcu_process_dyntick() function checks twice for the end of
    the current grace period.  However, it holds the current
    rcu_node structure's ->lock field throughout, and doesn't get to
    the second call to rcu_gp_in_progress() unless there is at least
    one CPU corresponding to this rcu_node structure that has not
    yet checked in for the current grace period, which would prevent
    the current grace period from ending. So the current grace
    period cannot have ended, and the second check is redundant, so
    remove it.
    
    Also, given that this function is used even with !CONFIG_NO_HZ,
    its name is quite misleading.  Change from rcu_process_dyntick()
    to force_qs_rnp().
    Signed-off-by: NPaul E. McKenney <paulmck@linux.vnet.ibm.com>
    Cc: laijs@cn.fujitsu.com
    Cc: dipankar@in.ibm.com
    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
    Cc: dhowells@redhat.com
    LKML-Reference: <1262646550562-git-send-email->
    Signed-off-by: NIngo Molnar <mingo@elte.hu>
    45f014c5
rcutree.c 54.6 KB