From: Eric Dumazet Date: Thu, 13 Oct 2011 07:56:41 +0000 (+0000) Subject: igb: fix skb truesize underestimation X-Git-Tag: v2.6.39-400.9.0~423^2~19^2~11^2~257 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=18c9e518db0a975de4e0370b742a93e0789ebfd9;p=users%2Fjedix%2Flinux-maple.git igb: fix skb truesize underestimation e1000 allocates half a page per skb fragment. We must account PAGE_SIZE/2 increments on skb->truesize, not the actual frag length. (cherry picked from commit 95b9c1dfb7b929f5f3b203ed95c28bdfd069d122) Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller Signed-off-by: Joe Jin --- diff --git a/drivers/net/igb/igb_main.c b/drivers/net/igb/igb_main.c index 8bfabe9a88f1c..72ff694b017b9 100644 --- a/drivers/net/igb/igb_main.c +++ b/drivers/net/igb/igb_main.c @@ -5951,7 +5951,7 @@ static bool igb_clean_rx_irq(struct igb_q_vector *q_vector, int budget) skb->len += length; skb->data_len += length; - skb->truesize += length; + skb->truesize += PAGE_SIZE / 2; if ((page_count(buffer_info->page) != 1) || (page_to_nid(buffer_info->page) != current_node))