Subject: Re: m_defrag() addition
To: Jaromir Dolecek <jdolecek@netbsd.org>
From: Jachym Holecek <freza@liberouter.org>
List: tech-kern
Date: 02/20/2005 19:15:56
Hi,

> I'd like to add a routine for coalescing mbuf chain into fewer
> segments. Primary consuments would be network drivers, which would
> use the routine if the original mbuf chain is too fragmented to be
> loadable into their DMA rings. Bunch of drivers already use custom
> code for this, and it would be good to centralize the code.
> Basically _any_ network driver using DMA to push trasmit packets
> should be using this.

Great, this would also be useful for devices that have alignment
constraints on DMA segments -- you need to contig-copy "bad" packets
too. One might argue such devices are just broken (imagine they ignore
byte enable signals for example), but they have to be dealt with... ;-)

	Regards,
		-- Jachym Holecek