mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-15 08:14:15 +08:00
net: hns: fix skb->truesize underestimation
skb->truesize is not meant to be tracking amount of used bytes in a skb,
but amount of reserved/consumed bytes in memory.
For instance, if we use a single byte in last page fragment, we have to
account the full size of the fragment.
So skb_add_rx_frag needs to calculate the length of the entire buffer into
turesize.
Fixes: 9cbe9fd521
("net: hns: optimize XGE capability by reducing cpu usage")
Signed-off-by: Huazhong tan <tanhuazhong@huawei.com>
Signed-off-by: Salil Mehta <salil.mehta@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
ac4a5b52f5
commit
b1ccd4c0ab
@ -531,7 +531,7 @@ static void hns_nic_reuse_page(struct sk_buff *skb, int i,
|
||||
}
|
||||
|
||||
skb_add_rx_frag(skb, i, desc_cb->priv, desc_cb->page_offset + pull_len,
|
||||
size - pull_len, truesize - pull_len);
|
||||
size - pull_len, truesize);
|
||||
|
||||
/* avoid re-using remote pages,flag default unreuse */
|
||||
if (unlikely(page_to_nid(desc_cb->priv) != numa_node_id()))
|
||||
|
Loading…
Reference in New Issue
Block a user