Date: Tue, 30 Mar 2004 15:25:17 -0800 From: Brooks Davis <brooks@one-eyed-alien.net> To: Ruslan Ermilov <ru@FreeBSD.org> Cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/net if_gif.c Message-ID: <20040330232517.GA19416@Odin.AC.HMC.Edu> In-Reply-To: <20040330220349.GA97921@ip.net.ua> References: <200403221424.i2MEOQYK057524@repoman.freebsd.org> <20040330220349.GA97921@ip.net.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
--zhXaljGHf11kAtnf Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Mar 31, 2004 at 01:03:49AM +0300, Ruslan Ermilov wrote: > On Mon, Mar 22, 2004 at 06:24:26AM -0800, Robert Watson wrote: > > rwatson 2004/03/22 06:24:26 PST > >=20 > > FreeBSD src repository > >=20 > > Modified files: > > sys/net if_gif.c=20 > > Log: > > Move "called", a static function variable used to detect recursive > > processing with gif interfaces, to a global variable named "gif_calle= d". > > Add an annotation that this approach will not work with a reentrant > > network stack, and that we should instead use packet tags to detect > > excessive recursive processing. > > =20 > > Revision Changes Path > > 1.42 +11 -4 src/sys/net/if_gif.c > >=20 > Implemented this in the attached patch. Note when testing: setting > net.link.gif.max_nesting too high (>20 on my system) and triggering > the recursion causes the kernel stack exhaustion. Why not just do what OpenBSD does and do actual loop detection? This gets rid of the nesting count hack which isn't really what you want to measure anyway. http://www.openbsd.org/cgi-bin/cvsweb/src/sys/net/if_gif.c.diff?r1=3D1.18&r= 2=3D1.19 -- Brooks --zhXaljGHf11kAtnf Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQFAagHdXY6L6fI4GtQRAiz2AJ4+tdjiLA2q3CErWUAHO7NcgvMqTgCgmGGl WcZLEw0Ne+5cY07b9B2cCD8= =r8Ad -----END PGP SIGNATURE----- --zhXaljGHf11kAtnf--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040330232517.GA19416>