bridge: Use RCU list primitive in __br_mdb_ip_get
As Paul McKenney correctly pointed out, __br_mdb_ip_get needs to use the RCU list walking primitive in order to work correctly on platforms where data-dependency ordering is not guaranteed. Reported-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
0c9a2ac1f8
commit
49f5fcfd4a
|
@ -38,7 +38,7 @@ static struct net_bridge_mdb_entry *__br_mdb_ip_get(
|
|||
struct net_bridge_mdb_entry *mp;
|
||||
struct hlist_node *p;
|
||||
|
||||
hlist_for_each_entry(mp, p, &mdb->mhash[hash], hlist[mdb->ver]) {
|
||||
hlist_for_each_entry_rcu(mp, p, &mdb->mhash[hash], hlist[mdb->ver]) {
|
||||
if (dst == mp->addr)
|
||||
return mp;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue