Since an address in hash list has to already have a ref count, no additional ref count is needed. Signed-off-by: Stephen Hemminger --- a/net/ipv6/addrconf.c 2010-04-11 12:25:32.609002374 -0700 +++ b/net/ipv6/addrconf.c 2010-04-11 12:26:52.715246164 -0700 @@ -675,7 +675,6 @@ ipv6_add_addr(struct inet6_dev *idev, co hash = ipv6_addr_hash(addr); hlist_add_head_rcu(&ifa->addr_lst, &inet6_addr_lst[hash]); - in6_ifa_hold(ifa); spin_unlock(&addrconf_hash_lock); write_lock(&idev->lock); @@ -723,7 +722,6 @@ static void ipv6_del_addr(struct inet6_i spin_lock_bh(&addrconf_hash_lock); hlist_del_init_rcu(&ifp->addr_lst); - __in6_ifa_put(ifp); spin_unlock_bh(&addrconf_hash_lock); write_lock_bh(&idev->lock); @@ -2712,7 +2710,6 @@ static int addrconf_ifdown(struct net_de /* clear hash table */ spin_lock_bh(&addrconf_hash_lock); hlist_del_init_rcu(&ifa->addr_lst); - __in6_ifa_put(ifa); spin_unlock_bh(&addrconf_hash_lock); } -- -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html