diff options
author | David S. Miller <davem@davemloft.net> | 2010-12-17 15:27:22 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-12-17 15:27:22 -0500 |
commit | b4aa9e05a61b845541fa6f5b1d246976922601f0 (patch) | |
tree | ca94478c3df281ab76a3399f5ba6341ade3f5791 /net/ipv6/addrconf.c | |
parent | 1dc0f3c54ce1df957f99c17b145488fd03eb1a59 (diff) | |
parent | 4b8fe66300acb2fba8b16d62606e0d30204022fc (diff) |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts:
drivers/net/bnx2x/bnx2x.h
drivers/net/wireless/iwlwifi/iwl-1000.c
drivers/net/wireless/iwlwifi/iwl-6000.c
drivers/net/wireless/iwlwifi/iwl-core.h
drivers/vhost/vhost.c
Diffstat (limited to 'net/ipv6/addrconf.c')
-rw-r--r-- | net/ipv6/addrconf.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index 1023ad0d2b15..99d1888af363 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c | |||
@@ -2669,7 +2669,9 @@ static int addrconf_ifdown(struct net_device *dev, int how) | |||
2669 | 2669 | ||
2670 | ASSERT_RTNL(); | 2670 | ASSERT_RTNL(); |
2671 | 2671 | ||
2672 | rt6_ifdown(net, dev); | 2672 | /* Flush routes if device is being removed or it is not loopback */ |
2673 | if (how || !(dev->flags & IFF_LOOPBACK)) | ||
2674 | rt6_ifdown(net, dev); | ||
2673 | neigh_ifdown(&nd_tbl, dev); | 2675 | neigh_ifdown(&nd_tbl, dev); |
2674 | 2676 | ||
2675 | idev = __in6_dev_get(dev); | 2677 | idev = __in6_dev_get(dev); |
@@ -4057,11 +4059,11 @@ void inet6_ifinfo_notify(int event, struct inet6_dev *idev) | |||
4057 | kfree_skb(skb); | 4059 | kfree_skb(skb); |
4058 | goto errout; | 4060 | goto errout; |
4059 | } | 4061 | } |
4060 | rtnl_notify(skb, net, 0, RTNLGRP_IPV6_IFADDR, NULL, GFP_ATOMIC); | 4062 | rtnl_notify(skb, net, 0, RTNLGRP_IPV6_IFINFO, NULL, GFP_ATOMIC); |
4061 | return; | 4063 | return; |
4062 | errout: | 4064 | errout: |
4063 | if (err < 0) | 4065 | if (err < 0) |
4064 | rtnl_set_sk_err(net, RTNLGRP_IPV6_IFADDR, err); | 4066 | rtnl_set_sk_err(net, RTNLGRP_IPV6_IFINFO, err); |
4065 | } | 4067 | } |
4066 | 4068 | ||
4067 | static inline size_t inet6_prefix_nlmsg_size(void) | 4069 | static inline size_t inet6_prefix_nlmsg_size(void) |