From 4dccdc789bf4b083e22a52a84bf87edb288bc3be Mon Sep 17 00:00:00 2001 From: Bruce Richardson Date: Tue, 17 Jun 2014 19:41:12 +0100 Subject: [PATCH] app/testpmd: simplify handling of stats mappings error Simplifiy the logic in the error checking branch. Rather than having a single error branch which checked both RX and TX conditions and made extensive use of the ? operator, move the error checking explicitly into the RX and TX individual branches. The original code caused compilation issues when attempting compilation with clang on BSD, due to type mismatches. This change fixes the issues while making the code easier to read and maintain overall. Signed-off-by: Bruce Richardson Acked-by: Thomas Monjalon --- app/test-pmd/parameters.c | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/app/test-pmd/parameters.c b/app/test-pmd/parameters.c index aa0e2bf8bd..3ff4f818d1 100644 --- a/app/test-pmd/parameters.c +++ b/app/test-pmd/parameters.c @@ -316,14 +316,14 @@ parse_queue_stats_mapping_config(const char *q_arg, int is_rx) return -1; } - if (is_rx ? (nb_rx_queue_stats_mappings >= MAX_RX_QUEUE_STATS_MAPPINGS) : - (nb_tx_queue_stats_mappings >= MAX_TX_QUEUE_STATS_MAPPINGS)) { - printf("exceeded max number of %s queue statistics mappings: %hu\n", - is_rx ? "RX" : "TX", - is_rx ? nb_rx_queue_stats_mappings : nb_tx_queue_stats_mappings); - return -1; - } if (!is_rx) { + if ((nb_tx_queue_stats_mappings >= + MAX_TX_QUEUE_STATS_MAPPINGS)) { + printf("exceeded max number of TX queue " + "statistics mappings: %hu\n", + nb_tx_queue_stats_mappings); + return -1; + } tx_queue_stats_mappings_array[nb_tx_queue_stats_mappings].port_id = (uint8_t)int_fld[FLD_PORT]; tx_queue_stats_mappings_array[nb_tx_queue_stats_mappings].queue_id = @@ -333,6 +333,13 @@ parse_queue_stats_mapping_config(const char *q_arg, int is_rx) ++nb_tx_queue_stats_mappings; } else { + if ((nb_rx_queue_stats_mappings >= + MAX_RX_QUEUE_STATS_MAPPINGS)) { + printf("exceeded max number of RX queue " + "statistics mappings: %hu\n", + nb_rx_queue_stats_mappings); + return -1; + } rx_queue_stats_mappings_array[nb_rx_queue_stats_mappings].port_id = (uint8_t)int_fld[FLD_PORT]; rx_queue_stats_mappings_array[nb_rx_queue_stats_mappings].queue_id = -- 2.20.1