From: Eric Dumazet Date: Tue, 12 May 2026 04:20:19 +0000 (+0000) Subject: ipvlan: use netif_receive_skb() in ipvlan_process_multicast() X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d0273dbe8be1640e597552f81faf1d6c9997d3e3;p=thirdparty%2Flinux.git ipvlan: use netif_receive_skb() in ipvlan_process_multicast() ipvlan_process_multicast() runs from process context, there is no risk of stack overflow if we call netif_receive_skb() instead of netif_rx(). This avoids some overhead adding/removing skbs to/from a per-cpu backlog and raising/processing NET_RX softirqs. Signed-off-by: Eric Dumazet Link: https://patch.msgid.link/20260512042019.3300975-1-edumazet@google.com Signed-off-by: Jakub Kicinski --- diff --git a/drivers/net/ipvlan/ipvlan_core.c b/drivers/net/ipvlan/ipvlan_core.c index 1be8620ad3971..7ad12dc7845c8 100644 --- a/drivers/net/ipvlan/ipvlan_core.c +++ b/drivers/net/ipvlan/ipvlan_core.c @@ -286,7 +286,7 @@ void ipvlan_process_multicast(struct work_struct *work) if (tx_pkt) ret = dev_forward_skb(ipvlan->dev, nskb); else - ret = netif_rx(nskb); + ret = netif_receive_skb(nskb); } ipvlan_count_rx(ipvlan, len, ret == NET_RX_SUCCESS, true); local_bh_enable();