netdevsim: add NAPI support
authorDavid Wei <dw@davidwei.uk>
Tue, 7 May 2024 16:32:27 +0000 (09:32 -0700)
committerJakub Kicinski <kuba@kernel.org>
Thu, 9 May 2024 01:59:47 +0000 (18:59 -0700)
commit3762ec05a9fbda16aaaa2568df679ab8ad13f38d
treea5e940eedab117a3a8e6b4ba45832e3ff0a756c8
parent1d0dc857b5d8711ff0f037bea9a0c13049c1763c
netdevsim: add NAPI support

Add NAPI support to netdevim, similar to veth.

* Add a nsim_rq rx queue structure to hold a NAPI instance and a skb
  queue.
* During xmit, store the skb in the peer skb queue and schedule NAPI.
* During napi_poll(), drain the skb queue and pass up the stack.
* Add assoc between rxq and NAPI instance using netif_queue_set_napi().

Signed-off-by: David Wei <dw@davidwei.uk>
Link: https://lore.kernel.org/r/20240507163228.2066817-2-dw@davidwei.uk
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/netdevsim/netdev.c
drivers/net/netdevsim/netdevsim.h