[dpdk-dev] [PATCH v2 11/11] app/testpmd: add option to display extended statistics

Andrew Rybchenko andrew.rybchenko at oktetlabs.ru
Fri Jul 23 15:08:56 CEST 2021


Hi David,

On 7/22/21 11:15 PM, David Marchand wrote:
> On Thu, Jul 22, 2021 at 11:55 AM Andrew Rybchenko
> <andrew.rybchenko at oktetlabs.ru> wrote:
>>
>> diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c
>> index 8468018cf3..baffef1642 100644
>> --- a/app/test-pmd/cmdline.c
>> +++ b/app/test-pmd/cmdline.c
>> @@ -3609,6 +3609,62 @@ cmdline_parse_inst_t cmd_stop = {
>>
>>   /* *** SET CORELIST and PORTLIST CONFIGURATION *** */
>>
>> +int
>> +parse_xstats_list(char *in_str, struct rte_eth_xstat_name **xstats,
>> +                 unsigned int *xstats_num)
> 
> I had saved this comment as it seemed harmless, but in_str can be constified.
> And well, mingw build seems picky about it:
> 
> [5/20] Compiling C object app/dpdk-testpmd.exe.p/test-pmd_parameters.c.obj
> FAILED: app/dpdk-testpmd.exe.p/test-pmd_parameters.c.obj
> x86_64-w64-mingw32-gcc -Iapp/dpdk-testpmd.exe.p -Iapp -I../../dpdk/app
> -Ilib/ethdev -I../../dpdk/lib/ethdev -I. -I../../dpdk -Iconfig
> -I../../dpdk/config -Ilib/eal/include -I../../dpdk/lib/eal/include
> -Ilib/eal/windows/include -I../../dpdk/lib/eal/windows/include
> -Ilib/eal/x86/include -I../../dpdk/lib/eal/x86/include
> -Ilib/eal/common -I../../dpdk/lib/eal/common -Ilib/eal
> -I../../dpdk/lib/eal -Ilib/kvargs -I../../dpdk/lib/kvargs -Ilib/net
> -I../../dpdk/lib/net -Ilib/mbuf -I../../dpdk/lib/mbuf -Ilib/mempool
> -I../../dpdk/lib/mempool -Ilib/ring -I../../dpdk/lib/ring -Ilib/meter
> -I../../dpdk/lib/meter -Ilib/metrics -I../../dpdk/lib/metrics
> -Ilib/telemetry -I../../dpdk/lib/telemetry -Ilib/gro
> -I../../dpdk/lib/gro -Ilib/gso -I../../dpdk/lib/gso -Ilib/cmdline
> -I../../dpdk/lib/cmdline -Idrivers/bus/pci
> -I../../dpdk/drivers/bus/pci -I../../dpdk/drivers/bus/pci/windows
> -Ilib/pci -I../../dpdk/lib/pci -Ilib/bitratestats
> -I../../dpdk/lib/bitratestats -Ilib/pdump -I../../dpdk/lib/pdump
> -Ilib/latencystats -I../../dpdk/lib/latencystats -Idrivers/net/i40e
> -I../../dpdk/drivers/net/i40e -Idrivers/net/i40e/base
> -I../../dpdk/drivers/net/i40e/base -Idrivers/bus/vdev
> -I../../dpdk/drivers/bus/vdev -Ilib/hash -I../../dpdk/lib/hash
> -Ilib/rcu -I../../dpdk/lib/rcu -fdiagnostics-color=always -pipe
> -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Werror -O2 -g -include
> rte_config.h -Wextra -Wcast-qual -Wdeprecated -Wformat
> -Wformat-nonliteral -Wformat-security -Wmissing-declarations
> -Wmissing-prototypes -Wnested-externs -Wold-style-definition
> -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef
> -Wwrite-strings -Wno-address-of-packed-member -Wno-packed-not-aligned
> -Wno-missing-field-initializers -D_GNU_SOURCE -D_WIN32_WINNT=0x0A00
> -D__USE_MINGW_ANSI_STDIO -mno-avx512f -march=native
> -DALLOW_EXPERIMENTAL_API -Wno-deprecated-declarations -MD -MQ
> app/dpdk-testpmd.exe.p/test-pmd_parameters.c.obj -MF
> app/dpdk-testpmd.exe.p/test-pmd_parameters.c.obj.d -o
> app/dpdk-testpmd.exe.p/test-pmd_parameters.c.obj -c
> ../../dpdk/app/test-pmd/parameters.c
> In file included from ../../dpdk/app/test-pmd/parameters.c:6:
> ../../dpdk/app/test-pmd/parameters.c: In function 'launch_args_parse':
> ../../dpdk/lib/eal/windows/include/getopt.h:38:16: error: passing
> argument 1 of 'parse_xstats_list' discards 'const' qualifier from
> pointer target type [-Werror=discarded-qualifiers]
>     38 | #define optarg usual_optarg
>        |                ^~~~~~~~~~~~
> ../../dpdk/app/test-pmd/parameters.c:699:28: note: in expansion of
> macro 'optarg'
>    699 |     rc = parse_xstats_list(optarg, &xstats_display,
>        |                            ^~~~~~
> In file included from ../../dpdk/app/test-pmd/parameters.c:46:
> ../../dpdk/app/test-pmd/testpmd.h:787:29: note: expected 'char *' but
> argument is of type 'const char *'
>    787 | int parse_xstats_list(char *in_str, struct rte_eth_xstat_name **xstats,
>        |                       ~~~~~~^~~~~~
> cc1: all warnings being treated as errors
> [19/20] Compiling C object app/dpdk-testpmd.exe.p/test-pmd_cmdline.c.obj


Many thanks, I'll send v3 shortly with fixes applied to avoid
dup resolution, remove debug printout and make mingw build happy.

Andrew.



More information about the dev mailing list