On Wed, Apr 3, 2013 at 12:03 PM, Markus Stockhausen <[email protected]> wrote: > going through hard lessons to understand the SKBs maybe I finally > found the reason for the unnecessary memcpy commands. Even with > newest 3.9-rc5 kernel the problem persists. IPoIB creates only > fragmented SKBs without any single bit in the normal data part. Some > debug messages during GRO handling showed > > skb->len = 1988 (total data) > skb->data_len = 1988 (paged data) > skb_headlen(skb) = 0 (non paged data) > > inet_gro_receive() requires the IP header inside the SKB. So it > pulls missing data from fragments. This process requires extra > memcpy operations.
Thanks for the really detailed investigation! This makes sense. I'll send out a proposed patch for you to test in a moment. Thanks! Roland -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
