app: enable HW CRC strip by default

Since VF can not disable/enable HW CRC strip for non-DPDK PF drivers,
and kernel driver almost default enable that feature, if disable it in
app's rxmode, VF driver will report the VF launch failure. So this
patch default to enable HW CRC strip to let VF launch successful.

Cc: stable@dpdk.org

Signed-off-by: Jeff Guo <jia.guo@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
This commit is contained in:
Jeff Guo 2017-04-08 13:56:40 +08:00 committed by Thomas Monjalon
parent be1d4e8564
commit 79dd163fca
6 changed files with 12 additions and 12 deletions

View File

@ -153,7 +153,7 @@ usage(char* progname)
printf(" --latencystats=N: enable latency and jitter statistcs "
"monitoring on forwarding lcore id N.\n");
#endif
printf(" --crc-strip: enable CRC stripping by hardware.\n");
printf(" --disable-crc-strip: disable CRC stripping by hardware.\n");
printf(" --enable-lro: enable large receive offload.\n");
printf(" --enable-rx-cksum: enable rx hardware checksum offload.\n");
printf(" --disable-hw-vlan: disable hardware vlan.\n");
@ -533,7 +533,7 @@ launch_args_parse(int argc, char** argv)
#ifdef RTE_LIBRTE_LATENCY_STATS
{ "latencystats", 1, 0, 0 },
#endif
{ "crc-strip", 0, 0, 0 },
{ "disable-crc-strip", 0, 0, 0 },
{ "enable-lro", 0, 0, 0 },
{ "enable-rx-cksum", 0, 0, 0 },
{ "enable-scatter", 0, 0, 0 },
@ -786,8 +786,8 @@ launch_args_parse(int argc, char** argv)
" must be >= 0\n", n);
}
#endif
if (!strcmp(lgopts[opt_idx].name, "crc-strip"))
rx_mode.hw_strip_crc = 1;
if (!strcmp(lgopts[opt_idx].name, "disable-crc-strip"))
rx_mode.hw_strip_crc = 0;
if (!strcmp(lgopts[opt_idx].name, "enable-lro"))
rx_mode.enable_lro = 1;
if (!strcmp(lgopts[opt_idx].name, "enable-scatter"))

View File

@ -306,7 +306,7 @@ struct rte_eth_rxmode rx_mode = {
.hw_vlan_strip = 1, /**< VLAN strip enabled. */
.hw_vlan_extend = 0, /**< Extended VLAN disabled. */
.jumbo_frame = 0, /**< Jumbo Frame Support disabled. */
.hw_strip_crc = 0, /**< CRC stripping by hardware disabled. */
.hw_strip_crc = 1, /**< CRC stripping by hardware enabled. */
};
struct rte_fdir_conf fdir_conf = {

View File

@ -84,7 +84,7 @@ compiling the kernel and those kernel modules should be inserted.
$(testpmd) -l 2-3 -n 4 \
--vdev=virtio_user0,path=/dev/vhost-net,queue_size=1024 \
-- -i --txqflags=0x0 --disable-hw-vlan --enable-lro --crc-strip \
-- -i --txqflags=0x0 --disable-hw-vlan --enable-lro \
--enable-rx-cksum --rxd=1024 --txd=1024
This command runs testpmd with two ports, one physical NIC to communicate
@ -114,7 +114,7 @@ compiling the kernel and those kernel modules should be inserted.
$(testpmd) -l 2-3 -n 4 \
--vdev=virtio_user0,path=/dev/vhost-net,queues=2,queue_size=1024 \
-- -i --txqflags=0x0 --disable-hw-vlan --enable-lro \
--crc-strip --enable-rx-cksum --txq=2 --rxq=2 --rxd=1024 \
--enable-rx-cksum --txq=2 --rxq=2 --rxd=1024 \
--txd=1024
#. Start testpmd:

View File

@ -155,7 +155,7 @@ managed by ``librte_pmd_thunderx_nicvf`` in the Linux operating system.
.. code-block:: console
./arm64-thunderx-linuxapp-gcc/app/testpmd -l 0-3 -n 4 -w 0002:01:00.2 \
-- -i --disable-hw-vlan-filter --crc-strip --no-flush-rx \
-- -i --disable-hw-vlan-filter --no-flush-rx \
--port-topology=loop
Example output:

View File

@ -281,9 +281,9 @@ The commandline options are:
In perfect filter mode, when a rule is added with queue = -1, the packet will be enqueued into the RX drop-queue.
If the drop-queue does not exist, the packet is dropped. The default value is N=127.
* ``--crc-strip``
* ``--disable-crc-strip``
Enable hardware CRC stripping.
Disable hardware CRC stripping.
* ``--enable-lro``

View File

@ -1378,9 +1378,9 @@ Set hardware CRC stripping on or off for all ports::
testpmd> port config all crc-strip (on|off)
CRC stripping is off by default.
CRC stripping is on by default.
The ``on`` option is equivalent to the ``--crc-strip`` command-line option.
The ``off`` option is equivalent to the ``--disable-crc-strip`` command-line option.
port config - scatter
~~~~~~~~~~~~~~~~~~~~~~~