OSDN Git Service

bridge: br_stp: Use built-in RCU list checking
authorMadhuparna Bhowmik <madhuparnabhowmik10@gmail.com>
Wed, 19 Feb 2020 15:17:46 +0000 (20:47 +0530)
committerDavid S. Miller <davem@davemloft.net>
Wed, 19 Feb 2020 19:13:43 +0000 (11:13 -0800)
list_for_each_entry_rcu() has built-in RCU and lock checking.

Pass cond argument to list_for_each_entry_rcu() to silence
false lockdep warning when CONFIG_PROVE_RCU_LIST is enabled
by default.

Signed-off-by: Madhuparna Bhowmik <madhuparnabhowmik10@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/bridge/br_stp.c

index 6856a6d..1f14b84 100644 (file)
@@ -63,7 +63,8 @@ struct net_bridge_port *br_get_port(struct net_bridge *br, u16 port_no)
 {
        struct net_bridge_port *p;
 
-       list_for_each_entry_rcu(p, &br->port_list, list) {
+       list_for_each_entry_rcu(p, &br->port_list, list,
+                               lockdep_is_held(&br->lock)) {
                if (p->port_no == port_no)
                        return p;
        }