* [071/205] IPv6: keep route for tentative address
[not found] <20100730175238.GA3924@kroah.com>
@ 2010-07-30 17:51 ` Greg KH
2010-07-30 17:51 ` [072/205] IPv6: only notify protocols if address is completely gone Greg KH
1 sibling, 0 replies; 2+ messages in thread
From: Greg KH @ 2010-07-30 17:51 UTC (permalink / raw)
To: linux-kernel, stable, Emil S Tantilov
Cc: stable-review, torvalds, akpm, alan, NetDev, Greg KH,
David S. Miller, emil.s.tantilov, Stephen Hemminger
2.6.34-stable review patch. If anyone has any objections, please let us know.
------------------
From: Stephen Hemminger <shemminger@vyatta.com>
(cherry picked from commit 93fa159abe50d3c55c7f83622d3f5c09b6e06f4b)
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 <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
net/ipv6/addrconf.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
@@ -4047,7 +4047,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;
}
^ permalink raw reply [flat|nested] 2+ messages in thread
* [072/205] IPv6: only notify protocols if address is completely gone
[not found] <20100730175238.GA3924@kroah.com>
2010-07-30 17:51 ` [071/205] IPv6: keep route for tentative address Greg KH
@ 2010-07-30 17:51 ` Greg KH
1 sibling, 0 replies; 2+ messages in thread
From: Greg KH @ 2010-07-30 17:51 UTC (permalink / raw)
To: linux-kernel, stable, Emil S Tantilov, David S. Miller, Greg KH
Cc: stable-review, torvalds, akpm, alan, NetDev, emil.s.tantilov,
Stephen Hemminger
2.6.34-stable review patch. If anyone has any objections, please let us know.
------------------
From: Stephen Hemminger <shemminger@vyatta.com>
(cherry picked from commit 8595805aafc8b077e01804c9a3668e9aa3510e89)
The notifier for address down should only be called if address is completely
gone, not just being marked as tentative on link transition. The code
in net-next would case bonding/sctp/s390 to see address disappear on link
down, but they would never see it reappear on link up.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
net/ipv6/addrconf.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
@@ -2729,7 +2729,9 @@ static int addrconf_ifdown(struct net_de
write_unlock_bh(&idev->lock);
__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);
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-07-30 17:55 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20100730175238.GA3924@kroah.com>
2010-07-30 17:51 ` [071/205] IPv6: keep route for tentative address Greg KH
2010-07-30 17:51 ` [072/205] IPv6: only notify protocols if address is completely gone Greg KH
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).