Re: [PATCH 1/4] IPv6: keep route for tentative address
From: Emil S Tantilov <hidden>
Date: 2010-05-21 22:21:45
On Mon, Apr 12, 2010 at 1:17 PM, Tantilov, Emil S [off-list ref] wrote:
Stephen Hemminger wrote:quoted
Recent changes preserve IPv6 address when link goes down (good). But would cause address to point to dead dst entry (bad). The simplest fix is to just not delete route if address is being held for later use. Signed-off-by: Stephen Hemminger <redacted>--- a/net/ipv6/addrconf.c 2010-04-11 12:19:37.938082190 -0700 +++ b/net/ipv6/addrconf.c 2010-04-11 12:25:05.349309074 -0700@@ -4046,7 +4046,8 @@ static void __ipv6_ifa_notify(int event,addrconf_leave_anycast(ifp); addrconf_leave_solict(ifp->idev, &ifp->addr); dst_hold(&ifp->rt->u.dst); - if (ip6_del_rt(ifp->rt)) + + if (ifp->dead && ip6_del_rt(ifp->rt)) dst_free(&ifp->rt->u.dst); break; }Stephen, With these series of patches (1-4) applied I am no longer seeing the hangs and warnings associated with ipv6. I ran few rounds of tests with resetting the interface and loading/unloading modules.
Looks like these patches did not make it into net-2.6 and the issue can be seen in the latest stable 2.6.34. Any chance that the patches can be pushed to 2.6.34-stable? Thanks, Emil