diff options
Diffstat (limited to 'net/ipv6')
| -rw-r--r-- | net/ipv6/addrconf.c | 4 | ||||
| -rw-r--r-- | net/ipv6/exthdrs.c | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index 147588f4c7c0..ff61a5cdb0b3 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c | |||
| @@ -749,12 +749,12 @@ static void ipv6_del_addr(struct inet6_ifaddr *ifp) | |||
| 749 | } | 749 | } |
| 750 | write_unlock_bh(&idev->lock); | 750 | write_unlock_bh(&idev->lock); |
| 751 | 751 | ||
| 752 | addrconf_del_timer(ifp); | ||
| 753 | |||
| 752 | ipv6_ifa_notify(RTM_DELADDR, ifp); | 754 | ipv6_ifa_notify(RTM_DELADDR, ifp); |
| 753 | 755 | ||
| 754 | atomic_notifier_call_chain(&inet6addr_chain, NETDEV_DOWN, ifp); | 756 | atomic_notifier_call_chain(&inet6addr_chain, NETDEV_DOWN, ifp); |
| 755 | 757 | ||
| 756 | addrconf_del_timer(ifp); | ||
| 757 | |||
| 758 | /* | 758 | /* |
| 759 | * Purge or update corresponding prefix | 759 | * Purge or update corresponding prefix |
| 760 | * | 760 | * |
diff --git a/net/ipv6/exthdrs.c b/net/ipv6/exthdrs.c index 3cd1c993d52b..dcf94fdfb863 100644 --- a/net/ipv6/exthdrs.c +++ b/net/ipv6/exthdrs.c | |||
| @@ -445,7 +445,7 @@ looped_back: | |||
| 445 | kfree_skb(skb); | 445 | kfree_skb(skb); |
| 446 | return -1; | 446 | return -1; |
| 447 | } | 447 | } |
| 448 | if (!ipv6_chk_home_addr(&init_net, addr)) { | 448 | if (!ipv6_chk_home_addr(dev_net(skb->dst->dev), addr)) { |
| 449 | IP6_INC_STATS_BH(ip6_dst_idev(skb->dst), | 449 | IP6_INC_STATS_BH(ip6_dst_idev(skb->dst), |
| 450 | IPSTATS_MIB_INADDRERRORS); | 450 | IPSTATS_MIB_INADDRERRORS); |
| 451 | kfree_skb(skb); | 451 | kfree_skb(skb); |
