diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index ef309a26aba0f508c8e282e4cd5dcef01fb9ff2c..a8b2f3ea20cc49d23fac0f6549e726971df94e5c 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c @@ -3291,6 +3291,10 @@ static void addrconf_dev_config(struct net_device *dev) (dev->type != ARPHRD_NONE) && (dev->type != ARPHRD_RAWIP)) { /* Alas, we support only Ethernet autoconfiguration. */ + idev = __in6_dev_get(dev); + if (!IS_ERR_OR_NULL(idev) && dev->flags & IFF_UP && + dev->flags & IFF_MULTICAST) + ipv6_mc_up(idev); return; }