cvs commit: src/sys/conf options src/sys/netinet ip_output.c
silby at silby.com
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