[PATCH] app/testpmd: fix slave port reset action

Qiming Yang qiming.yang at intel.com
Wed Oct 12 09:43:59 CEST 2022


As stop action has been forbidden in secondary process, so
the reset action should also not be allowed.

Fixes: a550baf24af9 ("app/testpmd: support multi-process")
Cc: stable at dpdk.org

Signed-off-by: Qiming Yang <qiming.yang at intel.com>
---
 app/test-pmd/testpmd.c                | 18 ++++++++++--------
 doc/guides/testpmd_app_ug/run_app.rst |  1 +
 2 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
index 5b0f0838dc..6ce3cdabd9 100644
--- a/app/test-pmd/testpmd.c
+++ b/app/test-pmd/testpmd.c
@@ -3333,14 +3333,16 @@ reset_port(portid_t pid)
 			continue;
 		}
 
-		diag = rte_eth_dev_reset(pi);
-		if (diag == 0) {
-			port = &ports[pi];
-			port->need_reconfig = 1;
-			port->need_reconfig_queues = 1;
-		} else {
-			fprintf(stderr, "Failed to reset port %d. diag=%d\n",
-				pi, diag);
+		if (is_proc_primary()) {
+			diag = rte_eth_dev_reset(pi);
+			if (diag == 0) {
+				port = &ports[pi];
+				port->need_reconfig = 1;
+				port->need_reconfig_queues = 1;
+			} else {
+				fprintf(stderr, "Failed to reset port %d. diag=%d\n",
+					pi, diag);
+			}
 		}
 	}
 
diff --git a/doc/guides/testpmd_app_ug/run_app.rst b/doc/guides/testpmd_app_ug/run_app.rst
index abc3ec10a0..7657b4afad 100644
--- a/doc/guides/testpmd_app_ug/run_app.rst
+++ b/doc/guides/testpmd_app_ug/run_app.rst
@@ -600,6 +600,7 @@ as follows:
 - ``dev_configure``
 - ``dev_start``
 - ``dev_stop``
+- ``dev_reset``
 - ``rx_queue_setup``
 - ``tx_queue_setup``
 - ``rx_queue_release``
-- 
2.25.1



More information about the stable mailing list