From 8062f37d1c99ded250b36ad90fb32bb5f77ee600 Mon Sep 17 00:00:00 2001 From: Gleb Smirnoff Date: Thu, 28 Mar 2024 14:12:39 -0700 Subject: [PATCH] vtnet: set VNET context in RX handler The context is required for NIC-level pfil(9) filtering. (cherry picked from commit 3f2b9607756d0f92ca29c844db0718b313a06634) --- sys/dev/virtio/network/if_vtnet.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/dev/virtio/network/if_vtnet.c b/sys/dev/virtio/network/if_vtnet.c index 7d6411876b3..245a6b6d735 100644 --- a/sys/dev/virtio/network/if_vtnet.c +++ b/sys/dev/virtio/network/if_vtnet.c @@ -2095,6 +2095,7 @@ vtnet_rxq_eof(struct vtnet_rxq *rxq) VTNET_RXQ_LOCK_ASSERT(rxq); + CURVNET_SET_QUIET(if_getvnet(ifp)); while (count-- > 0) { struct mbuf *m; uint32_t len, nbufs, adjsz; @@ -2188,6 +2189,7 @@ vtnet_rxq_eof(struct vtnet_rxq *rxq) #endif virtqueue_notify(vq); } + CURVNET_RESTORE(); return (count > 0 ? 0 : EAGAIN); }