[dpdk-dev] [PATCH v2] app/testpmd: fix log of start command

Bernard Iremonger bernard.iremonger at intel.com
Mon May 21 15:28:16 CEST 2018


Call the rte_eth_rxq_info_get() and rte_eth_txq_info_get() functions
to update the number of rx and tx descriptors in the rte_port
variable.

Fixes: ce8d561418d4 ("app/testpmd: add port configuration settings")
Signed-off-by: Bernard Iremonger <bernard.iremonger at intel.com>
---
 app/test-pmd/testpmd.c | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
index 1d308f0..293b2a5 100644
--- a/app/test-pmd/testpmd.c
+++ b/app/test-pmd/testpmd.c
@@ -1592,6 +1592,9 @@ static void eth_dev_event_callback(char *device_name,
 	struct rte_port *port;
 	struct ether_addr mac_addr;
 	enum rte_eth_event_type event_type;
+	struct rte_eth_rxq_info rx_qinfo;
+	struct rte_eth_txq_info tx_qinfo;
+	int32_t rc;
 
 	if (port_id_is_invalid(pid, ENABLED_WARN))
 		return 0;
@@ -1706,8 +1709,19 @@ static void eth_dev_event_callback(char *device_name,
 					     &(port->rx_conf[qi]),
 					     mp);
 				}
-				if (diag == 0)
+				if (diag == 0) {
+					rc = rte_eth_rx_queue_info_get(pi, qi,
+						&rx_qinfo);
+					if (!rc)
+						port->nb_rx_desc[qi] =
+							rx_qinfo.nb_desc;
+					rc = rte_eth_tx_queue_info_get(pi, qi,
+						&tx_qinfo);
+					if (!rc)
+						port->nb_tx_desc[qi] =
+							tx_qinfo.nb_desc;
 					continue;
+				}
 
 				/* Fail to setup rx queue, return */
 				if (rte_atomic16_cmpset(&(port->port_status),
-- 
1.9.1



More information about the dev mailing list