cvs commit: src/sys/conf options src/sys/netinet ip_output.c

Mike Silbersack silby at
Wed Mar 26 05:23:40 PST 2003

On Tue, 25 Mar 2003, Doug Ambrisko wrote:

> | Hm, I suppose it would be pretty easy to tack together some statistics
> | code which tracked how long the chains being sent to the drivers are.
> I did that in my testing, but just used a printf for debugging.
> | I've been pondering where the tradeoff between avoiding memory copies and
> | doing excessive scatter / gather DMA lies.  Perhaps we should be
> | defragmenting any chain over a certain amount of length, no matter the
> | limit imposed by the card.  This sounds like a Terry question. :)
> Maybe an extent count could be used that said how long the chain is.
> As Sam mentioned having little things scattered around is not good thing.
> Memory and CPU can be a lot faster then the I/O bus.
> Doug A.

I think we could inexpensively walk the mbuf chain at the end of ip_output
and do the counting there.  Realistically, the same chain will be rewalked
very soon afterword when the network card tries to set up the DMA
transfers / etc.

Mike "Silby" Silbersack

More information about the cvs-src mailing list