From f9dc9c4629bb9756013f7c727d67e0d3990cff3c Mon Sep 17 00:00:00 2001 From: Damjan Marion Date: Fri, 15 Dec 2017 22:05:04 +0100 Subject: [PATCH] dpdk: unset ETH_TXQ_FLAGS_NOXSUMS only for selected PMDs Change-Id: I1699e440052faa317b06d46692e8656a41d21bfe Signed-off-by: Damjan Marion --- src/plugins/dpdk/device/init.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/plugins/dpdk/device/init.c b/src/plugins/dpdk/device/init.c index 6041a3ca2a8..1c630be29bf 100755 --- a/src/plugins/dpdk/device/init.c +++ b/src/plugins/dpdk/device/init.c @@ -314,9 +314,6 @@ dpdk_lib_init (dpdk_main_t * dm) clib_memcpy (&xd->tx_conf, &dev_info.default_txconf, sizeof (struct rte_eth_txconf)); - if (dm->conf->no_tx_checksum_offload == 0) - xd->tx_conf.txq_flags &= ~ETH_TXQ_FLAGS_NOXSUMS; - if (dm->conf->no_multi_seg) { xd->tx_conf.txq_flags |= ETH_TXQ_FLAGS_NOMULTSEGS; @@ -388,8 +385,14 @@ dpdk_lib_init (dpdk_main_t * dm) case VNET_DPDK_PMD_IXGBE: case VNET_DPDK_PMD_I40E: xd->port_type = port_type_from_speed_capa (&dev_info); - xd->flags |= DPDK_DEVICE_FLAG_TX_OFFLOAD | - DPDK_DEVICE_FLAG_INTEL_PHDR_CKSUM; + if (dm->conf->no_tx_checksum_offload == 0) + { + xd->tx_conf.txq_flags &= ~ETH_TXQ_FLAGS_NOXSUMS; + xd->flags |= + DPDK_DEVICE_FLAG_TX_OFFLOAD | + DPDK_DEVICE_FLAG_INTEL_PHDR_CKSUM; + } + break; case VNET_DPDK_PMD_CXGBE: -- 2.16.6