Skip to content

Commit e7a3c8e

Browse files
Frederic Weisbeckerpaulmckrcu
authored andcommitted
rcu: Remove full memory barrier on boot time eqs sanity check
When the boot CPU initializes the per-CPU data on behalf of all possible CPUs, a sanity check is performed on each of them to make sure none is initialized in an extended quiescent state. This check involves a full memory barrier which is useless at this early boot stage. Do a plain access instead. Signed-off-by: Frederic Weisbecker <[email protected]> Signed-off-by: Paul E. McKenney <[email protected]> Reviewed-by: Boqun Feng <[email protected]> Reviewed-by: Neeraj Upadhyay <[email protected]>
1 parent 33c0860 commit e7a3c8e

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

kernel/rcu/tree.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4786,7 +4786,7 @@ rcu_boot_init_percpu_data(int cpu)
47864786
rdp->grpmask = leaf_node_cpu_bit(rdp->mynode, cpu);
47874787
INIT_WORK(&rdp->strict_work, strict_work_handler);
47884788
WARN_ON_ONCE(ct->dynticks_nesting != 1);
4789-
WARN_ON_ONCE(rcu_dynticks_in_eqs(rcu_dynticks_snap(cpu)));
4789+
WARN_ON_ONCE(rcu_dynticks_in_eqs(ct_dynticks_cpu(cpu)));
47904790
rdp->barrier_seq_snap = rcu_state.barrier_sequence;
47914791
rdp->rcu_ofl_gp_seq = rcu_state.gp_seq;
47924792
rdp->rcu_ofl_gp_state = RCU_GP_CLEANED;

0 commit comments

Comments
 (0)