Commit:     2c12a74cc4aeaebc378aa40ee11c7761a8ed05e0
Parent:     3a765aa528401c7aec2208f7ed1276b232b24c57
Author:     Michal Wrobel <[EMAIL PROTECTED]>
AuthorDate: Mon Feb 26 15:36:10 2007 -0800
Committer:  David S. Miller <[EMAIL PROTECTED]>
CommitDate: Wed Feb 28 09:41:58 2007 -0800

    [IPV6]: anycast refcnt fix
    This patch fixes a bug in Linux IPv6 stack which caused anycast address
    to be added to a device prior DAD has been completed. This led to
    incorrect reference count which resulted in infinite wait for
    unregister_netdevice completion on interface removal.
    Signed-off-by: Michal Wrobel <[EMAIL PROTECTED]>
    Signed-off-by: David S. Miller <[EMAIL PROTECTED]>
 net/ipv6/addrconf.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index f6ac65d..e16f1bb 100644
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
@@ -400,6 +400,8 @@ static void dev_forward_change(struct inet6_dev *idev)
                        ipv6_dev_mc_dec(dev, &addr);
        for (ifa=idev->addr_list; ifa; ifa=ifa->if_next) {
+               if (ifa->flags&IFA_F_TENTATIVE)
+                       continue;
                if (idev->cnf.forwarding)
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at

Reply via email to