diff options
Diffstat (limited to 'kernel/rcu/tree.c')
| -rw-r--r-- | kernel/rcu/tree.c | 5 | 
1 files changed, 5 insertions, 0 deletions
| diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c index 9f75f25cc5d9..775d36cc0050 100644 --- a/kernel/rcu/tree.c +++ b/kernel/rcu/tree.c @@ -3868,6 +3868,7 @@ static void rcu_init_new_rnp(struct rcu_node *rnp_leaf)  static void __init  rcu_boot_init_percpu_data(int cpu, struct rcu_state *rsp)  { +	static struct lock_class_key rcu_exp_sched_rdp_class;  	unsigned long flags;  	struct rcu_data *rdp = per_cpu_ptr(rsp->rda, cpu);  	struct rcu_node *rnp = rcu_get_root(rsp); @@ -3883,6 +3884,10 @@ rcu_boot_init_percpu_data(int cpu, struct rcu_state *rsp)  	mutex_init(&rdp->exp_funnel_mutex);  	rcu_boot_init_nocb_percpu_data(rdp);  	raw_spin_unlock_irqrestore(&rnp->lock, flags); +	if (rsp == &rcu_sched_state) +		lockdep_set_class_and_name(&rdp->exp_funnel_mutex, +					   &rcu_exp_sched_rdp_class, +					   "rcu_data_exp_sched");  }  /* |