On Fri, 16 Nov 2001, Garrett Wollman wrote:
> <<On Fri, 16 Nov 2001 16:13:41 -0800 (PST), Julian Elischer <[EMAIL PROTECTED]>
> > (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..
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message