[tip: core/rcu] rcu/nocb: Add missing annotation for rcu_nocb_bypass_unlock()

From: tip-bot2 for Jules Irenge
Date: Tue Mar 24 2020 - 05:18:40 EST


The following commit has been merged into the core/rcu branch of tip:

Commit-ID: 92c0b889f2ff6898710d49458b6eae1de50895c6
Gitweb: https://git.kernel.org/tip/92c0b889f2ff6898710d49458b6eae1de50895c6
Author: Jules Irenge <jbi.octave@xxxxxxxxx>
AuthorDate: Thu, 30 Jan 2020 00:30:09
Committer: Paul E. McKenney <paulmck@xxxxxxxxxx>
CommitterDate: Thu, 20 Feb 2020 15:58:23 -08:00

rcu/nocb: Add missing annotation for rcu_nocb_bypass_unlock()

Sparse reports warning at rcu_nocb_bypass_unlock()

warning: context imbalance in rcu_nocb_bypass_unlock() - unexpected unlock

The root cause is a missing annotation of rcu_nocb_bypass_unlock()
which causes the warning.

This commit therefore adds the missing __releases(&rdp->nocb_bypass_lock)
annotation.

Signed-off-by: Jules Irenge <jbi.octave@xxxxxxxxx>
Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxx>
Acked-by: Boqun Feng <boqun.feng@xxxxxxxxx>
---
kernel/rcu/tree_plugin.h | 1 +
1 file changed, 1 insertion(+)

diff --git a/kernel/rcu/tree_plugin.h b/kernel/rcu/tree_plugin.h
index 6db2cad..3846519 100644
--- a/kernel/rcu/tree_plugin.h
+++ b/kernel/rcu/tree_plugin.h
@@ -1530,6 +1530,7 @@ static bool rcu_nocb_bypass_trylock(struct rcu_data *rdp)
* Release the specified rcu_data structure's ->nocb_bypass_lock.
*/
static void rcu_nocb_bypass_unlock(struct rcu_data *rdp)
+ __releases(&rdp->nocb_bypass_lock)
{
lockdep_assert_irqs_disabled();
raw_spin_unlock(&rdp->nocb_bypass_lock);