lkml.org 
[lkml]   [2018]   [Jun]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH tip/core/rcu 16/22] rcu: Remove failsafe check for lost quiescent state
    Date
    Now that quiescent-state reporting is fully event-driven, this commit
    removes the check for a lost quiescent state from force_qs_rnp().

    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
    ---
    kernel/rcu/tree.c | 16 +++-------------
    1 file changed, 3 insertions(+), 13 deletions(-)

    diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
    index 7de1820a04c1..8704b31b696d 100644
    --- a/kernel/rcu/tree.c
    +++ b/kernel/rcu/tree.c
    @@ -2317,8 +2317,9 @@ rcu_report_qs_rnp(unsigned long mask, struct rcu_state *rsp,
    * irqs disabled, and this lock is released upon return, but irqs remain
    * disabled.
    */
    -static void rcu_report_unblock_qs_rnp(struct rcu_state *rsp,
    - struct rcu_node *rnp, unsigned long flags)
    +static void __maybe_unused
    +rcu_report_unblock_qs_rnp(struct rcu_state *rsp,
    + struct rcu_node *rnp, unsigned long flags)
    __releases(rnp->lock)
    {
    unsigned long gps;
    @@ -2679,17 +2680,6 @@ static void force_qs_rnp(struct rcu_state *rsp, int (*f)(struct rcu_data *rsp))
    /* rcu_initiate_boost() releases rnp->lock */
    continue;
    }
    - if (rnp->parent &&
    - (rnp->parent->qsmask & rnp->grpmask)) {
    - /*
    - * Race between grace-period
    - * initialization and task exiting RCU
    - * read-side critical section: Report.
    - */
    - rcu_report_unblock_qs_rnp(rsp, rnp, flags);
    - /* rcu_report_unblock_qs_rnp() rlses ->lock */
    - continue;
    - }
    raw_spin_unlock_irqrestore_rcu_node(rnp, flags);
    continue;
    }
    --
    2.17.1
    \
     
     \ /
      Last update: 2018-06-26 19:12    [W:4.311 / U:0.248 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site