sk_buff chaining -Reply

Mike Phillips (phillim@amtrak.com)
Mon, 22 Nov 1999 06:52:03 -0500


> MTU of 65280 bytes. The major problem is posting buffers to the adapter for
> recieving packets. Under SOLARIS, for example, I can post 4k buffers to the
> adapter. The driver can then chain these 4k buffers together if the packet
> recieved is > 4K. With LINUX, however, I have to post 64K buffers to the
> adapter since there is no mechanism to chain sk_buffs together. Depending

Definately not, you can set a collection of buffers of any size you want and point the device at this. Now, if the packet is greater thatn the packet size you will have to combine them to create a single sk_buff to transfer up to the higher network layers. Check out the rx in the olympic driver, we use variable buffer sizes which can be tuned on the fly to accomodate the 18K maximum token ring packet size. It is faster to use single buffers as we simply swap the buffers around. But if we are using, say, 4096 byte buffer and a 16K frame is received the nic spreads the packet over several buffers and we simple re-assemble the packet.

Mike

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/