patch 'net/iavf: fix stop ordering' has been queued to stable release 20.11.9

luca.boccassi at gmail.com luca.boccassi at gmail.com
Thu Jul 20 12:58:52 CEST 2023


Hi,

FYI, your patch has been queued to stable release 20.11.9

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/22/23. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/bluca/dpdk-stable

This queued commit can be viewed at:
https://github.com/bluca/dpdk-stable/commit/566d11fdc503b961109423c07973347ba7ce9bce

Thanks.

Luca Boccassi

---
>From 566d11fdc503b961109423c07973347ba7ce9bce Mon Sep 17 00:00:00 2001
From: Zhichao Zeng <zhichaox.zeng at intel.com>
Date: Wed, 12 Jul 2023 13:35:37 +0800
Subject: [PATCH] net/iavf: fix stop ordering

[ upstream commit 87b2afdea3aae6095aa80956ae2e15f602594185 ]

The current implementation stops queue before disabling the Rx interrupt,
and when there are still unprocessed packets remaining in the queue,
this may cause the Rx ring to timeout, leading to IOMMU fault.

This patch disables the Rx interrupt before stopping the queue, ensuring
that no packets received when disabling the queues.

Fixes: 02d212ca3125 ("net/iavf: rename remaining avf strings")

Signed-off-by: Bartosz Staszewski <bartoszx.staszewski at intel.com>
Signed-off-by: Zhichao Zeng <zhichaox.zeng at intel.com>
Acked-by: Qi Zhang <qi.z.zhang at intel.com>
---
 drivers/net/iavf/iavf_ethdev.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/iavf/iavf_ethdev.c b/drivers/net/iavf/iavf_ethdev.c
index ddd877724a..127d79318d 100644
--- a/drivers/net/iavf/iavf_ethdev.c
+++ b/drivers/net/iavf/iavf_ethdev.c
@@ -756,8 +756,6 @@ iavf_dev_stop(struct rte_eth_dev *dev)
 	if (adapter->stopped == 1)
 		return 0;
 
-	iavf_stop_queues(dev);
-
 	/* Disable the interrupt for Rx */
 	rte_intr_efd_disable(intr_handle);
 	/* Rx interrupt vector mapping free */
@@ -773,6 +771,8 @@ iavf_dev_stop(struct rte_eth_dev *dev)
 	iavf_add_del_mc_addr_list(adapter, vf->mc_addrs, vf->mc_addrs_num,
 				  false);
 
+	iavf_stop_queues(dev);
+
 	adapter->stopped = 1;
 	dev->data->dev_started = 0;
 
-- 
2.39.2

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2023-07-20 11:54:24.365898201 +0100
+++ 0003-net-iavf-fix-stop-ordering.patch	2023-07-20 11:54:24.229504431 +0100
@@ -1 +1 @@
-From 87b2afdea3aae6095aa80956ae2e15f602594185 Mon Sep 17 00:00:00 2001
+From 566d11fdc503b961109423c07973347ba7ce9bce Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 87b2afdea3aae6095aa80956ae2e15f602594185 ]
+
@@ -14 +15,0 @@
-Cc: stable at dpdk.org
@@ -20 +20,0 @@
- .mailmap                       | 1 +
@@ -22 +22 @@
- 2 files changed, 3 insertions(+), 2 deletions(-)
+ 1 file changed, 2 insertions(+), 2 deletions(-)
@@ -24,12 +23,0 @@
-diff --git a/.mailmap b/.mailmap
-index 670d312f84..9ce554451b 100644
---- a/.mailmap
-+++ b/.mailmap
-@@ -151,6 +151,7 @@ Bao-Long Tran <longtb5 at viettel.com.vn>
- Bar Neuman <bneuman at nvidia.com>
- Barak Enat <barak at saguna.net>
- Barry Cao <barry.cao at nxp.com>
-+Bartosz Staszewski <bartoszx.staszewski at intel.com>
- Baruch Siach <baruch at tkos.co.il>
- Bassam Zaid AlKilani <bzalkilani at nvidia.com>
- Beilei Xing <beilei.xing at intel.com>
@@ -37 +25 @@
-index ac7154d720..f2fc5a5621 100644
+index ddd877724a..127d79318d 100644
@@ -40 +28 @@
-@@ -1087,8 +1087,6 @@ iavf_dev_stop(struct rte_eth_dev *dev)
+@@ -756,8 +756,6 @@ iavf_dev_stop(struct rte_eth_dev *dev)
@@ -49 +37 @@
-@@ -1101,6 +1099,8 @@ iavf_dev_stop(struct rte_eth_dev *dev)
+@@ -773,6 +771,8 @@ iavf_dev_stop(struct rte_eth_dev *dev)


More information about the stable mailing list