|
@@ -3321,9 +3321,7 @@ static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp)
|
|
|
|
|
|
switch (event) {
|
|
|
case RTM_NEWADDR:
|
|
|
- dst_hold(&ifp->rt->u.dst);
|
|
|
- if (ip6_ins_rt(ifp->rt, NULL, NULL, NULL))
|
|
|
- dst_release(&ifp->rt->u.dst);
|
|
|
+ ip6_ins_rt(ifp->rt, NULL, NULL, NULL);
|
|
|
if (ifp->idev->cnf.forwarding)
|
|
|
addrconf_join_anycast(ifp);
|
|
|
break;
|
|
@@ -3334,8 +3332,6 @@ static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp)
|
|
|
dst_hold(&ifp->rt->u.dst);
|
|
|
if (ip6_del_rt(ifp->rt, NULL, NULL, NULL))
|
|
|
dst_free(&ifp->rt->u.dst);
|
|
|
- else
|
|
|
- dst_release(&ifp->rt->u.dst);
|
|
|
break;
|
|
|
}
|
|
|
}
|