consolidate ice and iavf Tx vector paths
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v3 Latest15 patches 3 repliesIn review
- v215 patches 5 repliesSuperseded
- v113 patches 15 repliesSuperseded
Changes in v3 from the cover letter
* fix variable shadowing issue in patch 15 (ci_txq_vec_capable param)
* update ice.ini with new features
Patches in v3 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/15 | net/iavf: remove unnecessary alignment callsdrivers/ drivers/ | +4 | 0 replies | |
| 2/15 | net/intel: make Tx context flag commondrivers/ | +1 | 0 replies | |
| 3/15 | net/iavf: use separate params for VLAN and QinQ positiondrivers/ drivers/ drivers/ | +77 | 0 replies | |
| 4/15 | net/iavf: deduplicate tunnel field fill functionsdrivers/ drivers/ | +4 | 0 replies | |
| 5/15 | net/intel: define common macros for tunneling bit-shiftsdrivers/ drivers/ drivers/ +2 more | +69 | 0 replies | |
| 6/15 | net/intel: move iavf descriptor writing functions to commondrivers/ drivers/ drivers/ +1 more | +530 | 0 replies | |
| 7/15 | net/intel: use function callback for lldpdrivers/ drivers/ drivers/ | +48 | 0 replies | |
| 8/15 | net/intel: allow building without IOVA in mbufdrivers/ drivers/ | +16 | 0 replies | |
| 9/15 | net/ice: use common descriptor creation functionsdrivers/ drivers/ drivers/ | +12 | 0 replies | |
| 10/15 | net/intel: move vector Tx paths to commondrivers/ drivers/ drivers/ +1 more | +148 | 0 replies | |
| 11/15 | net/ice: use common AVX Tx functionsdrivers/ drivers/ | +14 | 0 replies | |
| 12/15 | net/intel: add common vector Tx fns with context handlingdrivers/ drivers/ drivers/ | +147 | 0 replies | |
| 13/15 | net/intel: improve Tx path selection logicdrivers/ drivers/ drivers/ +3 more | +58 | 0 replies | |
| 14/15 | net/ice: enable context desc offloads for vector Txdoc/ doc/ drivers/ +4 more | +99 | 2 replies | |
| 15/15 | net/intel: consolidate Tx vector offload path checksdrivers/ drivers/ drivers/ +4 more | +48 | 0 replies |
Reviews trailers per patch
All 15 patches have a Reviewed-by or Acked-by.
| Patch | Ciara Loftus | David Marchand |
|---|---|---|
| 1/15 | A-b | |
| 2/15 | A-b | |
| 3/15 | A-b | |
| 4/15 | R-b | |
| 5/15 | A-b | |
| 6/15 | A-b | |
| 7/15 | A-b | |
| 8/15 | A-b | |
| 9/15 | A-b | |
| 10/15 | A-b | |
| 11/15 | A-b | |
| 12/15 | A-b | |
| 13/15 | A-b | |
| 14/15 | A-b | |
| 15/15 | A-b |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.
Cover letter [PATCH v3 00/15] consolidate ice and iavf Tx vector paths
This patchset consolidates the ice and iavf vector Tx paths, moving the code to net/intel/common. The iavf code is used as the basis for the move, because it has a superset of the features. When the common code is adopted by the ice driver, it then gains features such as QinQ support and tunneling support.
V3:
* fix variable shadowing issue in patch 15 (ci_txq_vec_capable param)
* update ice.ini with new features
V2:
* fix build when iova not in mbuf
* add extra patch to consolidate the offload flags
Bruce Richardson (15):
net/iavf: remove unnecessary alignment calls net/intel: make Tx context flag common
net/iavf: use separate params for VLAN and QinQ position net/iavf: deduplicate tunnel field fill functions net/intel: define common macros for tunneling bit-shifts net/intel: move iavf descriptor writing functions to common net/intel: use function callback for lldp net/intel: allow building without IOVA in mbuf net/ice: use common descriptor creation functions net/intel: move vector Tx paths to common net/ice: use common AVX Tx functions
net/intel: add common vector Tx fns with context handling net/intel: improve Tx path selection logic net/ice: enable context desc offloads for vector Tx net/intel: consolidate Tx vector offload path checks
doc/guides/nics/features/ice.ini | 8 +- doc/guides/rel_notes/release_26_11.rst | 6 + drivers/net/intel/common/tx.h | 107 ++- drivers/net/intel/common/tx_vec_x86.h | 781 ++++++++++++++++++ drivers/net/intel/cpfl/cpfl_rxtx.c | 3 +- drivers/net/intel/i40e/i40e_rxtx.c | 2 +- drivers/net/intel/iavf/iavf_rxtx.c | 94 +-- drivers/net/intel/iavf/iavf_rxtx.h | 53 -- drivers/net/intel/iavf/iavf_rxtx_vec_avx2.c | 496 +---------- drivers/net/intel/iavf/iavf_rxtx_vec_avx512.c | 495 +---------- drivers/net/intel/iavf/iavf_rxtx_vec_common.h | 79 +- drivers/net/intel/iavf/meson.build | 4 +- drivers/net/intel/ice/ice_ethdev.h | 3 + drivers/net/intel/ice/ice_rxtx.c | 44 +- drivers/net/intel/ice/ice_rxtx.h | 17 +- drivers/net/intel/ice/ice_rxtx_vec_avx2.c | 159 +--- drivers/net/intel/ice/ice_rxtx_vec_avx512.c | 154 +--- drivers/net/intel/ice/ice_rxtx_vec_common.h | 62 +- drivers/net/intel/idpf/idpf_rxtx.c | 3 +- 19 files changed, 1068 insertions(+), 1502 deletions(-) create mode 100644 drivers/net/intel/common/tx_vec_x86.h
--
2.53.0