diff options
| author | Matthew Wilcox <mawilcox@microsoft.com> | 2018-01-17 09:24:30 -0500 |
|---|---|---|
| committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2018-02-20 19:12:26 -0500 |
| commit | a32e01ee689794a26bdfdbaa7e8c334576cee36c (patch) | |
| tree | 7c6f36a0dd649bbbfc40a85e90fd4ba277044b88 /kernel/rcu/tree_plugin.h | |
| parent | 65518db86b9ed1180b013c8a34c73c6ff7275886 (diff) | |
rcu: Use wrapper for lockdep asserts
Commits c0b334c5bfa9 and ea9b0c8a26a2 introduced new sparse warnings
by accessing rcu_node->lock directly and ignoring the __private
marker. Introduce a new wrapper and use it. Also fix a similar problem
in srcutree.c introduced by a3883df3935e.
Signed-off-by: Matthew Wilcox <mawilcox@microsoft.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Diffstat (limited to 'kernel/rcu/tree_plugin.h')
| -rw-r--r-- | kernel/rcu/tree_plugin.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/rcu/tree_plugin.h b/kernel/rcu/tree_plugin.h index 1c2d58a85511..84fbee4686d3 100644 --- a/kernel/rcu/tree_plugin.h +++ b/kernel/rcu/tree_plugin.h | |||
| @@ -180,7 +180,7 @@ static void rcu_preempt_ctxt_queue(struct rcu_node *rnp, struct rcu_data *rdp) | |||
| 180 | (rnp->expmask & rdp->grpmask ? RCU_EXP_BLKD : 0); | 180 | (rnp->expmask & rdp->grpmask ? RCU_EXP_BLKD : 0); |
| 181 | struct task_struct *t = current; | 181 | struct task_struct *t = current; |
| 182 | 182 | ||
| 183 | lockdep_assert_held(&rnp->lock); | 183 | raw_lockdep_assert_held_rcu_node(rnp); |
| 184 | WARN_ON_ONCE(rdp->mynode != rnp); | 184 | WARN_ON_ONCE(rdp->mynode != rnp); |
| 185 | WARN_ON_ONCE(rnp->level != rcu_num_lvls - 1); | 185 | WARN_ON_ONCE(rnp->level != rcu_num_lvls - 1); |
| 186 | 186 | ||
| @@ -1044,7 +1044,7 @@ static void rcu_initiate_boost(struct rcu_node *rnp, unsigned long flags) | |||
| 1044 | { | 1044 | { |
| 1045 | struct task_struct *t; | 1045 | struct task_struct *t; |
| 1046 | 1046 | ||
| 1047 | lockdep_assert_held(&rnp->lock); | 1047 | raw_lockdep_assert_held_rcu_node(rnp); |
| 1048 | if (!rcu_preempt_blocked_readers_cgp(rnp) && rnp->exp_tasks == NULL) { | 1048 | if (!rcu_preempt_blocked_readers_cgp(rnp) && rnp->exp_tasks == NULL) { |
| 1049 | raw_spin_unlock_irqrestore_rcu_node(rnp, flags); | 1049 | raw_spin_unlock_irqrestore_rcu_node(rnp, flags); |
| 1050 | return; | 1050 | return; |
