Thread (24 messages) 24 messages, 4 authors, 2025-01-27

Re: [RFC net-next v3 2/4] virtio_net: Prepare for NAPI to queue mapping

From: Joe Damato <hidden>
Date: 2025-01-23 02:47:30
Also in: lkml, virtualization

On Thu, Jan 23, 2025 at 10:40:43AM +0800, Jason Wang wrote:
On Thu, Jan 23, 2025 at 1:41 AM Joe Damato [off-list ref] wrote:
quoted
On Wed, Jan 22, 2025 at 02:12:46PM +0800, Jason Wang wrote:
quoted
On Wed, Jan 22, 2025 at 3:11 AM Joe Damato [off-list ref] wrote:
quoted
Slight refactor to prepare the code for NAPI to queue mapping. No
functional changes.

Signed-off-by: Joe Damato <redacted>
Reviewed-by: Gerhard Engleder <redacted>
Tested-by: Lei Yang <redacted>
---
 v2:
   - Previously patch 1 in the v1.
   - Added Reviewed-by and Tested-by tags to commit message. No
     functional changes.

 drivers/net/virtio_net.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
index 7646ddd9bef7..cff18c66b54a 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -2789,7 +2789,8 @@ static void skb_recv_done(struct virtqueue *rvq)
        virtqueue_napi_schedule(&rq->napi, rvq);
 }

-static void virtnet_napi_enable(struct virtqueue *vq, struct napi_struct *napi)
+static void virtnet_napi_do_enable(struct virtqueue *vq,
+                                  struct napi_struct *napi)
 {
        napi_enable(napi);
Nit: it might be better to not have this helper to avoid a misuse of
this function directly.
Sorry, I'm probably missing something here.

Both virtnet_napi_enable and virtnet_napi_tx_enable need the logic
in virtnet_napi_do_enable.

Are you suggesting that I remove virtnet_napi_do_enable and repeat
the block of code in there twice (in virtnet_napi_enable and
virtnet_napi_tx_enable)?
I think I miss something here, it looks like virtnet_napi_tx_enable()
calls virtnet_napi_do_enable() directly.

I would like to know why we don't call netif_queue_set_napi() for TX NAPI here?
Please see both the cover letter and the commit message of the next
commit which addresses this question.

TX-only NAPIs do not have NAPI IDs so there is nothing to map.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help