From dbec8fa67f3910c2f6db9f302d3aed3e3c5226af Mon Sep 17 00:00:00 2001 From: Florin Coras Date: Wed, 5 Jan 2022 11:31:03 -0800 Subject: dpdk: improve checksum computation Type: improvement Based on gerrit 26480 by chenmin.sun@intel.com Signed-off-by: Florin Coras Change-Id: Id8f2127f0fac5f555b38483714fe92c038875915 --- src/plugins/dpdk/device/common.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/plugins/dpdk/device/common.c') diff --git a/src/plugins/dpdk/device/common.c b/src/plugins/dpdk/device/common.c index b0aaaaf9d47..19c0c32243d 100644 --- a/src/plugins/dpdk/device/common.c +++ b/src/plugins/dpdk/device/common.c @@ -148,9 +148,12 @@ dpdk_device_setup (dpdk_device_t * xd) xd->buffer_flags = (VLIB_BUFFER_TOTAL_LENGTH_VALID | VLIB_BUFFER_EXT_HDR_VALID); - if (xd->port_conf.rxmode.offloads & DEV_RX_OFFLOAD_TCP_CKSUM) + if ((xd->port_conf.rxmode.offloads & + (DEV_RX_OFFLOAD_TCP_CKSUM | DEV_RX_OFFLOAD_UDP_CKSUM)) == + (DEV_RX_OFFLOAD_TCP_CKSUM | DEV_RX_OFFLOAD_UDP_CKSUM)) xd->buffer_flags |= (VNET_BUFFER_F_L4_CHECKSUM_COMPUTED | VNET_BUFFER_F_L4_CHECKSUM_CORRECT); + if (xd->flags & DPDK_DEVICE_FLAG_ADMIN_UP) dpdk_device_start (xd); -- cgit 1.2.3-korg