On Mon, Jul 13, 2015 at 6:36 AM, Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx> wrote: > Since the mdb add/del code was introduced there have been 2 br_mdb_notify > calls when doing br_mdb_add() resulting in 2 notifications on each add. > > Example: > Command: bridge mdb add dev br0 port eth1 grp 239.0.0.1 permanent > Before patch: > root@debian:~# bridge monitor all > [MDB]dev br0 port eth1 grp 239.0.0.1 permanent > [MDB]dev br0 port eth1 grp 239.0.0.1 permanent > > After patch: > root@debian:~# bridge monitor all > [MDB]dev br0 port eth1 grp 239.0.0.1 permanent > > Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx> > Fixes: cfd567543590 ("bridge: add support of adding and deleting mdb entries") > --- > net/bridge/br_mdb.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/net/bridge/br_mdb.c b/net/bridge/br_mdb.c > index c11cf2611db0..1198a3dbad95 100644 > --- a/net/bridge/br_mdb.c > +++ b/net/bridge/br_mdb.c > @@ -351,7 +351,6 @@ static int br_mdb_add_group(struct net_bridge *br, struct net_bridge_port *port, > if (state == MDB_TEMPORARY) > mod_timer(&p->timer, now + br->multicast_membership_interval); > > - br_mdb_notify(br->dev, port, group, RTM_NEWMDB); > return 0; > } Looks good to me. And probably we can convert existing __br_mdb_notify() to using non-atomic allocation too, but that is for net-next.