Skip site navigation (1)Skip section navigation (2)
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-net" 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>