[PATCH 3/3] app/testpmd: compact RSS flow type output in port info
lihuisong (C)
lihuisong at huawei.com
Wed Jun 1 09:08:17 CEST 2022
在 2022/6/1 0:35, Andrew Rybchenko 写道:
> On 5/25/22 20:37, Ferruh Yigit wrote:
>> In port info command output, 'show port info all', supported RSS flow
>> types printed one type per line, and although this information is not
>> most important part of the command it takes big part of the command
>> output.
>>
>> Compacting the supported RSS flow type output by printing 6 (hardcoded
>> value) items per line, instead of one per line. Output becomes as
>> following:
>>
>> Supported RSS offload flow types:
>> ipv4 ipv4-frag ipv4-tcp ipv4-udp ipv4-sctp ipv4-other
>> ipv6 ipv6-frag ipv6-tcp ipv6-udp ipv6-sctp ipv6-other
>> l2-payload ipv6-ex ipv6-tcp-ex ipv6-udp-ex port vxlan
>> geneve nvgre mpls
>>
>> Signed-off-by: Ferruh Yigit <ferruh.yigit at xilinx.com>
>> ---
>> app/test-pmd/config.c | 14 ++++++++++++--
>> 1 file changed, 12 insertions(+), 2 deletions(-)
>>
>> diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c
>> index 47de5b6d9458..5496ccd7f8ad 100644
>> --- a/app/test-pmd/config.c
>> +++ b/app/test-pmd/config.c
>> @@ -805,6 +805,7 @@ port_infos_display(portid_t port_id)
>> else {
>> uint64_t rss_types = dev_info.flow_type_rss_offloads;
>> uint16_t i;
>> + uint16_t len = 0;
>> printf("Supported RSS offload flow types:\n");
>> for (i = 0; rss_types != 0; i++) {
>> @@ -813,12 +814,21 @@ port_infos_display(portid_t port_id)
>> const char *p = rsstype_to_str(rss_type);
>> if (p)
>> - printf(" %s\n", p);
>> + printf(" %s", p);
>> else
>> - printf(" user defined 0x%"PRIx64"\n", rss_type);
>> + printf(" user defined 0x%"PRIx64, rss_type);
>> +
>> + len++;
>> + /* wrap on every 6 items */
>> + if (len == 6) {
>
> Variable name 'len' is misleading here since the first idea is
> like length, not a number of items.
>
> Also 6 sounds to be to much in the worst case scenario with 6
> user defined types. Each uses at least 18 chars. So, 18 * 6 = 108.
> May be printing algorithm should be a bit more sophisticated and
> really track line length.
ok. I will fix it in my set.
>
>> + printf("\n");
>> + len = 0;
>> + }
>> }
>> rss_types >>= 1;
>> }
>> + if (len)
>> + printf("\n");
>> }
>> printf("Minimum size of RX buffer: %u\n",
>> dev_info.min_rx_bufsize);
>
> .
More information about the dev
mailing list