TCP/IP mbuf element size

Charles Steaderman charlies at poliac.com
Thu Feb 13 00:53:16 UTC 2003


Hi all. I am working on an ethernet driver on an ARM CPU. When I am 
requested to transmit data out of the ethernet port, I am given a chain 
of mbufs. The chain is often times made up of many small buffers. For 
example, when replying to a 1500 byte ping request, I receive 2 mbuf 
chains. The first chain contains 3 elements of 14, 80, and 1420 bytes 
respectfully. The second chain contains 3 elements of 34, 20, and 8 
bytes respectfully. Unfortunately, the DMA controller on our chip does 
not deal well with small buffers, and causes underflow errors in our 
ethernet controller. Is there a way to tell the TCP/IP stack to give me 
fewer, but larger, mbufs? I really don't want to have to copy the data 
from the mbufs into a buffer prior to initiating a transfer.

Thanks,
- Charlie

-- 
Charlie Steaderman
charlies at poliac.com
VP Engineering
Poliac Research Corporation
Phone: 952.707.6245
Cel: 612.242.6364





More information about the users mailing list