]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
netdevsim: Mark NAPI ID on skb in nsim_rcv
authorJoe Damato <jdamato@fastly.com>
Thu, 24 Apr 2025 00:27:31 +0000 (00:27 +0000)
committerJakub Kicinski <kuba@kernel.org>
Fri, 25 Apr 2025 01:30:01 +0000 (18:30 -0700)
Previously, nsim_rcv was not marking the NAPI ID on the skb, leading to
applications seeing a napi ID of 0 when using SO_INCOMING_NAPI_ID.

To add to the userland confusion, netlink appears to correctly report
the NAPI IDs for netdevsim queues but the resulting file descriptor from
a call to accept() was reporting a NAPI ID of 0.

Signed-off-by: Joe Damato <jdamato@fastly.com>
Link: https://patch.msgid.link/20250424002746.16891-2-jdamato@fastly.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/netdevsim/netdev.c

index 0e0321a7ddd7109cd36f5955c084e1fd8c58685c..2aa999345fe1293628ee8e370b563497d4795296 100644 (file)
@@ -29,6 +29,7 @@
 #include <net/pkt_cls.h>
 #include <net/rtnetlink.h>
 #include <net/udp_tunnel.h>
+#include <net/busy_poll.h>
 
 #include "netdevsim.h"
 
@@ -357,6 +358,7 @@ static int nsim_rcv(struct nsim_rq *rq, int budget)
                        break;
 
                skb = skb_dequeue(&rq->skb_queue);
+               skb_mark_napi_id(skb, &rq->napi);
                netif_receive_skb(skb);
        }