-----Original Message----- From: kernelnewbies-bounces@kernelnewbies.org [mailto:kernelnewbies-bounces@kernelnewbies.org] On Behalf Of Pranay Srivastava Sent: Thursday, May 01, 2014 7:10 AM To: Valdis.Kletnieks@vt.edu Cc: kernelnewbies Subject: Re: Regarding skb and skb_frags
On Thu, May 1, 2014 at 7:29 PM, <Valdis.Kletnieks@vt.edu> wrote:
On Thu, 01 May 2014 16:12:43 +0530, Pranay Srivastava said:
My question is that an Ethernet frame won't be bigger than 1500 bytes [correct?]
Incorrect. 10G and faster ethernet support jumbograms. We run our HPC 10G network with an MTU of 9000 (which is 2 pages and a bit more).
Ok. So in any case the driver won't poke past ethernet header to look for the size [Correct?]. So it means only when MTU is bigger than page size would there be a possibility of skb_frags [Correct?].
I'm not sure what kernel version you are looking at, but when I do a search for skb_frags in the latest kernel sources at http://lxr.linux.no, I don't see any variables or structure members named skb_frags, though it shows up in comments in one driver. That being said, I believe skb fragments are also used to implement scatter/gather lists of packet payload data, even in packets less than or equal to the usual 1500 bytes. On the systems I work with, I've seen this happening in packets originating from the target system, i.e. egress path of local traffic. Jeff Haran