Date: Fri, 16 Nov 2001 17:29:23 -0800 (PST) From: Julian Elischer <julian@elischer.org> To: Garrett Wollman <wollman@khavrinen.lcs.mit.edu> Cc: Peter Wemm <peter@wemm.org>, Julian Elischer <julian@vicor-nb.com>, current@FreeBSD.ORG, net@FreeBSD.ORG, wollman@FreeBSD.ORG Subject: Re: re-entrancy and the IP stack. Message-ID: <Pine.BSF.4.21.0111161725360.6632-100000@InterJet.elischer.org> In-Reply-To: <200111170108.fAH18d144195@khavrinen.lcs.mit.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 16 Nov 2001, Garrett Wollman wrote: > <<On Fri, 16 Nov 2001 16:13:41 -0800 (PST), Julian Elischer <julian@elischer.org> said: > > > (and anyhow Garrett got rid of the 'static' uses > > of mbufs, not 'travelling' 'per packet' uses..) > > Only because I did not have the time or stomach then to introduce > `struct packet' everywhere. All of the queueing and metadata crap > should be pulled out of mbufs and put into a higher-level object. > It's OK if the higher-level object HAS_A(mbuf), but not IS_A(mbuf). In netgraph, (in -current) we have a packet structure that has links for A) mbufs for the data, and B) optinal metadata. I'd be happy with a HAS_A(mbuf), as long as I have SOMEWHERE, to stash the metadata. > > This is A Lot Of Work, but would seriously clean up the code in a > number of areas. I'm not afraid of the work, but there needs to be a roadmap first. > > As a general rule, though, reentrancy was not a particular concern of > the original design -- that's why there are queues and soft ISRs all > over the place -- because you would blow the kernel stack long before > that became an issue. True, but times change and we have to cross that bridge soon.. > > -GAWollman > > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0111161725360.6632-100000>