diff options
author | Jakub Kicinski <kuba@kernel.org> | 2021-12-24 01:09:58 +0100 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2021-12-24 01:09:58 +0100 |
commit | 8b3f91332291fa280a56215f5189baca185998f5 (patch) | |
tree | b89f58972c80ffacf57c4c9cedb5b4b03473c5be /drivers/net/veth.c | |
parent | Merge tag 'wireless-drivers-next-2021-12-23' of git://git.kernel.org/pub/scm/... (diff) | |
parent | net: stmmac: dwmac-visconti: Fix value of ETHER_CLK_SEL_FREQ_SEL_2P5M (diff) | |
download | linux-8b3f91332291fa280a56215f5189baca185998f5.tar.xz linux-8b3f91332291fa280a56215f5189baca185998f5.zip |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
include/net/sock.h
commit 8f905c0e7354 ("inet: fully convert sk->sk_rx_dst to RCU rules")
commit 43f51df41729 ("net: move early demux fields close to sk_refcnt")
https://lore.kernel.org/all/20211222141641.0caa0ab3@canb.auug.org.au/
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/veth.c')
-rw-r--r-- | drivers/net/veth.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/net/veth.c b/drivers/net/veth.c index 38f6da24f460..a4be530b3a1b 100644 --- a/drivers/net/veth.c +++ b/drivers/net/veth.c @@ -872,8 +872,12 @@ static int veth_xdp_rcv(struct veth_rq *rq, int budget, stats->xdp_bytes += skb->len; skb = veth_xdp_rcv_skb(rq, skb, bq, stats); - if (skb) - napi_gro_receive(&rq->xdp_napi, skb); + if (skb) { + if (skb_shared(skb) || skb_unclone(skb, GFP_ATOMIC)) + netif_receive_skb(skb); + else + napi_gro_receive(&rq->xdp_napi, skb); + } } done++; } |