numam-dpdk/app/test-pmd
David Marchand 8fad2e5ab2 app/testpmd: report invalid command line parameter
We currently do not check that a non option string has been passed to
testpmd.

Example:
$ ./master/app/testpmd --no-huge -m 512 --vdev net_null0 \
	--vdev net_null1 -- -i nb-cores=2 --total-num-mbuf 2048
[...]
testpmd> show config fwd
io packet forwarding - ports=2 - cores=1 - streams=2 - NUMA support
enabled, MP allocation mode: native
Logical Core 1 (socket 0) forwards packets on 2 streams:
  RX P=0/Q=0 (socket 0) -> TX P=1/Q=0 (socket 0) peer=02:00:00:00:00:01
  RX P=1/Q=0 (socket 0) -> TX P=0/Q=0 (socket 0) peer=02:00:00:00:00:00

Here nb-cores=2 is just ignored, while the (probably sleepy) user did not
notice this.

Validate that all strings passed to testpmd are part of a known option.

After this patch:
$ ./master/app/testpmd --no-huge -m 512 --vdev net_null0 \
	--vdev net_null1 -- -i nb-cores=2 --total-num-mbuf 2048
[...]
Invalid parameter: nb-cores=2
EAL: Error - exiting with code: 1
  Cause: Command line incorrect

While at it, when passing an unknown option, print the string that gets
refused by getopt_long to help the user.

Fixes: af75078fec ("first public release")
Cc: stable@dpdk.org

Signed-off-by: David Marchand <david.marchand@redhat.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
2019-11-20 17:36:06 +01:00
..
bpf_cmd.c bpf: add extra information for external symbol definitions 2018-07-12 09:37:16 +02:00
bpf_cmd.h app/testpmd: add commands to load/unload BPF filters 2018-05-12 00:37:51 +02:00
cmdline_flow.c app/testpmd: fix IP next proto in set raw decap/encap 2019-11-08 23:15:05 +01:00
cmdline_mtr.c meter: replace color definitions 2019-04-11 14:27:32 +02:00
cmdline_mtr.h app/testpmd: add commands for metering and policing 2018-01-10 00:51:31 +01:00
cmdline_tm.c meter: replace color definitions 2019-04-11 14:27:32 +02:00
cmdline_tm.h app/testpmd: add TM commands to mark packets 2018-10-08 17:53:03 +02:00
cmdline.c app/testpmd: fix cleanup of Tx metadata offload 2019-11-20 17:36:06 +01:00
config.c app/testpmd: set maximum LRO packet size 2019-11-12 01:44:05 +01:00
csumonly.c net: use IPV4 VHL constant 2019-11-20 17:36:06 +01:00
flowgen.c net: use IPV4 VHL constant 2019-11-20 17:36:06 +01:00
icmpecho.c net: replace IPv4/v6 constants with uppercase name 2019-06-03 16:54:54 +02:00
ieee1588fwd.c net: add rte prefix to ether defines 2019-05-24 13:34:45 +02:00
iofwd.c app: use SPDX tag for Intel copyright files 2018-01-04 22:41:39 +01:00
macfwd.c net: add rte prefix to IP structure 2019-05-24 13:34:46 +02:00
macswap_common.h net: add rte prefix to IP structure 2019-05-24 13:34:46 +02:00
macswap_neon.h net: add rte prefix to ether structures 2019-05-24 13:34:45 +02:00
macswap_sse.h net: add rte prefix to ether structures 2019-05-24 13:34:45 +02:00
macswap.c app/testpmd: optimize MAC swap for Arm 2019-03-20 18:15:42 +01:00
macswap.h net: add rte prefix to ether functions 2019-05-24 13:34:45 +02:00
Makefile mk: build with _GNU_SOURCE defined by default 2018-10-22 11:28:27 +02:00
meson.build build: add dependency on telemetry to apps with meson 2018-10-27 15:21:33 +02:00
noisy_vnf.c app/testpmd: add noisy neighbour forwarding mode 2018-10-11 18:56:02 +02:00
parameters.c app/testpmd: report invalid command line parameter 2019-11-20 17:36:06 +01:00
rxonly.c app/testpmd: add packet dump callbacks 2018-10-18 10:24:39 +02:00
softnicfwd.c app/testpmd: check status of getting link info 2019-10-07 15:00:54 +02:00
testpmd.c app/testpmd: disable packet type parsing by default 2019-11-11 16:15:37 +01:00
testpmd.h app/testpmd: disable packet type parsing by default 2019-11-11 16:15:37 +01:00
txonly.c net: use IPV4 VHL constant 2019-11-20 17:36:06 +01:00
util.c app/testpmd: fix cleanup of Tx metadata offload 2019-11-20 17:36:06 +01:00