Subject: Re: RTL8169 hw IP4CSUM_Tx workaround
To: Izumi Tsutsui <email@example.com>
From: Manuel Bouyer <firstname.lastname@example.org>
Date: 10/26/2006 15:49:07
On Thu, Oct 26, 2006 at 10:40:51PM +0900, Izumi Tsutsui wrote:
> Yes, I know your recent zeroed padding work.
> But after I saw the code in if_bge.c (which allocate a mbuf chain
> for padding), I wonder which way is better because:
> - There are quite few packets which require padding.
It depends on the workload I guess.
> - Setting up a dummy descriptor would make foo_start() function
> a bit complicated and its overhead affects all TX packets.
It probably depends on how the foo_start() function is structured;
it may be only a if() after filling in the descriptors to add a pointer
to the zero buf, and adjust the EOF pointer. I didn't look at re(4)
> - Such zeroed memory for padding has to be allocated by
> bus_dmamem_alloc(9) and it wastes resouces only for rare packets.
> (though most drivers have some room for padding in thier DMA descriptor
It's only 64 bytes, and only one time (you don't need one per interface)
Manuel Bouyer <email@example.com>
NetBSD: 26 ans d'experience feront toujours la difference