In `ip_fragmentation` application, Tx queues are configured per lcore
to enable a lockless design and achieve optimal performance.

The `MAX_TX_QUEUE_PER_PORT` macro, defined as `RTE_MAX_ETHPORTS`,
introduced an artificial constraint on the number of Tx queues
and limited core-scaling performance.

This patch removes the unused `MAX_TX_QUEUE_PER_PORT` macro and
redundant Tx queue check, allowing Tx queues to scale directly
with the no. of lcores.

Fixes: af75078fece3 ("first public release")
Cc: [email protected]

Signed-off-by: Sivaprasad Tummala <[email protected]>
---
 examples/ip_fragmentation/main.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/examples/ip_fragmentation/main.c b/examples/ip_fragmentation/main.c
index 1f84102844..9be2f72983 100644
--- a/examples/ip_fragmentation/main.c
+++ b/examples/ip_fragmentation/main.c
@@ -134,7 +134,6 @@ struct rx_queue {
 };
 
 #define MAX_RX_QUEUE_PER_LCORE 16
-#define MAX_TX_QUEUE_PER_PORT 16
 struct __rte_cache_aligned lcore_queue_conf {
        uint16_t n_rx_queue;
        uint16_t tx_queue_id[RTE_MAX_ETHPORTS];
@@ -948,8 +947,6 @@ main(int argc, char **argv)
                fflush(stdout);
 
                n_tx_queue = nb_lcores;
-               if (n_tx_queue > MAX_TX_QUEUE_PER_PORT)
-                       n_tx_queue = MAX_TX_QUEUE_PER_PORT;
                ret = rte_eth_dev_configure(portid, 1, (uint16_t)n_tx_queue,
                                            &local_port_conf);
                if (ret < 0) {
-- 
2.43.0

Reply via email to