xref: /dpdk/doc/guides/testpmd_app_ug/run_app.rst (revision 01817b10d27c8d1376210d4798bf504dffaa8ccd)
15630257fSFerruh Yigit..  SPDX-License-Identifier: BSD-3-Clause
25630257fSFerruh Yigit    Copyright(c) 2010-2014 Intel Corporation.
3ac718398SBernard Iremonger
4ac718398SBernard IremongerRunning the Application
5ac718398SBernard Iremonger=======================
6ac718398SBernard Iremonger
7ac718398SBernard IremongerEAL Command-line Options
8ac718398SBernard Iremonger------------------------
9ac718398SBernard Iremonger
10c41c100bSDekel PeledPlease refer to :doc:`EAL parameters (Linux) <../linux_gsg/linux_eal_parameters>`
11c41c100bSDekel Peledor :doc:`EAL parameters (FreeBSD) <../freebsd_gsg/freebsd_eal_parameters>` for
12c41c100bSDekel Peleda list of available EAL command-line options.
13075b182bSEric Zhang
14ac718398SBernard Iremonger
15ac718398SBernard IremongerTestpmd Command-line Options
16ac718398SBernard Iremonger----------------------------
17ac718398SBernard Iremonger
18ac718398SBernard IremongerThe following are the command-line options for the testpmd applications.
19e76d7a76SJohn McNamaraThey must be separated from the EAL options, shown in the previous section, with a ``--`` separator:
20ac718398SBernard Iremonger
21ac718398SBernard Iremonger.. code-block:: console
22ac718398SBernard Iremonger
2335b09d76SKeith Wiles    sudo ./testpmd -l 0-3 -n 4 -- -i --portmask=0x1 --nb-cores=2
24ac718398SBernard Iremonger
25e76d7a76SJohn McNamaraThe command line options are:
26e76d7a76SJohn McNamara
27e76d7a76SJohn McNamara*   ``-i, --interactive``
28ac718398SBernard Iremonger
29ac718398SBernard Iremonger    Run testpmd in interactive mode.
30ac718398SBernard Iremonger    In this mode, the testpmd starts with a prompt that can be used to start and stop forwarding,
31ac718398SBernard Iremonger    configure the application and display stats on the current packet processing session.
32e76d7a76SJohn McNamara    See :ref:`testpmd_runtime` for more details.
33ac718398SBernard Iremonger
34ac718398SBernard Iremonger    In non-interactive mode,
35ac718398SBernard Iremonger    the application starts with the configuration specified on the command-line and
36ac718398SBernard Iremonger    immediately enters forwarding mode.
37ac718398SBernard Iremonger
38e76d7a76SJohn McNamara*   ``-h, --help``
39ac718398SBernard Iremonger
40ac718398SBernard Iremonger    Display a help message and quit.
41ac718398SBernard Iremonger
42e76d7a76SJohn McNamara*   ``-a, --auto-start``
43ac718398SBernard Iremonger
44e76d7a76SJohn McNamara    Start forwarding on initialization.
45ac718398SBernard Iremonger
4699cabef0SPablo de Lara*   ``--tx-first``
4799cabef0SPablo de Lara
4899cabef0SPablo de Lara    Start forwarding, after sending a burst of packets first.
4999cabef0SPablo de Lara
5099cabef0SPablo de Lara.. Note::
5199cabef0SPablo de Lara
5299cabef0SPablo de Lara   This flag should be only used in non-interactive mode.
5399cabef0SPablo de Lara
54cfea1f30SPablo de Lara*   ``--stats-period PERIOD``
55cfea1f30SPablo de Lara
56cfea1f30SPablo de Lara    Display statistics every PERIOD seconds, if interactive mode is disabled.
57cfea1f30SPablo de Lara    The default value is 0, which means that the statistics will not be displayed.
58cfea1f30SPablo de Lara
59e76d7a76SJohn McNamara*   ``--nb-cores=N``
60ac718398SBernard Iremonger
61ac718398SBernard Iremonger    Set the number of forwarding cores,
62e76d7a76SJohn McNamara    where 1 <= N <= "number of cores" or ``CONFIG_RTE_MAX_LCORE`` from the configuration file.
63ac718398SBernard Iremonger    The default value is 1.
64ac718398SBernard Iremonger
65e76d7a76SJohn McNamara*   ``--nb-ports=N``
66ac718398SBernard Iremonger
67ac718398SBernard Iremonger    Set the number of forwarding ports,
68e76d7a76SJohn McNamara    where 1 <= N <= "number of ports" on the board or ``CONFIG_RTE_MAX_ETHPORTS`` from the configuration file.
69ac718398SBernard Iremonger    The default value is the number of ports on the board.
70ac718398SBernard Iremonger
71e76d7a76SJohn McNamara*   ``--coremask=0xXX``
72ac718398SBernard Iremonger
73ac718398SBernard Iremonger    Set the hexadecimal bitmask of the cores running the packet forwarding test.
74ac718398SBernard Iremonger    The master lcore is reserved for command line parsing only and cannot be masked on for packet forwarding.
75ac718398SBernard Iremonger
76e76d7a76SJohn McNamara*   ``--portmask=0xXX``
77ac718398SBernard Iremonger
78ac718398SBernard Iremonger    Set the hexadecimal bitmask of the ports used by the packet forwarding test.
79ac718398SBernard Iremonger
802df00d56SHariprasad Govindharajan*   ``--portlist=X``
812df00d56SHariprasad Govindharajan
822df00d56SHariprasad Govindharajan      Set the forwarding ports based on the user input used by the packet forwarding test.
832df00d56SHariprasad Govindharajan      '-' denotes a range of ports to set including the two specified port IDs
842df00d56SHariprasad Govindharajan      ',' separates multiple port values.
852df00d56SHariprasad Govindharajan      Possible examples like --portlist=0,1 or --portlist=0-2 or --portlist=0,1-2 etc
862df00d56SHariprasad Govindharajan
87e76d7a76SJohn McNamara*   ``--numa``
88ac718398SBernard Iremonger
89999b2ee0SBruce Richardson    Enable NUMA-aware allocation of RX/TX rings and of RX memory buffers
90999b2ee0SBruce Richardson    (mbufs). [Default setting]
91999b2ee0SBruce Richardson
92999b2ee0SBruce Richardson*   ``--no-numa``
93999b2ee0SBruce Richardson
94999b2ee0SBruce Richardson    Disable NUMA-aware allocation of RX/TX rings and of RX memory buffers (mbufs).
95ac718398SBernard Iremonger
96e76d7a76SJohn McNamara*   ``--port-numa-config=(port,socket)[,(port,socket)]``
97ac718398SBernard Iremonger
98ac718398SBernard Iremonger    Specify the socket on which the memory pool to be used by the port will be allocated.
99ac718398SBernard Iremonger
100e76d7a76SJohn McNamara*   ``--ring-numa-config=(port,flag,socket)[,(port,flag,socket)]``
101ac718398SBernard Iremonger
102ac718398SBernard Iremonger    Specify the socket on which the TX/RX rings for the port will be allocated.
103ac718398SBernard Iremonger    Where flag is 1 for RX, 2 for TX, and 3 for RX and TX.
104ac718398SBernard Iremonger
105e76d7a76SJohn McNamara*   ``--socket-num=N``
106ac718398SBernard Iremonger
107ac718398SBernard Iremonger    Set the socket from which all memory is allocated in NUMA mode,
108ac718398SBernard Iremonger    where 0 <= N < number of sockets on the board.
109ac718398SBernard Iremonger
110e76d7a76SJohn McNamara*   ``--mbuf-size=N``
111ac718398SBernard Iremonger
112ac718398SBernard Iremonger    Set the data size of the mbufs used to N bytes, where N < 65536. The default value is 2048.
113ac718398SBernard Iremonger
114e76d7a76SJohn McNamara*   ``--total-num-mbufs=N``
115ac718398SBernard Iremonger
116ac718398SBernard Iremonger    Set the number of mbufs to be allocated in the mbuf pools, where N > 1024.
117ac718398SBernard Iremonger
118e76d7a76SJohn McNamara*   ``--max-pkt-len=N``
119ac718398SBernard Iremonger
120ac718398SBernard Iremonger    Set the maximum packet size to N bytes, where N >= 64. The default value is 1518.
121ac718398SBernard Iremonger
1224a729092SDekel Peled*   ``--max-lro-pkt-size=N``
1234a729092SDekel Peled
1244a729092SDekel Peled    Set the maximum LRO aggregated packet size to N bytes, where N >= 64.
1254a729092SDekel Peled
126e76d7a76SJohn McNamara*   ``--eth-peers-configfile=name``
127ac718398SBernard Iremonger
128ac718398SBernard Iremonger    Use a configuration file containing the Ethernet addresses of the peer ports.
129e76d7a76SJohn McNamara    The configuration file should contain the Ethernet addresses on separate lines::
130ac718398SBernard Iremonger
131ac718398SBernard Iremonger       XX:XX:XX:XX:XX:01
132ac718398SBernard Iremonger       XX:XX:XX:XX:XX:02
133ac718398SBernard Iremonger       ...
134ac718398SBernard Iremonger
135e76d7a76SJohn McNamara*   ``--eth-peer=N,XX:XX:XX:XX:XX:XX``
136ac718398SBernard Iremonger
137e76d7a76SJohn McNamara    Set the MAC address ``XX:XX:XX:XX:XX:XX`` of the peer port N,
138e76d7a76SJohn McNamara    where 0 <= N < ``CONFIG_RTE_MAX_ETHPORTS`` from the configuration file.
139ac718398SBernard Iremonger
140bf5b2126SStephen Hemminger*   ``--tx-ip=SRC,DST``
141bf5b2126SStephen Hemminger
142bf5b2126SStephen Hemminger    Set the source and destination IP address used when doing transmit only test.
1437cc1bd46SStephen Hemminger    The defaults address values are source 198.18.0.1 and
1447cc1bd46SStephen Hemminger    destination 198.18.0.2. These are special purpose addresses
1457cc1bd46SStephen Hemminger    reserved for benchmarking (RFC 5735).
146bf5b2126SStephen Hemminger
147bf5b2126SStephen Hemminger*   ``--tx-udp=SRC[,DST]``
148bf5b2126SStephen Hemminger
149bf5b2126SStephen Hemminger    Set the source and destination UDP port number for transmit test only test.
150bf5b2126SStephen Hemminger    The default port is the port 9 which is defined for the discard protocol
151bf5b2126SStephen Hemminger    (RFC 863).
152bf5b2126SStephen Hemminger
153e76d7a76SJohn McNamara*   ``--pkt-filter-mode=mode``
154ac718398SBernard Iremonger
155e76d7a76SJohn McNamara    Set Flow Director mode where mode is either ``none`` (the default), ``signature`` or ``perfect``.
156e76d7a76SJohn McNamara    See :ref:`testpmd_flow_director` for more details.
157ac718398SBernard Iremonger
158e76d7a76SJohn McNamara*   ``--pkt-filter-report-hash=mode``
159ac718398SBernard Iremonger
160e76d7a76SJohn McNamara    Set Flow Director hash match reporting mode where mode is ``none``, ``match`` (the default) or ``always``.
161e76d7a76SJohn McNamara
162e76d7a76SJohn McNamara*   ``--pkt-filter-size=N``
163ac718398SBernard Iremonger
164ac718398SBernard Iremonger    Set Flow Director allocated memory size, where N is 64K, 128K or 256K.
165ac718398SBernard Iremonger    Sizes are in kilobytes. The default is 64.
166ac718398SBernard Iremonger
167e76d7a76SJohn McNamara*   ``--pkt-filter-flexbytes-offset=N``
168ac718398SBernard Iremonger
169ac718398SBernard Iremonger    Set the flexbytes offset.
170ac718398SBernard Iremonger    The offset is defined in words (not bytes) counted from the first byte of the destination Ethernet MAC address,
171ac718398SBernard Iremonger    where N is 0 <= N <= 32.
172ac718398SBernard Iremonger    The default value is 0x6.
173ac718398SBernard Iremonger
174e76d7a76SJohn McNamara*   ``--pkt-filter-drop-queue=N``
175ac718398SBernard Iremonger
176ac718398SBernard Iremonger    Set the drop-queue.
177ac718398SBernard Iremonger    In perfect filter mode, when a rule is added with queue = -1, the packet will be enqueued into the RX drop-queue.
178ac718398SBernard Iremonger    If the drop-queue does not exist, the packet is dropped. The default value is N=127.
179ac718398SBernard Iremonger
18079dd163fSJeff Guo*   ``--disable-crc-strip``
181ac718398SBernard Iremonger
18279dd163fSJeff Guo    Disable hardware CRC stripping.
183ac718398SBernard Iremonger
1844c3ea508SOlivier Matz*   ``--enable-lro``
1854c3ea508SOlivier Matz
1864c3ea508SOlivier Matz    Enable large receive offload.
1874c3ea508SOlivier Matz
188e76d7a76SJohn McNamara*   ``--enable-rx-cksum``
189ac718398SBernard Iremonger
190ac718398SBernard Iremonger    Enable hardware RX checksum offload.
191ac718398SBernard Iremonger
19204997938SMaciej Czekaj*   ``--enable-scatter``
19304997938SMaciej Czekaj
19404997938SMaciej Czekaj    Enable scatter (multi-segment) RX.
19504997938SMaciej Czekaj
1968b9bd0efSMoti Haimovsky*   ``--enable-hw-vlan``
197ac718398SBernard Iremonger
1988b9bd0efSMoti Haimovsky    Enable hardware VLAN.
199ac718398SBernard Iremonger
2008b9bd0efSMoti Haimovsky*   ``--enable-hw-vlan-filter``
201f2552cd5SOuyang Changchun
2028b9bd0efSMoti Haimovsky    Enable hardware VLAN filter.
203f2552cd5SOuyang Changchun
2048b9bd0efSMoti Haimovsky*   ``--enable-hw-vlan-strip``
205f2552cd5SOuyang Changchun
2068b9bd0efSMoti Haimovsky    Enable hardware VLAN strip.
207f2552cd5SOuyang Changchun
2088b9bd0efSMoti Haimovsky*   ``--enable-hw-vlan-extend``
209f2552cd5SOuyang Changchun
2108b9bd0efSMoti Haimovsky    Enable hardware VLAN extend.
211f2552cd5SOuyang Changchun
212b8577876SVivek Sharma*   ``--enable-hw-qinq-strip``
213b8577876SVivek Sharma
214b8577876SVivek Sharma    Enable hardware QINQ strip.
215b8577876SVivek Sharma
216e76d7a76SJohn McNamara*   ``--enable-drop-en``
217ac718398SBernard Iremonger
218ac718398SBernard Iremonger    Enable per-queue packet drop for packets with no descriptors.
219ac718398SBernard Iremonger
220e76d7a76SJohn McNamara*   ``--disable-rss``
221ac718398SBernard Iremonger
222ac718398SBernard Iremonger    Disable RSS (Receive Side Scaling).
223ac718398SBernard Iremonger
224e76d7a76SJohn McNamara*   ``--port-topology=mode``
225ac718398SBernard Iremonger
22648670ed6SRami Rosen    Set port topology, where mode is ``paired`` (the default), ``chained`` or ``loop``.
227e76d7a76SJohn McNamara
228e76d7a76SJohn McNamara    In ``paired`` mode, the forwarding is between pairs of ports, for example: (0,1), (2,3), (4,5).
229e76d7a76SJohn McNamara
230e76d7a76SJohn McNamara    In ``chained`` mode, the forwarding is to the next available port in the port mask, for example: (0,1), (1,2), (2,0).
231e76d7a76SJohn McNamara
232ac718398SBernard Iremonger    The ordering of the ports can be changed using the portlist testpmd runtime function.
233ac718398SBernard Iremonger
23448670ed6SRami Rosen    In ``loop`` mode, ingress traffic is simply transmitted back on the same interface.
23548670ed6SRami Rosen
236e76d7a76SJohn McNamara*   ``--forward-mode=mode``
237ac718398SBernard Iremonger
238e76d7a76SJohn McNamara    Set the forwarding mode where ``mode`` is one of the following::
239ac718398SBernard Iremonger
240e76d7a76SJohn McNamara       io (the default)
241e76d7a76SJohn McNamara       mac
242153ccd05SYong Wang       macswap
243e76d7a76SJohn McNamara       flowgen
244e76d7a76SJohn McNamara       rxonly
245e76d7a76SJohn McNamara       txonly
246e76d7a76SJohn McNamara       csum
247e76d7a76SJohn McNamara       icmpecho
248e76d7a76SJohn McNamara       ieee1588
2495b590fbeSJasvinder Singh       tm
2503c156061SJens Freimann       noisy
2512564abdaSShiri Kuzin       5tswap
252e76d7a76SJohn McNamara
253e76d7a76SJohn McNamara*   ``--rss-ip``
254ac718398SBernard Iremonger
255ac718398SBernard Iremonger    Set RSS functions for IPv4/IPv6 only.
256ac718398SBernard Iremonger
257e76d7a76SJohn McNamara*   ``--rss-udp``
258ac718398SBernard Iremonger
259ac718398SBernard Iremonger    Set RSS functions for IPv4/IPv6 and UDP.
260ac718398SBernard Iremonger
261e76d7a76SJohn McNamara*   ``--rxq=N``
262ac718398SBernard Iremonger
263ac718398SBernard Iremonger    Set the number of RX queues per port to N, where 1 <= N <= 65535.
264ac718398SBernard Iremonger    The default value is 1.
265ac718398SBernard Iremonger
266e76d7a76SJohn McNamara*   ``--rxd=N``
267ac718398SBernard Iremonger
268ac718398SBernard Iremonger    Set the number of descriptors in the RX rings to N, where N > 0.
269ac718398SBernard Iremonger    The default value is 128.
270ac718398SBernard Iremonger
271e76d7a76SJohn McNamara*   ``--txq=N``
272ac718398SBernard Iremonger
273ac718398SBernard Iremonger    Set the number of TX queues per port to N, where 1 <= N <= 65535.
274ac718398SBernard Iremonger    The default value is 1.
275ac718398SBernard Iremonger
276e76d7a76SJohn McNamara*   ``--txd=N``
277ac718398SBernard Iremonger
278ac718398SBernard Iremonger    Set the number of descriptors in the TX rings to N, where N > 0.
279ac718398SBernard Iremonger    The default value is 512.
280ac718398SBernard Iremonger
2811c69df45SOri Kam*   ``--hairpinq=N``
2821c69df45SOri Kam
2831c69df45SOri Kam    Set the number of hairpin queues per port to N, where 1 <= N <= 65535.
2841c69df45SOri Kam    The default value is 0. The number of hairpin queues are added to the
2851c69df45SOri Kam    number of TX queues and to the number of RX queues. then the first
2861c69df45SOri Kam    RX hairpin is binded to the first TX hairpin, the second RX hairpin is
2871c69df45SOri Kam    binded to the second TX hairpin and so on. The index of the first
2881c69df45SOri Kam    RX hairpin queue is the number of RX queues as configured using --rxq.
2891c69df45SOri Kam    The index of the first TX hairpin queue is the number of TX queues
2901c69df45SOri Kam    as configured using --txq.
2911c69df45SOri Kam
292e76d7a76SJohn McNamara*   ``--burst=N``
293ac718398SBernard Iremonger
294ac718398SBernard Iremonger    Set the number of packets per burst to N, where 1 <= N <= 512.
2958599ed31SRemy Horton    The default value is 32.
2968599ed31SRemy Horton    If set to 0, driver default is used if defined. Else, if driver
2978599ed31SRemy Horton    default is not defined, default of 32 is used.
298ac718398SBernard Iremonger
299e76d7a76SJohn McNamara*   ``--mbcache=N``
300ac718398SBernard Iremonger
301ac718398SBernard Iremonger    Set the cache of mbuf memory pools to N, where 0 <= N <= 512.
302ac718398SBernard Iremonger    The default value is 16.
303ac718398SBernard Iremonger
304e76d7a76SJohn McNamara*   ``--rxpt=N``
305ac718398SBernard Iremonger
306ac718398SBernard Iremonger    Set the prefetch threshold register of RX rings to N, where N >= 0.
307ac718398SBernard Iremonger    The default value is 8.
308ac718398SBernard Iremonger
309e76d7a76SJohn McNamara*   ``--rxht=N``
310ac718398SBernard Iremonger
311ac718398SBernard Iremonger    Set the host threshold register of RX rings to N, where N >= 0.
312ac718398SBernard Iremonger    The default value is 8.
313ac718398SBernard Iremonger
314e76d7a76SJohn McNamara*   ``--rxfreet=N``
315ac718398SBernard Iremonger
316ac718398SBernard Iremonger    Set the free threshold of RX descriptors to N, where 0 <= N < value of --rxd.
317ac718398SBernard Iremonger    The default value is 0.
318ac718398SBernard Iremonger
319e76d7a76SJohn McNamara*   ``--rxwt=N``
320ac718398SBernard Iremonger
321ac718398SBernard Iremonger    Set the write-back threshold register of RX rings to N, where N >= 0.
322ac718398SBernard Iremonger    The default value is 4.
323ac718398SBernard Iremonger
324e76d7a76SJohn McNamara*   ``--txpt=N``
325ac718398SBernard Iremonger
326ac718398SBernard Iremonger    Set the prefetch threshold register of TX rings to N, where N >= 0.
327ac718398SBernard Iremonger    The default value is 36.
328ac718398SBernard Iremonger
329e76d7a76SJohn McNamara*   ``--txht=N``
330ac718398SBernard Iremonger
331ac718398SBernard Iremonger    Set the host threshold register of TX rings to N, where N >= 0.
332ac718398SBernard Iremonger    The default value is 0.
333ac718398SBernard Iremonger
334e76d7a76SJohn McNamara*   ``--txwt=N``
335ac718398SBernard Iremonger
336ac718398SBernard Iremonger    Set the write-back threshold register of TX rings to N, where N >= 0.
337ac718398SBernard Iremonger    The default value is 0.
338ac718398SBernard Iremonger
339e76d7a76SJohn McNamara*   ``--txfreet=N``
340ac718398SBernard Iremonger
341e76d7a76SJohn McNamara    Set the transmit free threshold of TX rings to N, where 0 <= N <= value of ``--txd``.
342ac718398SBernard Iremonger    The default value is 0.
343ac718398SBernard Iremonger
344e76d7a76SJohn McNamara*   ``--txrst=N``
345ac718398SBernard Iremonger
346e76d7a76SJohn McNamara    Set the transmit RS bit threshold of TX rings to N, where 0 <= N <= value of ``--txd``.
347ac718398SBernard Iremonger    The default value is 0.
348ac718398SBernard Iremonger
349e76d7a76SJohn McNamara*   ``--rx-queue-stats-mapping=(port,queue,mapping)[,(port,queue,mapping)]``
350ac718398SBernard Iremonger
351ac718398SBernard Iremonger    Set the RX queues statistics counters mapping 0 <= mapping <= 15.
352ac718398SBernard Iremonger
353e76d7a76SJohn McNamara*   ``--tx-queue-stats-mapping=(port,queue,mapping)[,(port,queue,mapping)]``
354ac718398SBernard Iremonger
355ac718398SBernard Iremonger    Set the TX queues statistics counters mapping 0 <= mapping <= 15.
356ac718398SBernard Iremonger
357e76d7a76SJohn McNamara*   ``--no-flush-rx``
358ac718398SBernard Iremonger
359e76d7a76SJohn McNamara    Don't flush the RX streams before starting forwarding. Used mainly with the PCAP PMD.
360ac718398SBernard Iremonger
361e76d7a76SJohn McNamara*   ``--txpkts=X[,Y]``
362ac718398SBernard Iremonger
3632ebacaa7SMaciej Czekaj    Set TX segment sizes or total packet length. Valid for ``tx-only``
3642ebacaa7SMaciej Czekaj    and ``flowgen`` forwarding modes.
365ac718398SBernard Iremonger
36682010ef5SYongseok Koh*   ``--txonly-multi-flow``
36782010ef5SYongseok Koh
36882010ef5SYongseok Koh    Generate multiple flows in txonly mode.
36982010ef5SYongseok Koh
370e76d7a76SJohn McNamara*   ``--disable-link-check``
371ac718398SBernard Iremonger
372ac718398SBernard Iremonger    Disable check on link status when starting/stopping ports.
373b8628a0eSGaetan Rivet
3746937d210SStephen Hemminger*   ``--disable-device-start``
3756937d210SStephen Hemminger
3766937d210SStephen Hemminger    Do not automatically start all ports. This allows testing
3776937d210SStephen Hemminger    configuration of rx and tx queues before device is started
3786937d210SStephen Hemminger    for the first time.
3796937d210SStephen Hemminger
380b8628a0eSGaetan Rivet*   ``--no-lsc-interrupt``
381b8628a0eSGaetan Rivet
382b8628a0eSGaetan Rivet    Disable LSC interrupts for all ports, even those supporting it.
383b8628a0eSGaetan Rivet
384b8628a0eSGaetan Rivet*   ``--no-rmv-interrupt``
385b8628a0eSGaetan Rivet
386b8628a0eSGaetan Rivet    Disable RMV interrupts for all ports, even those supporting it.
387e25e6c70SRemy Horton
388e25e6c70SRemy Horton*   ``--bitrate-stats=N``
389e25e6c70SRemy Horton
390e25e6c70SRemy Horton    Set the logical core N to perform bitrate calculation.
3913af72783SGaetan Rivet
3920e459ffaSDong Zhou*   ``--print-event <unknown|intr_lsc|queue_state|intr_reset|vf_mbox|macsec|intr_rmv|dev_probed|dev_released|flow_aged|all>``
3933af72783SGaetan Rivet
394b6b63dfdSGaetan Rivet    Enable printing the occurrence of the designated event. Using all will
395b6b63dfdSGaetan Rivet    enable all of them.
3963af72783SGaetan Rivet
3970e459ffaSDong Zhou*   ``--mask-event <unknown|intr_lsc|queue_state|intr_reset|vf_mbox|macsec|intr_rmv|dev_probed|dev_released|flow_aged|all>``
3983af72783SGaetan Rivet
399b6b63dfdSGaetan Rivet    Disable printing the occurrence of the designated event. Using all will
400b6b63dfdSGaetan Rivet    disable all of them.
4017ee3e944SVasily Philipov
4027ee3e944SVasily Philipov*   ``--flow-isolate-all``
4037ee3e944SVasily Philipov
4047ee3e944SVasily Philipov    Providing this parameter requests flow API isolated mode on all ports at
4057ee3e944SVasily Philipov    initialization time. It ensures all traffic is received through the
4067ee3e944SVasily Philipov    configured flow rules only (see flow command).
4077ee3e944SVasily Philipov
4087ee3e944SVasily Philipov    Ports that do not support this mode are automatically discarded.
409fd8c20aaSShahaf Shuler
410fd8c20aaSShahaf Shuler*   ``--tx-offloads=0xXXXXXXXX``
411fd8c20aaSShahaf Shuler
412fd8c20aaSShahaf Shuler    Set the hexadecimal bitmask of TX queue offloads.
413fd8c20aaSShahaf Shuler    The default value is 0.
414fb73e096SJeff Guo
415fb1a5a0fSVivek Sharma*   ``--rx-offloads=0xXXXXXXXX``
416fb1a5a0fSVivek Sharma
417fb1a5a0fSVivek Sharma    Set the hexadecimal bitmask of RX queue offloads.
418fb1a5a0fSVivek Sharma    The default value is 0.
419fb1a5a0fSVivek Sharma
420fb73e096SJeff Guo*   ``--hot-plug``
421fb73e096SJeff Guo
42247ae571eSStephen Hemminger    Enable device event monitor mechanism for hotplug.
42339e5e20fSXueming Li
42439e5e20fSXueming Li*   ``--vxlan-gpe-port=N``
42539e5e20fSXueming Li
42639e5e20fSXueming Li    Set the UDP port number of tunnel VXLAN-GPE to N.
42739e5e20fSXueming Li    The default value is 4790.
428e505d84cSAnatoly Burakov
4292f60c649SOphir Munk*   ``--geneve-parsed-port=N``
4302f60c649SOphir Munk
4312f60c649SOphir Munk    Set the UDP port number that is used for parsing the GENEVE protocol to N.
4322f60c649SOphir Munk    HW may be configured with another tunnel Geneve port.
4332f60c649SOphir Munk    The default value is 6081.
4342f60c649SOphir Munk
435e505d84cSAnatoly Burakov*   ``--mlockall``
436e505d84cSAnatoly Burakov
437e505d84cSAnatoly Burakov    Enable locking all memory.
438e505d84cSAnatoly Burakov
439e505d84cSAnatoly Burakov*   ``--no-mlockall``
440e505d84cSAnatoly Burakov
441e505d84cSAnatoly Burakov    Disable locking all memory.
442c7f5dba7SAnatoly Burakov
443c7f5dba7SAnatoly Burakov*   ``--mp-alloc <native|anon|xmem|xmemhuge>``
444c7f5dba7SAnatoly Burakov
445c7f5dba7SAnatoly Burakov    Select mempool allocation mode:
446c7f5dba7SAnatoly Burakov
447c7f5dba7SAnatoly Burakov    * native: create and populate mempool using native DPDK memory
448c7f5dba7SAnatoly Burakov    * anon: create mempool using native DPDK memory, but populate using
449c7f5dba7SAnatoly Burakov      anonymous memory
450c7f5dba7SAnatoly Burakov    * xmem: create and populate mempool using externally and anonymously
451c7f5dba7SAnatoly Burakov      allocated area
452c7f5dba7SAnatoly Burakov    * xmemhuge: create and populate mempool using externally and anonymously
453c7f5dba7SAnatoly Burakov      allocated hugepage area
4543c156061SJens Freimann
4553c156061SJens Freimann*   ``--noisy-tx-sw-buffer-size``
4563c156061SJens Freimann
4573c156061SJens Freimann    Set the number of maximum elements  of the FIFO queue to be created
4583c156061SJens Freimann    for buffering packets. Only available with the noisy forwarding mode.
4593c156061SJens Freimann    The default value is 0.
4603c156061SJens Freimann
4613c156061SJens Freimann*   ``--noisy-tx-sw-buffer-flushtime=N``
4623c156061SJens Freimann
4633c156061SJens Freimann    Set the time before packets in the FIFO queue is flushed.
4643c156061SJens Freimann    Only available with the noisy forwarding mode. The default value is 0.
4653c156061SJens Freimann
4663c156061SJens Freimann*   ``--noisy-lkup-memory=N``
4673c156061SJens Freimann
468d629b7b5SJohn McNamara    Set the size of the noisy neighbor simulation memory buffer in MB to N.
4693c156061SJens Freimann    Only available with the noisy forwarding mode. The default value is 0.
4703c156061SJens Freimann
4713c156061SJens Freimann
4723c156061SJens Freimann*   ``--noisy-lkup-num-reads=N``
4733c156061SJens Freimann
474d629b7b5SJohn McNamara    Set the number of reads to be done in noisy neighbor simulation memory buffer to N.
4753c156061SJens Freimann    Only available with the noisy forwarding mode. The default value is 0.
4763c156061SJens Freimann
4773c156061SJens Freimann*   ``--noisy-lkup-num-writes=N``
4783c156061SJens Freimann
479d629b7b5SJohn McNamara    Set the number of writes to be done in noisy neighbor simulation memory buffer to N.
4803c156061SJens Freimann    Only available with the noisy forwarding mode. The default value is 0.
4813c156061SJens Freimann
4823c156061SJens Freimann*   ``--noisy-lkup-num-reads-writes=N``
4833c156061SJens Freimann
484d629b7b5SJohn McNamara    Set the number of r/w accesses to be done in noisy neighbor simulation memory buffer to N.
4853c156061SJens Freimann    Only available with the noisy forwarding mode. The default value is 0.
48659fcf854SShahaf Shuler
48759fcf854SShahaf Shuler*   ``--no-iova-contig``
48859fcf854SShahaf Shuler
48959fcf854SShahaf Shuler    Enable to create mempool which is not IOVA contiguous. Valid only with --mp-alloc=anon.
49059fcf854SShahaf Shuler    The default value is 0.
491f9295aa2SXiaoyu Min
492f9295aa2SXiaoyu Min*   ``--rx-mq-mode``
493f9295aa2SXiaoyu Min
494f9295aa2SXiaoyu Min    Set the hexadecimal bitmask of RX multi queue mode which can be enabled.
495f9295aa2SXiaoyu Min    The default value is 0x7::
496f9295aa2SXiaoyu Min
497f9295aa2SXiaoyu Min       ETH_MQ_RX_RSS_FLAG | ETH_MQ_RX_DCB_FLAG | ETH_MQ_RX_VMDQ_FLAG
498bc700b67SDharmik Thakkar
499bc700b67SDharmik Thakkar*   ``--record-core-cycles``
500bc700b67SDharmik Thakkar
501bc700b67SDharmik Thakkar    Enable measurement of CPU cycles per packet.
5020e4b1963SDharmik Thakkar
5030e4b1963SDharmik Thakkar*   ``--record-burst-stats``
5040e4b1963SDharmik Thakkar
5050e4b1963SDharmik Thakkar    Enable display of RX and TX burst stats.
506*01817b10SBing Zhao
507*01817b10SBing Zhao*   ``--hairpin-mode=0xXX``
508*01817b10SBing Zhao
509*01817b10SBing Zhao    Set the hairpin port mode with bitmask, only valid when hairpin queues number is set.
510*01817b10SBing Zhao    bit 4 - explicit Tx flow rule
511*01817b10SBing Zhao    bit 1 - two hairpin ports paired
512*01817b10SBing Zhao    bit 0 - two hairpin ports loop
513*01817b10SBing Zhao    The default value is 0. Hairpin will use single port mode and implicit Tx flow mode.
514