Regarding this commit: 879c7220e828af8bd82ea9d774c7e45c46b976e4
net: pktgen: Observe needed_headroom of the device Allocate enough space so as not to force the outgoing net device to do skb_realloc_headroom(). Signed-off-by: Bogdan Hamciuc <bogdan.hamc...@freescale.com> Signed-off-by: David S. Miller <da...@davemloft.net> I think it may be incorrect. It seems that pkt_overhead is meant to be the data-portion of the skb, not lower-level padding? For instance: int pkt_overhead; /* overhead for MPLS, VLANs, IPSEC etc */ ... /* Eth + IPh + UDPh + mpls */ datalen = pkt_dev->cur_pkt_size - 14 - 20 - 8 - pkt_dev->pkt_overhead; So, maybe we need to add that LL_RESERVED_SPACE to the size when allocating the skb in pktgen_alloc_skb and leave it out of pkt_overhead? And for that matter, what is that '+ 64 +' for in the size calculation? Looks a lot like some fudge factor from long ago? Thanks, Ben -- Ben Greear <gree...@candelatech.com> Candela Technologies Inc http://www.candelatech.com