diff options
author | Nikolay Aleksandrov <nikolay@cumulusnetworks.com> | 2018-12-05 16:14:25 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-12-06 04:01:51 +0300 |
commit | 4329596cb10d23c9e22c78e676a3667ef28ed62f (patch) | |
tree | 5cc06a0e796073d46762c92f80e846c820102375 /net/bridge/br_mdb.c | |
parent | 19e3a9c90c53479fecaa02307bf2db5ab8b3ffe3 (diff) | |
download | linux-4329596cb10d23c9e22c78e676a3667ef28ed62f.tar.xz |
net: bridge: multicast: use non-bh rcu flavor
The bridge multicast code has been using a mix of RCU and RCU-bh flavors
sometimes in questionable way. Since we've moved to rhashtable just use
non-bh RCU everywhere. In addition this simplifies freeing of objects
and allows us to remove some unnecessary callback functions.
v3: new patch
Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bridge/br_mdb.c')
-rw-r--r-- | net/bridge/br_mdb.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/bridge/br_mdb.c b/net/bridge/br_mdb.c index ea8abdb56df3..79d4c9d253e0 100644 --- a/net/bridge/br_mdb.c +++ b/net/bridge/br_mdb.c @@ -710,7 +710,7 @@ static int __br_mdb_del(struct net_bridge *br, struct br_mdb_entry *entry) rcu_assign_pointer(*pp, p->next); hlist_del_init(&p->mglist); del_timer(&p->timer); - call_rcu_bh(&p->rcu, br_multicast_free_pg); + kfree_rcu(p, rcu); err = 0; if (!mp->ports && !mp->host_joined && |