app/testpmd: block xstats for hidden ports
[dpdk.git] / app / test-pmd / config.c
index efe2812..2a51d96 100644 (file)
@@ -238,6 +238,10 @@ nic_xstats_display(portid_t port_id)
        int cnt_xstats, idx_xstat;
        struct rte_eth_xstat_name *xstats_names;
 
+       if (port_id_is_invalid(port_id, ENABLED_WARN)) {
+               print_valid_ports();
+               return;
+       }
        printf("###### NIC extended statistics for port %-2d\n", port_id);
        if (!rte_eth_dev_is_valid_port(port_id)) {
                printf("Error: Invalid port number %i\n", port_id);
@@ -295,6 +299,10 @@ nic_xstats_clear(portid_t port_id)
 {
        int ret;
 
+       if (port_id_is_invalid(port_id, ENABLED_WARN)) {
+               print_valid_ports();
+               return;
+       }
        ret = rte_eth_xstats_reset(port_id);
        if (ret != 0) {
                printf("%s: Error: failed to reset xstats (port %u): %s",
@@ -350,21 +358,6 @@ nic_stats_mapping_display(portid_t port_id)
               nic_stats_mapping_border, nic_stats_mapping_border);
 }
 
-static void
-burst_mode_options_display(uint64_t options)
-{
-       int offset;
-
-       while (options != 0) {
-               offset = rte_bsf64(options);
-
-               printf(" %s",
-                      rte_eth_burst_mode_option_name(1ULL << offset));
-
-               options &= ~(1ULL << offset);
-       }
-}
-
 void
 rx_queue_infos_display(portid_t port_id, uint16_t queue_id)
 {
@@ -397,10 +390,11 @@ rx_queue_infos_display(portid_t port_id, uint16_t queue_id)
                (qinfo.scattered_rx != 0) ? "on" : "off");
        printf("\nNumber of RXDs: %hu", qinfo.nb_desc);
 
-       if (rte_eth_rx_burst_mode_get(port_id, queue_id, &mode) == 0) {
-               printf("\nBurst mode:");
-               burst_mode_options_display(mode.options);
-       }
+       if (rte_eth_rx_burst_mode_get(port_id, queue_id, &mode) == 0)
+               printf("\nBurst mode: %s%s",
+                      mode.info,
+                      mode.flags & RTE_ETH_BURST_FLAG_PER_QUEUE ?
+                               " (per queue)" : "");
 
        printf("\n");
 }
@@ -433,10 +427,11 @@ tx_queue_infos_display(portid_t port_id, uint16_t queue_id)
                (qinfo.conf.tx_deferred_start != 0) ? "on" : "off");
        printf("\nNumber of TXDs: %hu", qinfo.nb_desc);
 
-       if (rte_eth_tx_burst_mode_get(port_id, queue_id, &mode) == 0) {
-               printf("\nBurst mode:");
-               burst_mode_options_display(mode.options);
-       }
+       if (rte_eth_tx_burst_mode_get(port_id, queue_id, &mode) == 0)
+               printf("\nBurst mode: %s%s",
+                      mode.info,
+                      mode.flags & RTE_ETH_BURST_FLAG_PER_QUEUE ?
+                               " (per queue)" : "");
 
        printf("\n");
 }