[PATCH V1 1/2] app/testpmd: fix supported RSS offload display
Huisong Li
lihuisong at huawei.com
Mon Apr 25 11:25:22 CEST 2022
And rte_eth_dev_info.flow_type_rss_offloads is populated in terms of
RTE_ETH_RSS_* bits. If PMD sets RTE_ETH_RSS_L3_SRC_ONLY to
dev_info->flow_type_rss_offloads. testpmd will display "user defined 63"
when run 'show port info 0'. Because testpmd use flowtype_to_str()
to display the supported RSS offload of PMD. In fact, the function is
used to display flow type in FDIR commands. This patch uses the
RTE_ETH_RSS_* bits to display supported RSS offload of PMD.
Fixes: b12964f621dc ("ethdev: unification of RSS offload types")
Cc: stable at dpdk.org
Signed-off-by: Huisong Li <lihuisong at huawei.com>
---
app/test-pmd/config.c | 30 ++++++++++++++++--------------
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c
index cc8e7aa138..f58da01a3a 100644
--- a/app/test-pmd/config.c
+++ b/app/test-pmd/config.c
@@ -669,6 +669,20 @@ print_dev_capabilities(uint64_t capabilities)
}
}
+static void
+show_rss_types(uint64_t rss_hf)
+{
+ uint16_t i;
+
+ for (i = 0; rss_type_table[i].str; i++) {
+ if (rss_type_table[i].rss_type == 0)
+ continue;
+ if ((rss_hf & rss_type_table[i].rss_type) == rss_type_table[i].rss_type)
+ printf("%s ", rss_type_table[i].str);
+ }
+ printf("\n");
+}
+
void
port_infos_display(portid_t port_id)
{
@@ -773,20 +787,8 @@ port_infos_display(portid_t port_id)
if (!dev_info.flow_type_rss_offloads)
printf("No RSS offload flow type is supported.\n");
else {
- uint16_t i;
- char *p;
-
- printf("Supported RSS offload flow types:\n");
- for (i = RTE_ETH_FLOW_UNKNOWN + 1;
- i < sizeof(dev_info.flow_type_rss_offloads) * CHAR_BIT; i++) {
- if (!(dev_info.flow_type_rss_offloads & (1ULL << i)))
- continue;
- p = flowtype_to_str(i);
- if (p)
- printf(" %s\n", p);
- else
- printf(" user defined %d\n", i);
- }
+ printf("Supported RSS offload:\n");
+ show_rss_types(dev_info.flow_type_rss_offloads);
}
printf("Minimum size of RX buffer: %u\n", dev_info.min_rx_bufsize);
--
2.33.0
More information about the dev
mailing list