1ac718398SBernard Iremonger.. BSD LICENSE 2ac718398SBernard Iremonger Copyright(c) 2010-2014 Intel Corporation. All rights reserved. 3ac718398SBernard Iremonger All rights reserved. 4ac718398SBernard Iremonger 5ac718398SBernard Iremonger Redistribution and use in source and binary forms, with or without 6ac718398SBernard Iremonger modification, are permitted provided that the following conditions 7ac718398SBernard Iremonger are met: 8ac718398SBernard Iremonger 9ac718398SBernard Iremonger * Redistributions of source code must retain the above copyright 10ac718398SBernard Iremonger notice, this list of conditions and the following disclaimer. 11ac718398SBernard Iremonger * Redistributions in binary form must reproduce the above copyright 12ac718398SBernard Iremonger notice, this list of conditions and the following disclaimer in 13ac718398SBernard Iremonger the documentation and/or other materials provided with the 14ac718398SBernard Iremonger distribution. 15ac718398SBernard Iremonger * Neither the name of Intel Corporation nor the names of its 16ac718398SBernard Iremonger contributors may be used to endorse or promote products derived 17ac718398SBernard Iremonger from this software without specific prior written permission. 18ac718398SBernard Iremonger 19ac718398SBernard Iremonger THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 20ac718398SBernard Iremonger "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 21ac718398SBernard Iremonger LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 22ac718398SBernard Iremonger A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 23ac718398SBernard Iremonger OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 24ac718398SBernard Iremonger SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 25ac718398SBernard Iremonger LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 26ac718398SBernard Iremonger DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 27ac718398SBernard Iremonger THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 28ac718398SBernard Iremonger (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29ac718398SBernard Iremonger OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30ac718398SBernard Iremonger 31ac718398SBernard IremongerRunning the Application 32ac718398SBernard Iremonger======================= 33ac718398SBernard Iremonger 34ac718398SBernard IremongerEAL Command-line Options 35ac718398SBernard Iremonger------------------------ 36ac718398SBernard Iremonger 37ac718398SBernard IremongerThe following are the EAL command-line options that can be used in conjunction with the testpmd, 38bd89cca3SSiobhan Butleror any other DPDK application. 39e76d7a76SJohn McNamaraSee the DPDK Getting Started Guides for more information on these options. 40ac718398SBernard Iremonger 41e76d7a76SJohn McNamara* ``-c COREMASK`` 42ac718398SBernard Iremonger 43ac718398SBernard Iremonger Set the hexadecimal bitmask of the cores to run on. 44ac718398SBernard Iremonger 45e76d7a76SJohn McNamara* ``-l CORELIST`` 46e3ab7a94SPablo de Lara 47e3ab7a94SPablo de Lara List of cores to run on 48e3ab7a94SPablo de Lara 49e76d7a76SJohn McNamara The argument format is ``<c1>[-c2][,c3[-c4],...]`` 50e76d7a76SJohn McNamara where ``c1``, ``c2``, etc are core indexes between 0 and 128. 51e3ab7a94SPablo de Lara 52e76d7a76SJohn McNamara* ``--lcores COREMAP`` 53e3ab7a94SPablo de Lara 54e3ab7a94SPablo de Lara Map lcore set to physical cpu set 55e3ab7a94SPablo de Lara 56e76d7a76SJohn McNamara The argument format is:: 57e3ab7a94SPablo de Lara 58e76d7a76SJohn McNamara <lcores[@cpus]>[<,lcores[@cpus]>...] 59e3ab7a94SPablo de Lara 60e76d7a76SJohn McNamara Lcore and CPU lists are grouped by ``(`` and ``)`` Within the group. 61e76d7a76SJohn McNamara The ``-`` character is used as a range separator and ``,`` is used as a single number separator. 62e76d7a76SJohn McNamara The grouping ``()`` can be omitted for single element group. 63e76d7a76SJohn McNamara The ``@`` can be omitted if cpus and lcores have the same value. 64e3ab7a94SPablo de Lara 65e76d7a76SJohn McNamara* ``--master-lcore ID`` 66e3ab7a94SPablo de Lara 67e76d7a76SJohn McNamara Core ID that is used as master. 68e76d7a76SJohn McNamara 69e76d7a76SJohn McNamara* ``-n NUM`` 70ac718398SBernard Iremonger 71ac718398SBernard Iremonger Set the number of memory channels to use. 72ac718398SBernard Iremonger 73e76d7a76SJohn McNamara* ``-b, --pci-blacklist domain:bus:devid.func`` 74ac718398SBernard Iremonger 757dbdc537SRami Rosen Blacklist a PCI device to prevent EAL from using it. Multiple -b options are allowed. 76ac718398SBernard Iremonger 77e76d7a76SJohn McNamara* ``-d LIB.so`` 78ac718398SBernard Iremonger 79ac718398SBernard Iremonger Load an external driver. Multiple -d options are allowed. 80ac718398SBernard Iremonger 81e76d7a76SJohn McNamara* ``-w, --pci-whitelist domain:bus:devid:func`` 82ac718398SBernard Iremonger 83ac718398SBernard Iremonger Add a PCI device in white list. 84ac718398SBernard Iremonger 85e76d7a76SJohn McNamara* ``-m MB`` 86ac718398SBernard Iremonger 87e76d7a76SJohn McNamara Memory to allocate. See also ``--socket-mem``. 88ac718398SBernard Iremonger 89e76d7a76SJohn McNamara* ``-r NUM`` 90ac718398SBernard Iremonger 91ac718398SBernard Iremonger Set the number of memory ranks (auto-detected by default). 92ac718398SBernard Iremonger 93e76d7a76SJohn McNamara* ``-v`` 94ac718398SBernard Iremonger 95ac718398SBernard Iremonger Display the version information on startup. 96ac718398SBernard Iremonger 97e76d7a76SJohn McNamara* ``--xen-dom0`` 98ac718398SBernard Iremonger 99ac718398SBernard Iremonger Support application running on Xen Domain0 without hugetlbfs. 100ac718398SBernard Iremonger 101e76d7a76SJohn McNamara* ``--syslog`` 102ac718398SBernard Iremonger 103ac718398SBernard Iremonger Set the syslog facility. 104ac718398SBernard Iremonger 105e76d7a76SJohn McNamara* ``--socket-mem`` 106ac718398SBernard Iremonger 107ac718398SBernard Iremonger Set the memory to allocate on specific sockets (use comma separated values). 108ac718398SBernard Iremonger 109e76d7a76SJohn McNamara* ``--huge-dir`` 110ac718398SBernard Iremonger 111ac718398SBernard Iremonger Specify the directory where the hugetlbfs is mounted. 112ac718398SBernard Iremonger 113*a103a97eSSantosh Shukla* ``mbuf-pool-ops-name``: 114*a103a97eSSantosh Shukla 115*a103a97eSSantosh Shukla Pool ops name for mbuf to use. 116*a103a97eSSantosh Shukla 117e76d7a76SJohn McNamara* ``--proc-type`` 118ac718398SBernard Iremonger 119ac718398SBernard Iremonger Set the type of the current process. 120ac718398SBernard Iremonger 121e76d7a76SJohn McNamara* ``--file-prefix`` 122ac718398SBernard Iremonger 123ac718398SBernard Iremonger Prefix for hugepage filenames. 124ac718398SBernard Iremonger 125e76d7a76SJohn McNamara* ``-vmware-tsc-map`` 126ac718398SBernard Iremonger 127ac718398SBernard Iremonger Use VMware TSC map instead of native RDTSC. 128ac718398SBernard Iremonger 129e76d7a76SJohn McNamara* ``--vdev`` 130ac718398SBernard Iremonger 131e76d7a76SJohn McNamara Add a virtual device using the format:: 132ac718398SBernard Iremonger 133e76d7a76SJohn McNamara <driver><id>[,key=val, ...] 134e76d7a76SJohn McNamara 135e76d7a76SJohn McNamara For example:: 136e76d7a76SJohn McNamara 13758c82067SThomas Monjalon --vdev 'net_pcap0,rx_pcap=input.pcap,tx_pcap=output.pcap' 138e76d7a76SJohn McNamara 139e76d7a76SJohn McNamara* ``--base-virtaddr`` 140ac718398SBernard Iremonger 141ac718398SBernard Iremonger Specify base virtual address. 142ac718398SBernard Iremonger 143e76d7a76SJohn McNamara* ``--create-uio-dev`` 144ac718398SBernard Iremonger 145e76d7a76SJohn McNamara Create ``/dev/uioX`` (usually done by hotplug). 146ac718398SBernard Iremonger 147e76d7a76SJohn McNamara* ``--no-shconf`` 148ac718398SBernard Iremonger 149e76d7a76SJohn McNamara No shared config (mmap-ed files). 150ac718398SBernard Iremonger 151e76d7a76SJohn McNamara* ``--no-pci`` 152ac718398SBernard Iremonger 153ac718398SBernard Iremonger Disable pci. 154ac718398SBernard Iremonger 155e76d7a76SJohn McNamara* ``--no-hpet`` 156ac718398SBernard Iremonger 157ac718398SBernard Iremonger Disable hpet. 158ac718398SBernard Iremonger 159e76d7a76SJohn McNamara* ``--no-huge`` 160ac718398SBernard Iremonger 161ac718398SBernard Iremonger Use malloc instead of hugetlbfs. 162ac718398SBernard Iremonger 163ac718398SBernard Iremonger 164ac718398SBernard IremongerTestpmd Command-line Options 165ac718398SBernard Iremonger---------------------------- 166ac718398SBernard Iremonger 167ac718398SBernard IremongerThe following are the command-line options for the testpmd applications. 168e76d7a76SJohn McNamaraThey must be separated from the EAL options, shown in the previous section, with a ``--`` separator: 169ac718398SBernard Iremonger 170ac718398SBernard Iremonger.. code-block:: console 171ac718398SBernard Iremonger 17235b09d76SKeith Wiles sudo ./testpmd -l 0-3 -n 4 -- -i --portmask=0x1 --nb-cores=2 173ac718398SBernard Iremonger 174e76d7a76SJohn McNamaraThe commandline options are: 175e76d7a76SJohn McNamara 176e76d7a76SJohn McNamara* ``-i, --interactive`` 177ac718398SBernard Iremonger 178ac718398SBernard Iremonger Run testpmd in interactive mode. 179ac718398SBernard Iremonger In this mode, the testpmd starts with a prompt that can be used to start and stop forwarding, 180ac718398SBernard Iremonger configure the application and display stats on the current packet processing session. 181e76d7a76SJohn McNamara See :ref:`testpmd_runtime` for more details. 182ac718398SBernard Iremonger 183ac718398SBernard Iremonger In non-interactive mode, 184ac718398SBernard Iremonger the application starts with the configuration specified on the command-line and 185ac718398SBernard Iremonger immediately enters forwarding mode. 186ac718398SBernard Iremonger 187e76d7a76SJohn McNamara* ``-h, --help`` 188ac718398SBernard Iremonger 189ac718398SBernard Iremonger Display a help message and quit. 190ac718398SBernard Iremonger 191e76d7a76SJohn McNamara* ``-a, --auto-start`` 192ac718398SBernard Iremonger 193e76d7a76SJohn McNamara Start forwarding on initialization. 194ac718398SBernard Iremonger 19599cabef0SPablo de Lara* ``--tx-first`` 19699cabef0SPablo de Lara 19799cabef0SPablo de Lara Start forwarding, after sending a burst of packets first. 19899cabef0SPablo de Lara 19999cabef0SPablo de Lara.. Note:: 20099cabef0SPablo de Lara 20199cabef0SPablo de Lara This flag should be only used in non-interactive mode. 20299cabef0SPablo de Lara 203cfea1f30SPablo de Lara* ``--stats-period PERIOD`` 204cfea1f30SPablo de Lara 205cfea1f30SPablo de Lara Display statistics every PERIOD seconds, if interactive mode is disabled. 206cfea1f30SPablo de Lara The default value is 0, which means that the statistics will not be displayed. 207cfea1f30SPablo de Lara 208e76d7a76SJohn McNamara* ``--nb-cores=N`` 209ac718398SBernard Iremonger 210ac718398SBernard Iremonger Set the number of forwarding cores, 211e76d7a76SJohn McNamara where 1 <= N <= "number of cores" or ``CONFIG_RTE_MAX_LCORE`` from the configuration file. 212ac718398SBernard Iremonger The default value is 1. 213ac718398SBernard Iremonger 214e76d7a76SJohn McNamara* ``--nb-ports=N`` 215ac718398SBernard Iremonger 216ac718398SBernard Iremonger Set the number of forwarding ports, 217e76d7a76SJohn McNamara where 1 <= N <= "number of ports" on the board or ``CONFIG_RTE_MAX_ETHPORTS`` from the configuration file. 218ac718398SBernard Iremonger The default value is the number of ports on the board. 219ac718398SBernard Iremonger 220e76d7a76SJohn McNamara* ``--coremask=0xXX`` 221ac718398SBernard Iremonger 222ac718398SBernard Iremonger Set the hexadecimal bitmask of the cores running the packet forwarding test. 223ac718398SBernard Iremonger The master lcore is reserved for command line parsing only and cannot be masked on for packet forwarding. 224ac718398SBernard Iremonger 225e76d7a76SJohn McNamara* ``--portmask=0xXX`` 226ac718398SBernard Iremonger 227ac718398SBernard Iremonger Set the hexadecimal bitmask of the ports used by the packet forwarding test. 228ac718398SBernard Iremonger 229e76d7a76SJohn McNamara* ``--numa`` 230ac718398SBernard Iremonger 231999b2ee0SBruce Richardson Enable NUMA-aware allocation of RX/TX rings and of RX memory buffers 232999b2ee0SBruce Richardson (mbufs). [Default setting] 233999b2ee0SBruce Richardson 234999b2ee0SBruce Richardson* ``--no-numa`` 235999b2ee0SBruce Richardson 236999b2ee0SBruce Richardson Disable NUMA-aware allocation of RX/TX rings and of RX memory buffers (mbufs). 237ac718398SBernard Iremonger 238e76d7a76SJohn McNamara* ``--port-numa-config=(port,socket)[,(port,socket)]`` 239ac718398SBernard Iremonger 240ac718398SBernard Iremonger Specify the socket on which the memory pool to be used by the port will be allocated. 241ac718398SBernard Iremonger 242e76d7a76SJohn McNamara* ``--ring-numa-config=(port,flag,socket)[,(port,flag,socket)]`` 243ac718398SBernard Iremonger 244ac718398SBernard Iremonger Specify the socket on which the TX/RX rings for the port will be allocated. 245ac718398SBernard Iremonger Where flag is 1 for RX, 2 for TX, and 3 for RX and TX. 246ac718398SBernard Iremonger 247e76d7a76SJohn McNamara* ``--socket-num=N`` 248ac718398SBernard Iremonger 249ac718398SBernard Iremonger Set the socket from which all memory is allocated in NUMA mode, 250ac718398SBernard Iremonger where 0 <= N < number of sockets on the board. 251ac718398SBernard Iremonger 252e76d7a76SJohn McNamara* ``--mbuf-size=N`` 253ac718398SBernard Iremonger 254ac718398SBernard Iremonger Set the data size of the mbufs used to N bytes, where N < 65536. The default value is 2048. 255ac718398SBernard Iremonger 256e76d7a76SJohn McNamara* ``--total-num-mbufs=N`` 257ac718398SBernard Iremonger 258ac718398SBernard Iremonger Set the number of mbufs to be allocated in the mbuf pools, where N > 1024. 259ac718398SBernard Iremonger 260e76d7a76SJohn McNamara* ``--max-pkt-len=N`` 261ac718398SBernard Iremonger 262ac718398SBernard Iremonger Set the maximum packet size to N bytes, where N >= 64. The default value is 1518. 263ac718398SBernard Iremonger 264e76d7a76SJohn McNamara* ``--eth-peers-configfile=name`` 265ac718398SBernard Iremonger 266ac718398SBernard Iremonger Use a configuration file containing the Ethernet addresses of the peer ports. 267e76d7a76SJohn McNamara The configuration file should contain the Ethernet addresses on separate lines:: 268ac718398SBernard Iremonger 269ac718398SBernard Iremonger XX:XX:XX:XX:XX:01 270ac718398SBernard Iremonger XX:XX:XX:XX:XX:02 271ac718398SBernard Iremonger ... 272ac718398SBernard Iremonger 273ac718398SBernard Iremonger 274e76d7a76SJohn McNamara* ``--eth-peer=N,XX:XX:XX:XX:XX:XX`` 275ac718398SBernard Iremonger 276e76d7a76SJohn McNamara Set the MAC address ``XX:XX:XX:XX:XX:XX`` of the peer port N, 277e76d7a76SJohn McNamara where 0 <= N < ``CONFIG_RTE_MAX_ETHPORTS`` from the configuration file. 278ac718398SBernard Iremonger 279e76d7a76SJohn McNamara* ``--pkt-filter-mode=mode`` 280ac718398SBernard Iremonger 281e76d7a76SJohn McNamara Set Flow Director mode where mode is either ``none`` (the default), ``signature`` or ``perfect``. 282e76d7a76SJohn McNamara See :ref:`testpmd_flow_director` for more details. 283ac718398SBernard Iremonger 284e76d7a76SJohn McNamara* ``--pkt-filter-report-hash=mode`` 285ac718398SBernard Iremonger 286e76d7a76SJohn McNamara Set Flow Director hash match reporting mode where mode is ``none``, ``match`` (the default) or ``always``. 287e76d7a76SJohn McNamara 288e76d7a76SJohn McNamara* ``--pkt-filter-size=N`` 289ac718398SBernard Iremonger 290ac718398SBernard Iremonger Set Flow Director allocated memory size, where N is 64K, 128K or 256K. 291ac718398SBernard Iremonger Sizes are in kilobytes. The default is 64. 292ac718398SBernard Iremonger 293e76d7a76SJohn McNamara* ``--pkt-filter-flexbytes-offset=N`` 294ac718398SBernard Iremonger 295ac718398SBernard Iremonger Set the flexbytes offset. 296ac718398SBernard Iremonger The offset is defined in words (not bytes) counted from the first byte of the destination Ethernet MAC address, 297ac718398SBernard Iremonger where N is 0 <= N <= 32. 298ac718398SBernard Iremonger The default value is 0x6. 299ac718398SBernard Iremonger 300e76d7a76SJohn McNamara* ``--pkt-filter-drop-queue=N`` 301ac718398SBernard Iremonger 302ac718398SBernard Iremonger Set the drop-queue. 303ac718398SBernard Iremonger In perfect filter mode, when a rule is added with queue = -1, the packet will be enqueued into the RX drop-queue. 304ac718398SBernard Iremonger If the drop-queue does not exist, the packet is dropped. The default value is N=127. 305ac718398SBernard Iremonger 30679dd163fSJeff Guo* ``--disable-crc-strip`` 307ac718398SBernard Iremonger 30879dd163fSJeff Guo Disable hardware CRC stripping. 309ac718398SBernard Iremonger 3104c3ea508SOlivier Matz* ``--enable-lro`` 3114c3ea508SOlivier Matz 3124c3ea508SOlivier Matz Enable large receive offload. 3134c3ea508SOlivier Matz 314e76d7a76SJohn McNamara* ``--enable-rx-cksum`` 315ac718398SBernard Iremonger 316ac718398SBernard Iremonger Enable hardware RX checksum offload. 317ac718398SBernard Iremonger 31804997938SMaciej Czekaj* ``--enable-scatter`` 31904997938SMaciej Czekaj 32004997938SMaciej Czekaj Enable scatter (multi-segment) RX. 32104997938SMaciej Czekaj 322e76d7a76SJohn McNamara* ``--disable-hw-vlan`` 323ac718398SBernard Iremonger 324ac718398SBernard Iremonger Disable hardware VLAN. 325ac718398SBernard Iremonger 326e76d7a76SJohn McNamara* ``--disable-hw-vlan-filter`` 327f2552cd5SOuyang Changchun 328f2552cd5SOuyang Changchun Disable hardware VLAN filter. 329f2552cd5SOuyang Changchun 330e76d7a76SJohn McNamara* ``--disable-hw-vlan-strip`` 331f2552cd5SOuyang Changchun 332f2552cd5SOuyang Changchun Disable hardware VLAN strip. 333f2552cd5SOuyang Changchun 334e76d7a76SJohn McNamara* ``--disable-hw-vlan-extend`` 335f2552cd5SOuyang Changchun 336f2552cd5SOuyang Changchun Disable hardware VLAN extend. 337f2552cd5SOuyang Changchun 338e76d7a76SJohn McNamara* ``--enable-drop-en`` 339ac718398SBernard Iremonger 340ac718398SBernard Iremonger Enable per-queue packet drop for packets with no descriptors. 341ac718398SBernard Iremonger 342e76d7a76SJohn McNamara* ``--disable-rss`` 343ac718398SBernard Iremonger 344ac718398SBernard Iremonger Disable RSS (Receive Side Scaling). 345ac718398SBernard Iremonger 346e76d7a76SJohn McNamara* ``--port-topology=mode`` 347ac718398SBernard Iremonger 348e76d7a76SJohn McNamara Set port topology, where mode is ``paired`` (the default) or ``chained``. 349e76d7a76SJohn McNamara 350e76d7a76SJohn McNamara In ``paired`` mode, the forwarding is between pairs of ports, for example: (0,1), (2,3), (4,5). 351e76d7a76SJohn McNamara 352e76d7a76SJohn McNamara In ``chained`` mode, the forwarding is to the next available port in the port mask, for example: (0,1), (1,2), (2,0). 353e76d7a76SJohn McNamara 354ac718398SBernard Iremonger The ordering of the ports can be changed using the portlist testpmd runtime function. 355ac718398SBernard Iremonger 356e76d7a76SJohn McNamara* ``--forward-mode=mode`` 357ac718398SBernard Iremonger 358e76d7a76SJohn McNamara Set the forwarding mode where ``mode`` is one of the following:: 359ac718398SBernard Iremonger 360e76d7a76SJohn McNamara io (the default) 361e76d7a76SJohn McNamara mac 362e76d7a76SJohn McNamara mac_swap 363e76d7a76SJohn McNamara flowgen 364e76d7a76SJohn McNamara rxonly 365e76d7a76SJohn McNamara txonly 366e76d7a76SJohn McNamara csum 367e76d7a76SJohn McNamara icmpecho 368e76d7a76SJohn McNamara ieee1588 369e76d7a76SJohn McNamara 370e76d7a76SJohn McNamara* ``--rss-ip`` 371ac718398SBernard Iremonger 372ac718398SBernard Iremonger Set RSS functions for IPv4/IPv6 only. 373ac718398SBernard Iremonger 374e76d7a76SJohn McNamara* ``--rss-udp`` 375ac718398SBernard Iremonger 376ac718398SBernard Iremonger Set RSS functions for IPv4/IPv6 and UDP. 377ac718398SBernard Iremonger 378e76d7a76SJohn McNamara* ``--rxq=N`` 379ac718398SBernard Iremonger 380ac718398SBernard Iremonger Set the number of RX queues per port to N, where 1 <= N <= 65535. 381ac718398SBernard Iremonger The default value is 1. 382ac718398SBernard Iremonger 383e76d7a76SJohn McNamara* ``--rxd=N`` 384ac718398SBernard Iremonger 385ac718398SBernard Iremonger Set the number of descriptors in the RX rings to N, where N > 0. 386ac718398SBernard Iremonger The default value is 128. 387ac718398SBernard Iremonger 388e76d7a76SJohn McNamara* ``--txq=N`` 389ac718398SBernard Iremonger 390ac718398SBernard Iremonger Set the number of TX queues per port to N, where 1 <= N <= 65535. 391ac718398SBernard Iremonger The default value is 1. 392ac718398SBernard Iremonger 393e76d7a76SJohn McNamara* ``--txd=N`` 394ac718398SBernard Iremonger 395ac718398SBernard Iremonger Set the number of descriptors in the TX rings to N, where N > 0. 396ac718398SBernard Iremonger The default value is 512. 397ac718398SBernard Iremonger 398e76d7a76SJohn McNamara* ``--burst=N`` 399ac718398SBernard Iremonger 400ac718398SBernard Iremonger Set the number of packets per burst to N, where 1 <= N <= 512. 401ac718398SBernard Iremonger The default value is 16. 402ac718398SBernard Iremonger 403e76d7a76SJohn McNamara* ``--mbcache=N`` 404ac718398SBernard Iremonger 405ac718398SBernard Iremonger Set the cache of mbuf memory pools to N, where 0 <= N <= 512. 406ac718398SBernard Iremonger The default value is 16. 407ac718398SBernard Iremonger 408e76d7a76SJohn McNamara* ``--rxpt=N`` 409ac718398SBernard Iremonger 410ac718398SBernard Iremonger Set the prefetch threshold register of RX rings to N, where N >= 0. 411ac718398SBernard Iremonger The default value is 8. 412ac718398SBernard Iremonger 413e76d7a76SJohn McNamara* ``--rxht=N`` 414ac718398SBernard Iremonger 415ac718398SBernard Iremonger Set the host threshold register of RX rings to N, where N >= 0. 416ac718398SBernard Iremonger The default value is 8. 417ac718398SBernard Iremonger 418e76d7a76SJohn McNamara* ``--rxfreet=N`` 419ac718398SBernard Iremonger 420ac718398SBernard Iremonger Set the free threshold of RX descriptors to N, where 0 <= N < value of --rxd. 421ac718398SBernard Iremonger The default value is 0. 422ac718398SBernard Iremonger 423e76d7a76SJohn McNamara* ``--rxwt=N`` 424ac718398SBernard Iremonger 425ac718398SBernard Iremonger Set the write-back threshold register of RX rings to N, where N >= 0. 426ac718398SBernard Iremonger The default value is 4. 427ac718398SBernard Iremonger 428e76d7a76SJohn McNamara* ``--txpt=N`` 429ac718398SBernard Iremonger 430ac718398SBernard Iremonger Set the prefetch threshold register of TX rings to N, where N >= 0. 431ac718398SBernard Iremonger The default value is 36. 432ac718398SBernard Iremonger 433e76d7a76SJohn McNamara* ``--txht=N`` 434ac718398SBernard Iremonger 435ac718398SBernard Iremonger Set the host threshold register of TX rings to N, where N >= 0. 436ac718398SBernard Iremonger The default value is 0. 437ac718398SBernard Iremonger 438e76d7a76SJohn McNamara* ``--txwt=N`` 439ac718398SBernard Iremonger 440ac718398SBernard Iremonger Set the write-back threshold register of TX rings to N, where N >= 0. 441ac718398SBernard Iremonger The default value is 0. 442ac718398SBernard Iremonger 443e76d7a76SJohn McNamara* ``--txfreet=N`` 444ac718398SBernard Iremonger 445e76d7a76SJohn McNamara Set the transmit free threshold of TX rings to N, where 0 <= N <= value of ``--txd``. 446ac718398SBernard Iremonger The default value is 0. 447ac718398SBernard Iremonger 448e76d7a76SJohn McNamara* ``--txrst=N`` 449ac718398SBernard Iremonger 450e76d7a76SJohn McNamara Set the transmit RS bit threshold of TX rings to N, where 0 <= N <= value of ``--txd``. 451ac718398SBernard Iremonger The default value is 0. 452ac718398SBernard Iremonger 453e76d7a76SJohn McNamara* ``--txqflags=0xXXXXXXXX`` 454ac718398SBernard Iremonger 455ac718398SBernard Iremonger Set the hexadecimal bitmask of TX queue flags, where 0 <= N <= 0x7FFFFFFF. 456ac718398SBernard Iremonger The default value is 0. 457ac718398SBernard Iremonger 458e76d7a76SJohn McNamara .. note:: 459be2d7a05SPablo de Lara 460e76d7a76SJohn McNamara When using hardware offload functions such as vlan or checksum 461e76d7a76SJohn McNamara add ``txqflags=0`` to force the full-featured TX code path. 462e76d7a76SJohn McNamara In some PMDs this may already be the default. 463be2d7a05SPablo de Lara 464e76d7a76SJohn McNamara 465e76d7a76SJohn McNamara* ``--rx-queue-stats-mapping=(port,queue,mapping)[,(port,queue,mapping)]`` 466ac718398SBernard Iremonger 467ac718398SBernard Iremonger Set the RX queues statistics counters mapping 0 <= mapping <= 15. 468ac718398SBernard Iremonger 469e76d7a76SJohn McNamara* ``--tx-queue-stats-mapping=(port,queue,mapping)[,(port,queue,mapping)]`` 470ac718398SBernard Iremonger 471ac718398SBernard Iremonger Set the TX queues statistics counters mapping 0 <= mapping <= 15. 472ac718398SBernard Iremonger 473e76d7a76SJohn McNamara* ``--no-flush-rx`` 474ac718398SBernard Iremonger 475e76d7a76SJohn McNamara Don't flush the RX streams before starting forwarding. Used mainly with the PCAP PMD. 476ac718398SBernard Iremonger 477e76d7a76SJohn McNamara* ``--txpkts=X[,Y]`` 478ac718398SBernard Iremonger 4792ebacaa7SMaciej Czekaj Set TX segment sizes or total packet length. Valid for ``tx-only`` 4802ebacaa7SMaciej Czekaj and ``flowgen`` forwarding modes. 481ac718398SBernard Iremonger 482e76d7a76SJohn McNamara* ``--disable-link-check`` 483ac718398SBernard Iremonger 484ac718398SBernard Iremonger Disable check on link status when starting/stopping ports. 485b8628a0eSGaetan Rivet 486b8628a0eSGaetan Rivet* ``--no-lsc-interrupt`` 487b8628a0eSGaetan Rivet 488b8628a0eSGaetan Rivet Disable LSC interrupts for all ports, even those supporting it. 489b8628a0eSGaetan Rivet 490b8628a0eSGaetan Rivet* ``--no-rmv-interrupt`` 491b8628a0eSGaetan Rivet 492b8628a0eSGaetan Rivet Disable RMV interrupts for all ports, even those supporting it. 493e25e6c70SRemy Horton 494e25e6c70SRemy Horton* ``--bitrate-stats=N`` 495e25e6c70SRemy Horton 496e25e6c70SRemy Horton Set the logical core N to perform bitrate calculation. 4973af72783SGaetan Rivet 498b6b63dfdSGaetan Rivet* ``--print-event <unknown|intr_lsc|queue_state|intr_reset|vf_mbox|macsec|intr_rmv|all>`` 4993af72783SGaetan Rivet 500b6b63dfdSGaetan Rivet Enable printing the occurrence of the designated event. Using all will 501b6b63dfdSGaetan Rivet enable all of them. 5023af72783SGaetan Rivet 503b6b63dfdSGaetan Rivet* ``--mask-event <unknown|intr_lsc|queue_state|intr_reset|vf_mbox|macsec|intr_rmv|all>`` 5043af72783SGaetan Rivet 505b6b63dfdSGaetan Rivet Disable printing the occurrence of the designated event. Using all will 506b6b63dfdSGaetan Rivet disable all of them. 5077ee3e944SVasily Philipov 5087ee3e944SVasily Philipov* ``--flow-isolate-all`` 5097ee3e944SVasily Philipov 5107ee3e944SVasily Philipov Providing this parameter requests flow API isolated mode on all ports at 5117ee3e944SVasily Philipov initialization time. It ensures all traffic is received through the 5127ee3e944SVasily Philipov configured flow rules only (see flow command). 5137ee3e944SVasily Philipov 5147ee3e944SVasily Philipov Ports that do not support this mode are automatically discarded. 515