aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv6/addrconf.c
diff options
context:
space:
mode:
authorDavid Ahern <dsa@cumulusnetworks.com>2016-06-13 13:44:18 -0700
committerDavid S. Miller <davem@davemloft.net>2016-06-15 12:34:34 -0700
commitba46ee4c0ed122fa14aa2f5d6994c166a01ae2c0 (patch)
treeb582d0cc07c1b1f608d5c146344cdeccf25fc7a7 /net/ipv6/addrconf.c
parentnet: l3mdev: Remove const from flowi6 arg to get_rt6_dst (diff)
downloadlinux-dev-ba46ee4c0ed122fa14aa2f5d6994c166a01ae2c0.tar.xz
linux-dev-ba46ee4c0ed122fa14aa2f5d6994c166a01ae2c0.zip
net: ipv6: Do not add multicast route for l3 master devices
L3 master devices are virtual devices similar to the loopback device. Link local and multicast routes for these devices do not make sense. The ipv6 addrconf code already skips adding a linklocal address; do the same for the mcast route. Signed-off-by: David Ahern <dsa@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6/addrconf.c')
-rw-r--r--net/ipv6/addrconf.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 47f837a58e0a..b12553905e42 100644
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
@@ -2254,7 +2254,7 @@ static struct inet6_dev *addrconf_add_dev(struct net_device *dev)
return ERR_PTR(-EACCES);
/* Add default multicast route */
- if (!(dev->flags & IFF_LOOPBACK))
+ if (!(dev->flags & IFF_LOOPBACK) && !netif_is_l3_master(dev))
addrconf_add_mroute(dev);
return idev;