public inbox for netdev@vger.kernel.org
 help / color / mirror / Atom feed
From: Stephen Hemminger <shemminger@vyatta.com>
To: Emil S Tantilov <emils.tantilov@gmail.com>
Cc: "David S. Miller" <davem@davemloft.net>,
	NetDev <netdev@vger.kernel.org>,
	"Tantilov, Emil S" <emil.s.tantilov@intel.com>,
	Greg KH <greg@kroah.com>,
	stable@kernel.org
Subject: [PATCH 1/2] IPv6: keep route for tentative address
Date: Mon, 24 May 2010 11:31:18 -0700	[thread overview]
Message-ID: <20100524113118.47cc9852@nehalam> (raw)
In-Reply-To: <AANLkTin3CfATS0-ePL5WUSiuq0seRCQgM6xc-YwxpPEy@mail.gmail.com>

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>
(cherry picked from commit 93fa159abe50d3c55c7f83622d3f5c09b6e06f4b)
---
Patch is for 2.6.34-stable (problem doesn't exist in earlier kernel)

 net/ipv6/addrconf.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 413054f..12e9558 100644
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
@@ -4047,7 +4047,8 @@ static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp)
 			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;
 	}
-- 
1.7.0.4


  reply	other threads:[~2010-05-24 18:33 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-12 15:41 [PATCH 0/4] IPv6 addrconf related fixes Stephen Hemminger
2010-04-12 15:41 ` [PATCH 1/4] IPv6: keep route for tentative address Stephen Hemminger
2010-04-12 20:17   ` Tantilov, Emil S
2010-05-21 22:21     ` Emil S Tantilov
2010-05-24 18:31       ` Stephen Hemminger [this message]
2010-05-24 18:33         ` [PATCH 2/2] IPv6: only notify protocols if address is completely gone Stephen Hemminger
2010-07-28  0:25           ` Patch "IPv6: only notify protocols if address is completely gone" has been added to the 2.6.34-stable tree gregkh
2010-05-24 18:47         ` [PATCH 1/2] IPv6: keep route for tentative address Greg KH
2010-05-24 20:52           ` David Miller
2010-07-28  0:24         ` Patch "IPv6: keep route for tentative address" has been added to the 2.6.34-stable tree gregkh
2010-04-12 15:41 ` [PATCH 2/4] IPv6: keep tentative addresses in hash table Stephen Hemminger
2010-04-12 15:41 ` [PATCH 3/4] ipv6: additional ref count for hash list unnecessary Stephen Hemminger
2010-04-12 15:41 ` [PATCH 4/4] IPv6: only notify protocols if address is compeletely gone Stephen Hemminger
2010-04-13  9:29 ` [PATCH 0/4] IPv6 addrconf related fixes David Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100524113118.47cc9852@nehalam \
    --to=shemminger@vyatta.com \
    --cc=davem@davemloft.net \
    --cc=emil.s.tantilov@intel.com \
    --cc=emils.tantilov@gmail.com \
    --cc=greg@kroah.com \
    --cc=netdev@vger.kernel.org \
    --cc=stable@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox