diff options
author | David S. Miller <davem@davemloft.net> | 2011-12-16 02:11:14 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-12-16 02:11:14 -0500 |
commit | b26e478f8fd5b575684f021b05a5c6236ebb911a (patch) | |
tree | 27d3b3eaf3fe10d05319ad3395b2569ad5f8f6d0 /net/ipv6 | |
parent | bcebcc468a6bcd3820fe9ad36b34220563efc93a (diff) | |
parent | bb3c36863e8001fc21a88bebfdead4da4c23e848 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts:
drivers/net/ethernet/freescale/fsl_pq_mdio.c
net/batman-adv/translation-table.c
net/ipv6/route.c
Diffstat (limited to 'net/ipv6')
-rw-r--r-- | net/ipv6/addrconf.c | 3 | ||||
-rw-r--r-- | net/ipv6/route.c | 2 | ||||
-rw-r--r-- | net/ipv6/sit.c | 7 |
3 files changed, 9 insertions, 3 deletions
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index 94f3fd91a1a6..59a9d0e1da56 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c | |||
@@ -1805,7 +1805,8 @@ static struct inet6_dev *addrconf_add_dev(struct net_device *dev) | |||
1805 | return ERR_PTR(-EACCES); | 1805 | return ERR_PTR(-EACCES); |
1806 | 1806 | ||
1807 | /* Add default multicast route */ | 1807 | /* Add default multicast route */ |
1808 | addrconf_add_mroute(dev); | 1808 | if (!(dev->flags & IFF_LOOPBACK)) |
1809 | addrconf_add_mroute(dev); | ||
1809 | 1810 | ||
1810 | /* Add link local route */ | 1811 | /* Add link local route */ |
1811 | addrconf_add_lroute(dev); | 1812 | addrconf_add_lroute(dev); |
diff --git a/net/ipv6/route.c b/net/ipv6/route.c index 4bf362baa97a..ad438546d915 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c | |||
@@ -728,7 +728,7 @@ static struct rt6_info *rt6_alloc_cow(const struct rt6_info *ort, | |||
728 | int attempts = !in_softirq(); | 728 | int attempts = !in_softirq(); |
729 | 729 | ||
730 | if (!(rt->rt6i_flags & RTF_GATEWAY)) { | 730 | if (!(rt->rt6i_flags & RTF_GATEWAY)) { |
731 | if (rt->rt6i_dst.plen != 128 && | 731 | if (ort->rt6i_dst.plen != 128 && |
732 | ipv6_addr_equal(&ort->rt6i_dst.addr, daddr)) | 732 | ipv6_addr_equal(&ort->rt6i_dst.addr, daddr)) |
733 | rt->rt6i_flags |= RTF_ANYCAST; | 733 | rt->rt6i_flags |= RTF_ANYCAST; |
734 | rt->rt6i_gateway = *daddr; | 734 | rt->rt6i_gateway = *daddr; |
diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c index b7d14cc12ee8..3b6dac956bb0 100644 --- a/net/ipv6/sit.c +++ b/net/ipv6/sit.c | |||
@@ -263,6 +263,8 @@ static struct ip_tunnel *ipip6_tunnel_locate(struct net *net, | |||
263 | if (register_netdevice(dev) < 0) | 263 | if (register_netdevice(dev) < 0) |
264 | goto failed_free; | 264 | goto failed_free; |
265 | 265 | ||
266 | strcpy(nt->parms.name, dev->name); | ||
267 | |||
266 | dev_hold(dev); | 268 | dev_hold(dev); |
267 | 269 | ||
268 | ipip6_tunnel_link(sitn, nt); | 270 | ipip6_tunnel_link(sitn, nt); |
@@ -1144,7 +1146,6 @@ static int ipip6_tunnel_init(struct net_device *dev) | |||
1144 | struct ip_tunnel *tunnel = netdev_priv(dev); | 1146 | struct ip_tunnel *tunnel = netdev_priv(dev); |
1145 | 1147 | ||
1146 | tunnel->dev = dev; | 1148 | tunnel->dev = dev; |
1147 | strcpy(tunnel->parms.name, dev->name); | ||
1148 | 1149 | ||
1149 | memcpy(dev->dev_addr, &tunnel->parms.iph.saddr, 4); | 1150 | memcpy(dev->dev_addr, &tunnel->parms.iph.saddr, 4); |
1150 | memcpy(dev->broadcast, &tunnel->parms.iph.daddr, 4); | 1151 | memcpy(dev->broadcast, &tunnel->parms.iph.daddr, 4); |
@@ -1207,6 +1208,7 @@ static void __net_exit sit_destroy_tunnels(struct sit_net *sitn, struct list_hea | |||
1207 | static int __net_init sit_init_net(struct net *net) | 1208 | static int __net_init sit_init_net(struct net *net) |
1208 | { | 1209 | { |
1209 | struct sit_net *sitn = net_generic(net, sit_net_id); | 1210 | struct sit_net *sitn = net_generic(net, sit_net_id); |
1211 | struct ip_tunnel *t; | ||
1210 | int err; | 1212 | int err; |
1211 | 1213 | ||
1212 | sitn->tunnels[0] = sitn->tunnels_wc; | 1214 | sitn->tunnels[0] = sitn->tunnels_wc; |
@@ -1231,6 +1233,9 @@ static int __net_init sit_init_net(struct net *net) | |||
1231 | if ((err = register_netdev(sitn->fb_tunnel_dev))) | 1233 | if ((err = register_netdev(sitn->fb_tunnel_dev))) |
1232 | goto err_reg_dev; | 1234 | goto err_reg_dev; |
1233 | 1235 | ||
1236 | t = netdev_priv(sitn->fb_tunnel_dev); | ||
1237 | |||
1238 | strcpy(t->parms.name, sitn->fb_tunnel_dev->name); | ||
1234 | return 0; | 1239 | return 0; |
1235 | 1240 | ||
1236 | err_reg_dev: | 1241 | err_reg_dev: |