From 215d9277f6bd444f6eacb82dbbfe461cd327827a Mon Sep 17 00:00:00 2001 From: stephen hemminger Date: Mon, 12 Apr 2010 05:41:34 +0000 Subject: [PATCH] --- yaml --- r: 194034 b: refs/heads/master c: 8595805aafc8b077e01804c9a3668e9aa3510e89 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/ipv6/addrconf.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 310f86bc22b2..9582232b8d20 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d1f84c63a465d6ba16955930519b7f68c550cae1 +refs/heads/master: 8595805aafc8b077e01804c9a3668e9aa3510e89 diff --git a/trunk/net/ipv6/addrconf.c b/trunk/net/ipv6/addrconf.c index a0175edb6589..7cba8845242f 100644 --- a/trunk/net/ipv6/addrconf.c +++ b/trunk/net/ipv6/addrconf.c @@ -2715,7 +2715,9 @@ static int addrconf_ifdown(struct net_device *dev, int how) } __ipv6_ifa_notify(RTM_DELADDR, ifa); - atomic_notifier_call_chain(&inet6addr_chain, NETDEV_DOWN, ifa); + if (ifa->dead) + atomic_notifier_call_chain(&inet6addr_chain, + NETDEV_DOWN, ifa); in6_ifa_put(ifa); write_lock_bh(&idev->lock);