net/ice: fix Tx checksum offload
authorKevin Liu <kevinx.liu@intel.com>
Sun, 12 Dec 2021 14:35:20 +0000 (14:35 +0000)
committerQi Zhang <qi.z.zhang@intel.com>
Mon, 10 Jan 2022 09:38:05 +0000 (10:38 +0100)
commit58d212e3bc548fb6be0e343eccc921413acf2ff8
treecd29abcacb7011319df6b5174e11a0afc6ba54ac
parent285f63fc6bb72a07594af9a7652f5bae3a95eb52
net/ice: fix Tx checksum offload

The tunnel packets is missing some information after Tx forwarding.

In ice_txd_enable_offload, when set tunnel packet Tx checksum
offload enable, td_offset should be set with outer l2/l3 len instead
of inner l2/l3 len.

In ice_txd_enable_checksum, td_offset should also be set with outer
l3 len.

This patch fix the bug that the checksum engine can forward Ipv4/Ipv6
tunnel packets.

Fixes: 28f9002ab67f ("net/ice: add Tx AVX512 offload path")
Fixes: 17c7d0f9d6a4 ("net/ice: support basic Rx/Tx")
Cc: stable@dpdk.org
Signed-off-by: Kevin Liu <kevinx.liu@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
drivers/net/ice/ice_rxtx.c
drivers/net/ice/ice_rxtx_vec_common.h