From owner-freebsd-stable@FreeBSD.ORG Wed Aug 16 20:59:34 2006 Return-Path: X-Original-To: freebsd-stable@freebsd.org Delivered-To: freebsd-stable@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C69C116A4DD; Wed, 16 Aug 2006 20:59:34 +0000 (UTC) (envelope-from brooks@lor.one-eyed-alien.net) Received: from sccmmhc92.asp.att.net (sccmmhc92.asp.att.net [204.127.203.212]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1EE4443D46; Wed, 16 Aug 2006 20:59:34 +0000 (GMT) (envelope-from brooks@lor.one-eyed-alien.net) Received: from lor.one-eyed-alien.net ([12.207.12.9]) by sccmmhc92.asp.att.net (sccmmhc92) with ESMTP id <20060816205928m92002rqdie>; Wed, 16 Aug 2006 20:59:33 +0000 Received: from lor.one-eyed-alien.net (localhost [127.0.0.1]) by lor.one-eyed-alien.net (8.13.6/8.13.6) with ESMTP id k7GKxKDq071424; Wed, 16 Aug 2006 15:59:20 -0500 (CDT) (envelope-from brooks@lor.one-eyed-alien.net) Received: (from brooks@localhost) by lor.one-eyed-alien.net (8.13.6/8.13.6/Submit) id k7GKxDNS071401; Wed, 16 Aug 2006 15:59:13 -0500 (CDT) (envelope-from brooks) Date: Wed, 16 Aug 2006 15:59:13 -0500 From: Brooks Davis To: Andrew Thompson Message-ID: <20060816205913.GA69877@lor.one-eyed-alien.net> References: <20060815040736.2f85f090.drl@MyBSD.org.my> <9405D801-3435-419A-9541-E1A9B2CF26D2@lassitu.de> <20060816081130.GB81271@comp.chem.msu.su> <20060816145419.GB62485@lor.one-eyed-alien.net> <20060816155844.GA85503@comp.chem.msu.su> <20060816171524.GA63928@lor.one-eyed-alien.net> <20060816204927.GA73369@heff.fud.org.nz> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="pWyiEgJYm5f9v55/" Content-Disposition: inline In-Reply-To: <20060816204927.GA73369@heff.fud.org.nz> User-Agent: Mutt/1.5.11 Cc: Yar Tikhiy , freebsd-stable@freebsd.org, Stefan Bethke , drl@MyBSD.org.my Subject: Re: Default route (IPv4) demolished by destroying clone (gif/gre) interface X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Aug 2006 20:59:35 -0000 --pWyiEgJYm5f9v55/ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Aug 17, 2006 at 08:49:27AM +1200, Andrew Thompson wrote: > On Wed, Aug 16, 2006 at 12:15:25PM -0500, Brooks Davis wrote: > > On Wed, Aug 16, 2006 at 07:58:44PM +0400, Yar Tikhiy wrote: > > > On Wed, Aug 16, 2006 at 09:54:19AM -0500, Brooks Davis wrote: > > > > On Wed, Aug 16, 2006 at 10:23:13AM +0200, Stefan Bethke wrote: > > > > >=20 > > > > > Ouch. Don't ppp(8), OpenVPN etc. destroy the tun interface they'r= e =20 > > > > > using when they exit? Flushing all routes then would be rather = =20 > > > > > harmful. I'm glad I haven't updated to a newer -stable yet then = :-) > > > >=20 > > > > In general, no since tun interfaces can not be destroyed. > > >=20 > > > Did you mean "in particular"? :-) > > >=20 > > > The problem can be triggered by destroying any interface that can > > > be destroyed. Just imagine getting rid of a defunct gif tunnel on > > > a remote router, or removing an unused vlan, and totally losing > > > connectivity to the router due to its default route having been > > > flushed. The scenario still can be quite unpleasant. I'd rather > > > change the default for $removable_route_flush to NO and let the > > > kernel choose which routes should be flushed upon the physical > > > ejection or software destruction of an interface. Note that this > > > doesn't include static_routes_${ifn}, which are handled separately > > > by pccard_ether_stop(). > >=20 > > Agreed. That code shouldn't be on by default. I've disabled in it HEAD > > and will MFC in a few days. As another poster said, I'm not even sure > > it should exist as an option. >=20 > Thanks for fixing this up, it certainly was odd to be flushing routes in > userland. I have one more bug report from the ifnet/devd change to look > at where renamed interfaces give some sort of an error. It is a rather weird bit of code. It deletes all IPv4 routes on exit. I suspect it's a hack left over from before interface removal really worked. I may just delete the code in HEAD after the MFC. I think we could also remove the arp flush or move it into "netif stop" and narrow it with the -i option. -- Brooks --pWyiEgJYm5f9v55/ Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (FreeBSD) iD8DBQFE44cgXY6L6fI4GtQRAmJgAJ91mw5HrhWgQSzQsJLAfyfg3Z0oFwCdGzX+ XpSFwy4V/rjeZ/fOPqTc24U= =7aFY -----END PGP SIGNATURE----- --pWyiEgJYm5f9v55/--