From 7fe108edcf5341fd7dd6ae095735a7458d25e8c9 Mon Sep 17 00:00:00 2001 From: Haiyue Wang Date: Tue, 15 Oct 2019 15:51:33 +0800 Subject: [PATCH] app/testpmd: show Rx/Tx burst mode description Add the 'Burst mode' section into command 'show rxq|txq info ' to show the Rx/Tx burst mode description like: "Burst mode: Vector AVX2 Scattered" Signed-off-by: Haiyue Wang Acked-by: Bernard Iremonger Reviewed-by: Xiaolong Ye --- app/test-pmd/config.c | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c index 2356afee9e..1844e4875c 100644 --- a/app/test-pmd/config.c +++ b/app/test-pmd/config.c @@ -346,9 +346,25 @@ 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) { + struct rte_eth_burst_mode mode; struct rte_eth_rxq_info qinfo; int32_t rc; static const char *info_border = "*********************"; @@ -376,12 +392,19 @@ rx_queue_infos_display(portid_t port_id, uint16_t queue_id) printf("\nRX scattered packets: %s", (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); + } + printf("\n"); } void tx_queue_infos_display(portid_t port_id, uint16_t queue_id) { + struct rte_eth_burst_mode mode; struct rte_eth_txq_info qinfo; int32_t rc; static const char *info_border = "*********************"; @@ -405,6 +428,12 @@ tx_queue_infos_display(portid_t port_id, uint16_t queue_id) printf("\nTX deferred start: %s", (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); + } + printf("\n"); } -- 2.20.1