[PATCH v2 0/4] net/ice: support outer checksum in vector Tx
Anurag Mandal
anurag.mandal at intel.com
Mon Aug 31 12:35:26 CEST 2026
V2-changes:
- Addressed Bruce Richardson's comments
- Put the MACLEN assignments on single lines.
- Only encode EIPLEN when an outer IP type (EIPT) was selected,
matching how iavf sets eip_len per protocol case.
- Returned success instead of a partially built context when
the tunnel type is not supported, so a half-completed
context descriptor can never be written.
- Recorded use_ctx and use_vec_entry in one place only. The
duplicate use_vec_entry assignment in ice_tx_queue_start() is
removed; ice_set_tx_function() runs before any queue is started
and now covers every queue, matching iavf. This also fixes DCF
queues, which never passed through ice_tx_queue_start() and so
never had use_vec_entry recorded.
- Declared .ctx_desc = true for the scalar path, which does emit
context descriptors, so it is not filtered out of path selection
when a context descriptor is requested. Matches IAVF_TX_DEFAULT.
- Folded the ctx_desc condition into the req_features initializer.
- Marked the new AVX2 and AVX-512 context Tx helpers
with __rte_always_inline so the compile-time offload flag
is folded, as for the existing ice_vtx()/ice_vtx1() helpers.
Added AVX2 and AVX-512 context descriptor Tx paths
for outer IPv4 and UDP checksum offloads,
avoiding scalar Tx fallback.
Anurag Mandal (4):
net/common: share Tx context descriptor flag
net/ice: add vector tunnel context encoding
net/ice: add AVX2 context descriptor Tx path
net/ice: add AVX-512 context descriptor Tx path
doc/guides/rel_notes/release_26_11.rst | 6 +
drivers/net/intel/common/tx.h | 2 +-
drivers/net/intel/ice/ice_dcf_ethdev.c | 4 +-
drivers/net/intel/ice/ice_ethdev.h | 2 +
drivers/net/intel/ice/ice_rxtx.c | 49 +++++--
drivers/net/intel/ice/ice_rxtx.h | 11 ++
drivers/net/intel/ice/ice_rxtx_vec_avx2.c | 119 +++++++++++++++++
drivers/net/intel/ice/ice_rxtx_vec_avx512.c | 141 ++++++++++++++++++++
drivers/net/intel/ice/ice_rxtx_vec_common.h | 53 +++++++-
9 files changed, 374 insertions(+), 13 deletions(-)
--
2.34.1
More information about the dev
mailing list