rcu: gp_max is protected by root rcu_node's lock
authorWei Yang <richard.weiyang@linux.alibaba.com>
Fri, 12 Jun 2020 02:07:52 +0000 (10:07 +0800)
committerPaul E. McKenney <paulmck@kernel.org>
Mon, 29 Jun 2020 18:58:51 +0000 (11:58 -0700)
Because gp_max is protected by root rcu_node's lock, this commit moves
the gp_max definition to the region of the rcu_node structure containing
fields protected by this lock.

Signed-off-by: Wei Yang <richard.weiyang@linux.alibaba.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
kernel/rcu/tree.h

index 575745f..09ec93b 100644 (file)
@@ -302,6 +302,8 @@ struct rcu_state {
        u8      boost ____cacheline_internodealigned_in_smp;
                                                /* Subject to priority boost. */
        unsigned long gp_seq;                   /* Grace-period sequence #. */
+       unsigned long gp_max;                   /* Maximum GP duration in */
+                                               /*  jiffies. */
        struct task_struct *gp_kthread;         /* Task for grace periods. */
        struct swait_queue_head gp_wq;          /* Where GP task waits. */
        short gp_flags;                         /* Commands for GP task. */
@@ -347,8 +349,6 @@ struct rcu_state {
                                                /*  a reluctant CPU. */
        unsigned long n_force_qs_gpstart;       /* Snapshot of n_force_qs at */
                                                /*  GP start. */
-       unsigned long gp_max;                   /* Maximum GP duration in */
-                                               /*  jiffies. */
        const char *name;                       /* Name of structure. */
        char abbr;                              /* Abbreviated name. */