app/testpmd: set and clear keep CRC offload flag
authorBernard Iremonger <bernard.iremonger@intel.com>
Wed, 1 Aug 2018 08:13:19 +0000 (09:13 +0100)
committerThomas Monjalon <thomas@monjalon.net>
Wed, 1 Aug 2018 14:36:04 +0000 (16:36 +0200)
If the "port config all crc-strip on" command is issued,
The DEV_RX_OFFLOAD_KEEP_CRC offload flag should be cleared.

If the "port config all crc-strip off command is issued,
The DEV_RX_OFFLOAD_KEEP_CRC offload flag should be set.

Fixes: 70815c9ecadd ("ethdev: add new offload flag to keep CRC")

Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
app/test-pmd/cmdline.c

index 8708875..54ba2f5 100644 (file)
@@ -1897,11 +1897,13 @@ cmd_config_rx_mode_flag_parsed(void *parsed_result,
                port = &ports[pid];
                rx_offloads = port->dev_conf.rxmode.offloads;
                if (!strcmp(res->name, "crc-strip")) {
-                       if (!strcmp(res->value, "on"))
+                       if (!strcmp(res->value, "on")) {
                                rx_offloads |= DEV_RX_OFFLOAD_CRC_STRIP;
-                       else if (!strcmp(res->value, "off"))
+                               rx_offloads &= ~DEV_RX_OFFLOAD_KEEP_CRC;
+                       } else if (!strcmp(res->value, "off")) {
+                               rx_offloads |= DEV_RX_OFFLOAD_KEEP_CRC;
                                rx_offloads &= ~DEV_RX_OFFLOAD_CRC_STRIP;
-                       else {
+                       else {
                                printf("Unknown parameter\n");
                                return;
                        }