net: move skb_mark_napi_id() into core networking stack
We would like to automatically provide busy polling support to all NAPI drivers, without them having to implement anything. skb_mark_napi_id() can be called from napi_gro_receive() and napi_get_frags(). Few drivers are still calling skb_mark_napi_id() because they use netif_receive_skb(). They should eventually call napi_gro_receive() instead. I will leave this to drivers maintainers. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
このコミットが含まれているのは:
@@ -1488,7 +1488,6 @@ myri10ge_rx_done(struct myri10ge_slice_state *ss, int len, __wsum csum)
|
||||
}
|
||||
myri10ge_vlan_rx(mgp->dev, va, skb);
|
||||
skb_record_rx_queue(skb, ss - &mgp->ss[0]);
|
||||
skb_mark_napi_id(skb, &ss->napi);
|
||||
|
||||
if (polling) {
|
||||
int hlen;
|
||||
@@ -1506,6 +1505,7 @@ myri10ge_rx_done(struct myri10ge_slice_state *ss, int len, __wsum csum)
|
||||
skb->data_len -= hlen;
|
||||
skb->tail += hlen;
|
||||
skb->protocol = eth_type_trans(skb, dev);
|
||||
skb_mark_napi_id(skb, &ss->napi);
|
||||
netif_receive_skb(skb);
|
||||
}
|
||||
else
|
||||
|
新しいイシューから参照
ユーザーをブロックする