diff --git a/[refs] b/[refs] index 7f1c6c5247c6..71710db2127b 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 946bf5ee3c46f73b5cbd52aab594697b1a132d1f +refs/heads/master: 6b0d6a9b4296fa16a28d10d416db7a770fc03287 diff --git a/trunk/net/bridge/br_multicast.c b/trunk/net/bridge/br_multicast.c index f701a21acb34..fdbd41c76ec4 100644 --- a/trunk/net/bridge/br_multicast.c +++ b/trunk/net/bridge/br_multicast.c @@ -719,7 +719,8 @@ static int br_multicast_add_group(struct net_bridge *br, goto err; if (!port) { - hlist_add_head(&mp->mglist, &br->mglist); + if (hlist_unhashed(&mp->mglist)) + hlist_add_head(&mp->mglist, &br->mglist); mod_timer(&mp->timer, now + br->multicast_membership_interval); goto out; }