NETIF_F_SG not taking effect
From: Viswanath D <hidden>
Date: 2013-05-02 04:19:57
Hi, I need help in NETIF_F_UFO to work. After reading several materials, I have come to understand that UFO is dependent on NETIF_F_SG, which in turn is dependent on NETIF_F_HW_CSUM and when I turn on all these flags in ndev->features during probe, I should be seeing fragments in skb in xmit function. Also, if the packets are UDP/TCP, then the first fragment would the header (34/66 bytes) and the rest would be the data pointer as given by application (iperf in this case). But, when I print "skb_shinfo(skb)->nr_frags" in my xmit function, I always find it zero. Also all the packet content (header + data) is completely contained within skb->data. I also removed UFO (keeping just SG and HW_CSUM) and the behavior remains the same. But interestingly the checksum is not computed by the stack. I confirmed it by dumping the UDP/TCP headers in xmit and wireshark on receive side also reflects this. These observations are leading me to think NETIF_F_SG flag is being ignored by the stack for some reason. Are there any compilation flag which can be enabled to see what is going wrong. Could I please get some pointers on how to go about debugging this problem. The kernel version I am using is 2.6.37. Regards Viswa