]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
6.6-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 21 Sep 2025 17:13:04 +0000 (19:13 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 21 Sep 2025 17:13:04 +0000 (19:13 +0200)
added patches:
vmxnet3-unregister-xdp-rxq-info-in-the-reset-path.patch

queue-6.6/series
queue-6.6/vmxnet3-unregister-xdp-rxq-info-in-the-reset-path.patch [new file with mode: 0644]

index 28e6be9bc7cc4fc65bcebfbc8ed5ab29c73b08e4..51808bb50a018e3ccaaa40c145dd76811dd469c9 100644 (file)
@@ -54,3 +54,4 @@ drm-bridge-anx7625-fix-null-pointer-dereference-with.patch
 drm-bridge-cdns-mhdp8546-fix-missing-mutex-unlock-on.patch
 crypto-af_alg-set-merge-to-zero-early-in-af_alg_send.patch
 smb-client-fix-smbdirect_recv_io-leak-in-smbd_negoti.patch
+vmxnet3-unregister-xdp-rxq-info-in-the-reset-path.patch
diff --git a/queue-6.6/vmxnet3-unregister-xdp-rxq-info-in-the-reset-path.patch b/queue-6.6/vmxnet3-unregister-xdp-rxq-info-in-the-reset-path.patch
new file mode 100644 (file)
index 0000000..63f35b8
--- /dev/null
@@ -0,0 +1,59 @@
+From 0dd765fae295832934bf28e45dd5a355e0891ed4 Mon Sep 17 00:00:00 2001
+From: Sankararaman Jayaraman <sankararaman.jayaraman@broadcom.com>
+Date: Thu, 20 Mar 2025 10:25:22 +0530
+Subject: vmxnet3: unregister xdp rxq info in the reset path
+
+From: Sankararaman Jayaraman <sankararaman.jayaraman@broadcom.com>
+
+commit 0dd765fae295832934bf28e45dd5a355e0891ed4 upstream.
+
+vmxnet3 does not unregister xdp rxq info in the
+vmxnet3_reset_work() code path as vmxnet3_rq_destroy()
+is not invoked in this code path. So, we get below message with a
+backtrace.
+
+Missing unregister, handled but fix driver
+WARNING: CPU:48 PID: 500 at net/core/xdp.c:182
+__xdp_rxq_info_reg+0x93/0xf0
+
+This patch fixes the problem by moving the unregister
+code of XDP from vmxnet3_rq_destroy() to vmxnet3_rq_cleanup().
+
+Fixes: 54f00cce1178 ("vmxnet3: Add XDP support.")
+Signed-off-by: Sankararaman Jayaraman <sankararaman.jayaraman@broadcom.com>
+Signed-off-by: Ronak Doshi <ronak.doshi@broadcom.com>
+Link: https://patch.msgid.link/20250320045522.57892-1-sankararaman.jayaraman@broadcom.com
+Signed-off-by: Jakub Kicinski <kuba@kernel.org>
+[ Ajay: Modified to apply on v6.6, v6.12 ]
+Signed-off-by: Ajay Kaher <ajay.kaher@broadcom.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/net/vmxnet3/vmxnet3_drv.c |   10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+--- a/drivers/net/vmxnet3/vmxnet3_drv.c
++++ b/drivers/net/vmxnet3/vmxnet3_drv.c
+@@ -1981,6 +1981,11 @@ vmxnet3_rq_cleanup(struct vmxnet3_rx_que
+       rq->comp_ring.gen = VMXNET3_INIT_GEN;
+       rq->comp_ring.next2proc = 0;
++
++      if (xdp_rxq_info_is_reg(&rq->xdp_rxq))
++              xdp_rxq_info_unreg(&rq->xdp_rxq);
++      page_pool_destroy(rq->page_pool);
++      rq->page_pool = NULL;
+ }
+@@ -2021,11 +2026,6 @@ static void vmxnet3_rq_destroy(struct vm
+               }
+       }
+-      if (xdp_rxq_info_is_reg(&rq->xdp_rxq))
+-              xdp_rxq_info_unreg(&rq->xdp_rxq);
+-      page_pool_destroy(rq->page_pool);
+-      rq->page_pool = NULL;
+-
+       if (rq->data_ring.base) {
+               dma_free_coherent(&adapter->pdev->dev,
+                                 rq->rx_ring[0].size * rq->data_ring.desc_size,