bouyer antioche.eu.org wrote:
> > - There are quite few packets which require
padding.
>
> It depends on the workload I guess.
Could you take any statistics on real machiens?
I wonder what type of application will require such packets
since on my macppc (mostly client) there are only less than
0.01% short packets on TX.
> > - 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)
> for this.
Well, my point is how we can figure out which way is more
efficient
and readable.
> > - 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
> > structures)
>
> It's only 64 bytes, and only one time (you don't need
one per interface)
But it also requires bus_dmamap_create() and
bus_dmamap_load() calls
which may consume some more resources and they are never
freed.
---
Izumi Tsutsui
|