[PATCH v3 2/2] net/ice: fix memory leak in raw pattern parse

2025-10-10 Thread Anatoly Burakov
") Cc: sta...@dpdk.org Signed-off-by: Anatoly Burakov --- Notes: v3: - Removed unneeded NULL check - Fixed the Fixes: line v2: - Removed the filter profile allocation error handling as it's now directly embedded in the filter structure and not alloca

[PATCH v2 1/5] net/ice/base: fix integer overflow on NVM init

2025-10-02 Thread Anatoly Burakov
From: Chinh Cao The shadow RAM size is defined as 16-bit unsigned, which may result in overflows under certain scenarios. Fix the value to be 32-bit. Fixes: a240ff50505b ("net/ice/base: add basic structures") Cc: sta...@dpdk.org Signed-off-by: Chinh Cao Signed-off-by: Anato

[PATCH v1 4/4] net/ice/base: add support for asymmetric PFC

2025-10-02 Thread Anatoly Burakov
From: Vladimir Medvedkin Current implementation only supports symmetric PFC configuration. Add two more bitmasks to ice_dcb_pfc_cfg to support asymmetric PFC. Signed-off-by: Vladimir Medvedkin Signed-off-by: Anatoly Burakov --- drivers/net/intel/ice/base/ice_dcb.c | 105

[PATCH v2 3/5] net/ice/base: make set MAC config TC aware

2025-10-01 Thread Anatoly Burakov
Signed-off-by: Anatoly Burakov --- Notes: v2: - Fix case when no traffic classes were specified drivers/net/intel/ice/base/ice_common.c | 173 +++- drivers/net/intel/ice/base/ice_common.h | 3 + drivers/net/intel/ice/base/ice_type.h | 13 ++ 3 files changed, 153

[PATCH v1 00/12] net/ice: update to latest version

2025-09-03 Thread Anatoly Burakov
oject/dpdk/cover/20250731044132.110174-1-shaiq.w...@intel.com/ Anatoly Burakov (2): net/ice/base: add E835 device ID's net/ice: update README Jacob Keller (2): net/ice/base: fix memory leak in HW profile handling net/ice/base: improve global config lock behavior Jaroslaw Ilgiewicz (1):

[PATCH v1 12/12] net/ice: update README

2025-09-02 Thread Anatoly Burakov
Update the README with date of latest driver snapshot. Signed-off-by: Anatoly Burakov --- drivers/net/intel/ice/base/README | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/intel/ice/base/README b/drivers/net/intel/ice/base/README index 86f69d1d04..98182a8da6

[PATCH v1 08/12] net/ice/base: add missing health status defines

2025-09-02 Thread Anatoly Burakov
From: Stefan Wegrzyn Added missing defines for commands related to health status. Signed-off-by: Stefan Wegrzyn Signed-off-by: Anatoly Burakov --- drivers/net/intel/ice/base/ice_adminq_cmd.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/intel/ice/base/ice_adminq_cmd.h b

[PATCH v1 01/12] net/ice/base: add direction metadata

2025-09-02 Thread Anatoly Burakov
y big enough to max out the capacity, the rule is therefore so hyper-specific that it is highly unlikely to match both Rx and Tx traffic, and so the direction is implied by the fact that the rule is so specific. Signed-off-by: Marcin Szycik Signed-off-by: Anatoly Burakov --- drivers/net/intel/ice

[PATCH v1 09/12] net/ice/base: improve global config lock behavior

2025-09-02 Thread Anatoly Burakov
of the core driver to cleanup after the core reset. Instead, make it the responsibility of this function. This avoids needless re-initialization for the cases where no reset occurred. Signed-off-by: Jacob Keller Signed-off-by: Anatoly Burakov --- drivers/net/intel/ice/base/ice_ddp.c | 34

[PATCH v1 11/12] net/ice/base: add E835 device ID's

2025-09-02 Thread Anatoly Burakov
Controller E835-L for SFP Signed-off-by: Anatoly Burakov --- drivers/net/intel/ice/base/ice_common.c | 9 + drivers/net/intel/ice/base/ice_devids.h | 18 ++ drivers/net/intel/ice/ice_ethdev.c | 9 + 3 files changed, 36 insertions(+) diff --git a/drivers/net

[PATCH v1 10/12] net/ice: count drop-all filter stats in Rx stats

2025-09-02 Thread Anatoly Burakov
Wani Signed-off-by: Anatoly Burakov --- drivers/net/intel/ice/ice_ethdev.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/intel/ice/ice_ethdev.c b/drivers/net/intel/ice/ice_ethdev.c index 513777e372..0ebe58f858 100644 --- a/drivers/net/intel/ice/ice_ethdev.c +++

[PATCH v1 06/12] net/ice/base: add 40G speed

2025-09-02 Thread Anatoly Burakov
From: Jaroslaw Ilgiewicz Added 40G speed for port options Signed-off-by: Jaroslaw Ilgiewicz Signed-off-by: Anatoly Burakov --- drivers/net/intel/ice/base/ice_adminq_cmd.h | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/intel/ice/base/ice_adminq_cmd.h b/drivers/net/intel/ice

[PATCH v1 05/12] net/ice/base: clean up RSS LUT selection

2025-09-02 Thread Anatoly Burakov
Signed-off-by: Przemek Kitszel Signed-off-by: Anatoly Burakov --- drivers/net/intel/ice/base/ice_adminq_cmd.h | 18 ++- drivers/net/intel/ice/base/ice_common.c | 124 ++-- 2 files changed, 81 insertions(+), 61 deletions(-) diff --git a/drivers/net/intel/ice/base/ice_adminq_cm

[PATCH v1 07/12] net/ice/base: allow overriding recipe ID

2025-09-02 Thread Anatoly Burakov
needs to use a recipe ID different from the shared code default, it can set the rid variable and enable the rid_override flag. This instructs the shared code to use the specified rid instead of the default value. Signed-off-by: Pandi Kumar Maharajan Signed-off-by: Anatoly Burakov --- drivers/net

[PATCH v1 04/12] net/ice/base: fix memory leak in recipe handling

2025-09-02 Thread Anatoly Burakov
Fixes: fed0c5ca5f19 ("net/ice/base: support programming a new switch recipe") Cc: sta...@dpdk.org Signed-off-by: Pandi Kumar Maharajan Signed-off-by: Anatoly Burakov --- drivers/net/intel/ice/base/ice_switch.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/drivers/ne

[PATCH v1 03/12] net/ice/base: fix memory leak in HW profile handling

2025-09-02 Thread Anatoly Burakov
memory upon exit. Fixes: 8ebb93942b2c ("net/ice/base: add function to set HW profile for raw flow") Cc: sta...@dpdk.org Signed-off-by: Jacob Keller Signed-off-by: Anatoly Burakov --- drivers/net/intel/ice/base/ice_flow.c | 4 1 file changed, 4 deletions(-) diff --git a/drivers/net

[PATCH v1 02/12] net/ice/base: fix adding special words

2025-09-02 Thread Anatoly Burakov
factor DDP code") Cc: sta...@dpdk.org Signed-off-by: Jeff Shaw Signed-off-by: Shaiq Wani Signed-off-by: Anatoly Burakov --- drivers/net/intel/ice/base/ice_switch.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/intel/ice/base/ice_switch.c b/drivers/n

[PATCH v1 1/1] net/iavf: fix order of inclusion in vector code

2025-07-09 Thread Anatoly Burakov
: 1749 Fixes: 11276ec5e042 ("net/iavf: use common Rx rearm") Signed-off-by: Anatoly Burakov --- drivers/net/intel/iavf/iavf_rxtx_vec_avx2.c | 2 +- drivers/net/intel/iavf/iavf_rxtx_vec_avx512.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/

[PATCH v1 1/1] memory: handle invalid socket ID's when allocating

2025-06-20 Thread Anatoly Burakov
, so it is pretty much impossible to get invalid return here. Still, to avoid future false positives, we can fix it here. Coverity issue: 470131 Signed-off-by: Anatoly Burakov --- lib/eal/linux/eal_memory.c | 8 +++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/eal/linux

[PATCH v1 1/1] malloc: handle invalid socket ID's when allocating

2025-06-16 Thread Anatoly Burakov
external memory from consideration), but to avoid future false positives, we can fix it here. Coverity issue: 470137 Signed-off-by: Anatoly Burakov --- lib/eal/common/malloc_heap.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/eal/common/malloc_heap.c b/lib/eal/common

[PATCH v7 33/33] net/intel: add common Tx mbuf recycle

2025-06-12 Thread Anatoly Burakov
Currently, there are duplicate implementations of Tx mbuf recycle in some drivers, specifically ixgbe and i40e. Move them into a common header. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Use the common desc_done function to check for DD bit sta

[PATCH v7 03/33] net/ixgbe: match variable names to other drivers

2025-06-12 Thread Anatoly Burakov
ath is enabled) - mb_pool -> mp (other drivers use this name for mempool) Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Make this commit separate .../ixgbe/ixgbe_recycle_mbufs_vec_common.c| 2 +- drivers/net/intel/ixgbe/ixgbe_rxtx.c

[PATCH v7 20/33] net/i40e: clean up definitions

2025-06-12 Thread Anatoly Burakov
n, AltiVec, wide for AVX2, AVX512) Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Add this commit drivers/net/intel/i40e/i40e_rxtx.c| 42 +++ drivers/net/intel/i40e/i40e_rxtx.h| 17 +++--- drivers/n

[PATCH v7 06/33] net/i40e: rename 16-byte descriptor define

2025-06-12 Thread Anatoly Burakov
In preparation for having a common definition for 16-byte and 32-byte Rx descriptors, rename `RTE_LIBRTE_I40E_16BYTE_RX_DESC` to `RTE_NET_INTEL_USE_16BYTE_DESC``. Suggested-by: Bruce Richardson Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Add t

[PATCH v7 11/33] net/ixgbe: remove unnecessary platform checks

2025-06-12 Thread Anatoly Burakov
ation work. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Add this patch drivers/net/intel/ixgbe/ixgbe_rxtx.c | 26 +- drivers/net/intel/ixgbe/ixgbe_rxtx.h | 4 2 files changed, 13 insertions(+), 17 deletions(-) diff --

[PATCH v7 32/33] net/intel: add common Rx mbuf recycle

2025-06-12 Thread Anatoly Burakov
Currently, there are duplicate implementations of Rx mbuf recycle in some drivers, specifically ixgbe and i40e. Move them into a common header. While we're at it, also support no-IOVA-in-mbuf case. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Re

[PATCH v7 31/33] net/intel: support wider x86 vectors for Rx rearm

2025-06-12 Thread Anatoly Burakov
, and the layout is always the same for that part. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v7: - Fix stack overrun in AVX code paths due to copypaste error drivers/net/intel/common/rx_vec_x86.h | 368 ++ 1 file changed, 201

[PATCH v7 30/33] net/ixgbe: use common Rx rearm code

2025-06-12 Thread Anatoly Burakov
sure to use common definitions for things like burst size, rearm threshold, and descriptors per loop, which is currently defined separately in each driver. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- drivers/net/intel/common/rx_vec_x86.h | 2 +- drivers/net/intel/

[PATCH v7 29/33] net/iavf: use common Rx rearm code

2025-06-12 Thread Anatoly Burakov
fined separately in each driver. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- drivers/net/intel/iavf/iavf_rxtx.h| 8 +- drivers/net/intel/iavf/iavf_rxtx_vec_avx2.c | 3 +- drivers/net/intel/iavf/iavf_rxtx_vec_avx512.c | 3 +- drivers/net/intel/iavf/iavf_rxtx_vec_com

[PATCH v7 27/33] net/intel: generalize vectorized Rx rearm

2025-06-12 Thread Anatoly Burakov
make sure to use common definitions for things like burst size, rearm threshold, and descriptors per loop, which is currently defined separately in each driver. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- drivers/net/intel/common/rx.h | 4 + drivers/net/intel/c

[PATCH v7 28/33] net/i40e: use common Rx rearm code

2025-06-12 Thread Anatoly Burakov
use that in respective i40e code. While we're at it, also make sure to use common definitions for things like burst size, rearm threshold, and descriptors per loop, which is currently defined separately in each driver. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- driver

[PATCH v7 24/33] net/i40e: use the common Rx queue structure

2025-06-12 Thread Anatoly Burakov
between 16-byte and 32-byte formats by way of the existing RTE_NET_INTEL_USE_16BYTE_DESC define. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Fix compilation issues for AltiVec drivers/net/intel/common/desc.h | 89 drivers/net/intel

[PATCH v7 26/33] net/iavf: use the common Rx queue structure

2025-06-12 Thread Anatoly Burakov
IAVF driver. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Force to always use 32-byte descriptor format v3 -> v4: - Use the common descriptor format v2: - Fix compile issues for Arm drivers/net/intel/common/r

[PATCH v7 25/33] net/ice: use the common Rx queue structure

2025-06-12 Thread Anatoly Burakov
definition for the flex descriptor formats as well. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Separate some of the changes into other commits - Add a new common flex descriptor format definition v2: - Make xtr_field_offs of t

[PATCH v7 23/33] net/ixgbe: create common Rx queue structure

2025-06-12 Thread Anatoly Burakov
In preparation for deduplication effort, generalize the Rx queue structure. The entire Rx queue structure is moved to common/rx.h, clarifying the comments where necessary, and separating common parts from ixgbe-specific parts. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson

[PATCH v7 22/33] net/iavf: clean up definitions

2025-06-12 Thread Anatoly Burakov
s used in other drivers Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Add this commit drivers/net/intel/iavf/iavf_rxtx.c| 2 +- drivers/net/intel/iavf/iavf_rxtx.h| 11 ++-- drivers/net/intel/iavf/iavf_rxtx

[PATCH v7 21/33] net/ice: clean up definitions

2025-06-12 Thread Anatoly Burakov
This commit does the following cleanups: - Mark vector-PMD related definitions with ICE_VPMD_ prefix - Remove unused definitions - Create "descriptors per loop" for different vector implementations (regular for SSE, Neon, wide for AVX2, AVX512) Signed-off-by: Anatoly Burakov Acked

[PATCH v7 19/33] net/ixgbe: clean up definitions

2025-06-12 Thread Anatoly Burakov
This patch does the following cleanups: - Remove RTE_ and RTE_PMD_ prefix from internal definitions - Mark vector-PMD related definitions with IXGBE_VPMD_ prefix Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Add this commit drivers/net/intel/ix

[PATCH v7 16/33] net/ixgbe: simplify vector PMD compilation

2025-06-12 Thread Anatoly Burakov
definition - Remove all stubs and replace them with macros that alias either to existing scalar implementations, or NULL Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Add this patch drivers/net/intel/ixgbe/ixgbe_rxtx.c | 96

[PATCH v7 18/33] net/ixgbe: add a desc done function

2025-06-12 Thread Anatoly Burakov
Add a function to check DD bit status, and use it everywhere we do these checks. Signed-off-by: Anatoly Burakov --- Notes: v6: - Move ixgbe_tx_desc_done() to ixgbe_rxtx.h to avoid compile errors on platforms that do not support vector driver v5: - Add this commit

[PATCH v7 17/33] net/ixgbe: replace always-true check

2025-06-12 Thread Anatoly Burakov
rally using `#if 1` construct). Replace the check to also use `RTE_PMD_PACKET_PREFETCH` to allow turning it off at build time. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Add this commit drivers/net/intel/ixgbe/ixgbe_rxtx.c | 6 +- 1 file ch

[PATCH v7 15/33] net/ixgbe: move vector Rx/Tx code to vec common

2025-06-12 Thread Anatoly Burakov
There is no reason why bits and pieces of vectorized code should be defined in `ixgbe_rxtx.c`, so move them to the vec common file. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Add this patch drivers/net/intel/ixgbe/ixgbe_rxtx.c | 41

[PATCH v7 13/33] net/ixgbe: rename vector txq free mbufs

2025-06-12 Thread Anatoly Burakov
. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Add this patch drivers/net/intel/ixgbe/ixgbe_rxtx_vec_common.h | 2 +- drivers/net/intel/ixgbe/ixgbe_rxtx_vec_neon.c | 2 +- drivers/net/intel/ixgbe/ixgbe_rxtx_vec_sse.c| 2 +- 3 files changed, 3 insertions

[PATCH v7 14/33] net/ixgbe: refactor vector common code

2025-06-12 Thread Anatoly Burakov
Each vector driver provides its own Rx queue setup etc. functions, but actually they're entirely identical, and can be merged. Rename the `ixgbe_recycle_mbufs_vec_common.c` to `ixgbe_rxtx_vec_common.c` and move all common code there from each respective vector driver. Signed-off-by: An

[PATCH v7 12/33] net/ixgbe: decouple scalar and vec rxq free mbufs

2025-06-12 Thread Anatoly Burakov
Currently, vector Rx queue release mbufs function is only called from inside the scalar variant. Decouple them to allow both to be defined separately from each other, and provide a common function that picks between the two when necessary. Signed-off-by: Anatoly Burakov Acked-by: Bruce

[PATCH v7 10/33] net/ixgbe: adjust indentation

2025-06-12 Thread Anatoly Burakov
There is wrong indentation in `ixgbe_set_tx_function`. Fix it. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Add this patch drivers/net/intel/ixgbe/ixgbe_rxtx.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/net/intel

[PATCH v7 09/33] net/ixgbe: simplify packet type support check

2025-06-12 Thread Anatoly Burakov
There are no differences between scalar and vector paths when it comes to packet type support, and the only data path currently not covered by the check is the VF representor path, because it's not meant to be used directly anyway. Simplify the check to reflect that fact. Signed-off-by: An

[PATCH v7 07/33] net/ice: rename 16-byte descriptor define

2025-06-12 Thread Anatoly Burakov
In preparation for having a common definition for 16-byte and 32-byte Rx descriptors, rename RTE_LIBRTE_ICE_16BYTE_RX_DESC to RTE_NET_INTEL_USE_16BYTE_DESC. Suggested-by: Bruce Richardson Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Add this com

[PATCH v7 08/33] net/iavf: remove 16-byte descriptor define

2025-06-12 Thread Anatoly Burakov
There are no physical functions that support having VF use 16-byte descriptors, so remove all 16-byte descriptor related code from the driver. Suggested-by: Bruce Richardson Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v4 -> v5: - Remove 16-byte descrip

[PATCH v7 05/33] net/ice: match variable name to other drivers

2025-06-12 Thread Anatoly Burakov
Currently, the ice driver has a variable that have the same semantics as in other drivers, but has a different name. Rename `rx_ring_dma` to `rx_ring_phys_addr` for consistency with other drivers. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - M

[PATCH v7 04/33] net/i40e: match variable name to other drivers

2025-06-12 Thread Anatoly Burakov
Currently, the i40e driver has a variable that has the same semantics as in other drivers, but has a different name. Rename `rx_using_sse` to `vector_rx` to match it to other drivers. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Make this com

[PATCH v7 02/33] net/iavf: make IPsec stats dynamically allocated

2025-06-12 Thread Anatoly Burakov
into the queue structure with a pointer to the stats structure. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- drivers/net/intel/iavf/iavf_ethdev.c | 2 +- drivers/net/intel/iavf/iavf_rxtx.c | 21 ++--- drivers/net/intel/iavf/iavf_rxtx.h | 2 +- 3 files changed

[PATCH v7 01/33] net/ixgbe: remove unused field in Rx queue struct

2025-06-12 Thread Anatoly Burakov
The `rdh` (read head) field in the `ixgbe_rx_queue` struct is not used anywhere in the codebase, and can be removed. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- drivers/net/intel/ixgbe/ixgbe_rxtx.c | 9 ++--- drivers/net/intel/ixgbe/ixgbe_rxtx.h | 1 - 2 files changed, 2

[PATCH v7 00/33] Intel PMD drivers Rx cleanup

2025-06-12 Thread Anatoly Burakov
- Removed support for 16-byte descriptors from IAVF v3 -> v4: - Added a lot of cleanups to the patchset - Moved to using unified Rx descriptor definitions - Using a single compilation flag to support 16-byte descriptors - Fixes for whitespace, syntax, etc. Anatoly Burakov (33): net/ixgbe:

[PATCH v6 13/33] net/ixgbe: rename vector txq free mbufs

2025-06-09 Thread Anatoly Burakov
. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Add this patch drivers/net/intel/ixgbe/ixgbe_rxtx_vec_common.h | 2 +- drivers/net/intel/ixgbe/ixgbe_rxtx_vec_neon.c | 2 +- drivers/net/intel/ixgbe/ixgbe_rxtx_vec_sse.c| 2 +- 3 files changed, 3 insertions

[PATCH v6 33/33] net/intel: add common Tx mbuf recycle

2025-06-09 Thread Anatoly Burakov
Currently, there are duplicate implementations of Tx mbuf recycle in some drivers, specifically ixgbe and i40e. Move them into a common header. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Use the common desc_done function to check for DD bit sta

[PATCH v6 32/33] net/intel: add common Rx mbuf recycle

2025-06-09 Thread Anatoly Burakov
Currently, there are duplicate implementations of Rx mbuf recycle in some drivers, specifically ixgbe and i40e. Move them into a common header. While we're at it, also support no-IOVA-in-mbuf case. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Re

[PATCH v6 31/33] net/intel: support wider x86 vectors for Rx rearm

2025-06-09 Thread Anatoly Burakov
, and the layout is always the same for that part. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- drivers/net/intel/common/rx_vec_x86.h | 368 ++ 1 file changed, 201 insertions(+), 167 deletions(-) diff --git a/drivers/net/intel/common/rx_vec_x86.h b

[PATCH v6 30/33] net/ixgbe: use common Rx rearm code

2025-06-09 Thread Anatoly Burakov
sure to use common definitions for things like burst size, rearm threshold, and descriptors per loop, which is currently defined separately in each driver. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- drivers/net/intel/common/rx_vec_x86.h | 2 +- drivers/net/intel/

[PATCH v6 29/33] net/iavf: use common Rx rearm code

2025-06-09 Thread Anatoly Burakov
fined separately in each driver. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- drivers/net/intel/iavf/iavf_rxtx.h| 8 +- drivers/net/intel/iavf/iavf_rxtx_vec_avx2.c | 3 +- drivers/net/intel/iavf/iavf_rxtx_vec_avx512.c | 3 +- drivers/net/intel/iavf/iavf_rxtx_vec_com

[PATCH v6 28/33] net/i40e: use common Rx rearm code

2025-06-09 Thread Anatoly Burakov
use that in respective i40e code. While we're at it, also make sure to use common definitions for things like burst size, rearm threshold, and descriptors per loop, which is currently defined separately in each driver. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- driver

[PATCH v6 24/33] net/i40e: use the common Rx queue structure

2025-06-09 Thread Anatoly Burakov
between 16-byte and 32-byte formats by way of the existing RTE_NET_INTEL_USE_16BYTE_DESC define. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Fix compilation issues for AltiVec drivers/net/intel/common/desc.h | 89 drivers/net/intel

[PATCH v6 27/33] net/intel: generalize vectorized Rx rearm

2025-06-09 Thread Anatoly Burakov
make sure to use common definitions for things like burst size, rearm threshold, and descriptors per loop, which is currently defined separately in each driver. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- drivers/net/intel/common/rx.h | 4 + drivers/net/intel/c

[PATCH v6 25/33] net/ice: use the common Rx queue structure

2025-06-09 Thread Anatoly Burakov
definition for the flex descriptor formats as well. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Separate some of the changes into other commits - Add a new common flex descriptor format definition v2: - Make xtr_field_offs of t

[PATCH v6 26/33] net/iavf: use the common Rx queue structure

2025-06-09 Thread Anatoly Burakov
IAVF driver. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Force to always use 32-byte descriptor format v3 -> v4: - Use the common descriptor format v2: - Fix compile issues for Arm drivers/net/intel/common/r

[PATCH v6 23/33] net/ixgbe: create common Rx queue structure

2025-06-09 Thread Anatoly Burakov
In preparation for deduplication effort, generalize the Rx queue structure. The entire Rx queue structure is moved to common/rx.h, clarifying the comments where necessary, and separating common parts from ixgbe-specific parts. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson

[PATCH v6 20/33] net/i40e: clean up definitions

2025-06-09 Thread Anatoly Burakov
n, AltiVec, wide for AVX2, AVX512) Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Add this commit drivers/net/intel/i40e/i40e_rxtx.c| 42 +++ drivers/net/intel/i40e/i40e_rxtx.h| 17 +++--- drivers/n

[PATCH v6 22/33] net/iavf: clean up definitions

2025-06-09 Thread Anatoly Burakov
s used in other drivers Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Add this commit drivers/net/intel/iavf/iavf_rxtx.c| 2 +- drivers/net/intel/iavf/iavf_rxtx.h| 11 ++-- drivers/net/intel/iavf/iavf_rxtx

[PATCH v6 21/33] net/ice: clean up definitions

2025-06-09 Thread Anatoly Burakov
This commit does the following cleanups: - Mark vector-PMD related definitions with ICE_VPMD_ prefix - Remove unused definitions - Create "descriptors per loop" for different vector implementations (regular for SSE, Neon, wide for AVX2, AVX512) Signed-off-by: Anatoly Burakov Acked

[PATCH v6 15/33] net/ixgbe: move vector Rx/Tx code to vec common

2025-06-09 Thread Anatoly Burakov
There is no reason why bits and pieces of vectorized code should be defined in `ixgbe_rxtx.c`, so move them to the vec common file. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Add this patch drivers/net/intel/ixgbe/ixgbe_rxtx.c | 41

[PATCH v6 19/33] net/ixgbe: clean up definitions

2025-06-09 Thread Anatoly Burakov
This patch does the following cleanups: - Remove RTE_ and RTE_PMD_ prefix from internal definitions - Mark vector-PMD related definitions with IXGBE_VPMD_ prefix Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Add this commit drivers/net/intel/ix

[PATCH v6 18/33] net/ixgbe: add a desc done function

2025-06-09 Thread Anatoly Burakov
Add a function to check DD bit status, and use it everywhere we do these checks. Signed-off-by: Anatoly Burakov --- Notes: v6: - Move ixgbe_tx_desc_done() to ixgbe_rxtx.h to avoid compile errors on platforms that do not support vector driver v5: - Add this commit

[PATCH v6 17/33] net/ixgbe: replace always-true check

2025-06-09 Thread Anatoly Burakov
rally using `#if 1` construct). Replace the check to also use `RTE_PMD_PACKET_PREFETCH` to allow turning it off at build time. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Add this commit drivers/net/intel/ixgbe/ixgbe_rxtx.c | 6 +- 1 file ch

[PATCH v6 16/33] net/ixgbe: simplify vector PMD compilation

2025-06-09 Thread Anatoly Burakov
definition - Remove all stubs and replace them with macros that alias either to existing scalar implementations, or NULL Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Add this patch drivers/net/intel/ixgbe/ixgbe_rxtx.c | 96

[PATCH v6 14/33] net/ixgbe: refactor vector common code

2025-06-09 Thread Anatoly Burakov
Each vector driver provides its own Rx queue setup etc. functions, but actually they're entirely identical, and can be merged. Rename the `ixgbe_recycle_mbufs_vec_common.c` to `ixgbe_rxtx_vec_common.c` and move all common code there from each respective vector driver. Signed-off-by: An

[PATCH v6 11/33] net/ixgbe: remove unnecessary platform checks

2025-06-09 Thread Anatoly Burakov
ation work. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Add this patch drivers/net/intel/ixgbe/ixgbe_rxtx.c | 26 +- drivers/net/intel/ixgbe/ixgbe_rxtx.h | 4 2 files changed, 13 insertions(+), 17 deletions(-) diff --

[PATCH v6 12/33] net/ixgbe: decouple scalar and vec rxq free mbufs

2025-06-09 Thread Anatoly Burakov
Currently, vector Rx queue release mbufs function is only called from inside the scalar variant. Decouple them to allow both to be defined separately from each other, and provide a common function that picks between the two when necessary. Signed-off-by: Anatoly Burakov Acked-by: Bruce

[PATCH v6 08/33] net/iavf: remove 16-byte descriptor define

2025-06-09 Thread Anatoly Burakov
There are no physical functions that support having VF use 16-byte descriptors, so remove all 16-byte descriptor related code from the driver. Suggested-by: Bruce Richardson Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v4 -> v5: - Remove 16-byte descrip

[PATCH v6 10/33] net/ixgbe: adjust indentation

2025-06-09 Thread Anatoly Burakov
There is wrong indentation in `ixgbe_set_tx_function`. Fix it. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v5: - Add this patch drivers/net/intel/ixgbe/ixgbe_rxtx.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/net/intel

[PATCH v6 09/33] net/ixgbe: simplify packet type support check

2025-06-09 Thread Anatoly Burakov
There are no differences between scalar and vector paths when it comes to packet type support, and the only data path currently not covered by the check is the VF representor path, because it's not meant to be used directly anyway. Simplify the check to reflect that fact. Signed-off-by: An

[PATCH v6 07/33] net/ice: rename 16-byte descriptor define

2025-06-09 Thread Anatoly Burakov
In preparation for having a common definition for 16-byte and 32-byte Rx descriptors, rename RTE_LIBRTE_ICE_16BYTE_RX_DESC to RTE_NET_INTEL_USE_16BYTE_DESC. Suggested-by: Bruce Richardson Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Add this com

[PATCH v6 05/33] net/ice: match variable name to other drivers

2025-06-09 Thread Anatoly Burakov
Currently, the ice driver has a variable that have the same semantics as in other drivers, but has a different name. Rename `rx_ring_dma` to `rx_ring_phys_addr` for consistency with other drivers. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - M

[PATCH v6 04/33] net/i40e: match variable name to other drivers

2025-06-09 Thread Anatoly Burakov
Currently, the i40e driver has a variable that has the same semantics as in other drivers, but has a different name. Rename `rx_using_sse` to `vector_rx` to match it to other drivers. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Make this com

[PATCH v6 06/33] net/i40e: rename 16-byte descriptor define

2025-06-09 Thread Anatoly Burakov
In preparation for having a common definition for 16-byte and 32-byte Rx descriptors, rename `RTE_LIBRTE_I40E_16BYTE_RX_DESC` to `RTE_NET_INTEL_USE_16BYTE_DESC``. Suggested-by: Bruce Richardson Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Add t

[PATCH v6 03/33] net/ixgbe: match variable names to other drivers

2025-06-09 Thread Anatoly Burakov
ath is enabled) - mb_pool -> mp (other drivers use this name for mempool) Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Make this commit separate .../ixgbe/ixgbe_recycle_mbufs_vec_common.c| 2 +- drivers/net/intel/ixgbe/ixgbe_rxtx.c

[PATCH v6 02/33] net/iavf: make IPsec stats dynamically allocated

2025-06-09 Thread Anatoly Burakov
into the queue structure with a pointer to the stats structure. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- drivers/net/intel/iavf/iavf_ethdev.c | 2 +- drivers/net/intel/iavf/iavf_rxtx.c | 21 ++--- drivers/net/intel/iavf/iavf_rxtx.h | 2 +- 3 files changed

[PATCH v6 01/33] net/ixgbe: remove unused field in Rx queue struct

2025-06-09 Thread Anatoly Burakov
The `rdh` (read head) field in the `ixgbe_rx_queue` struct is not used anywhere in the codebase, and can be removed. Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- drivers/net/intel/ixgbe/ixgbe_rxtx.c | 9 ++--- drivers/net/intel/ixgbe/ixgbe_rxtx.h | 1 - 2 files changed, 2

[PATCH v6 00/33] Intel PMD drivers Rx cleanup

2025-06-09 Thread Anatoly Burakov
initions - Using a single compilation flag to support 16-byte descriptors - Fixes for whitespace, syntax, etc. Anatoly Burakov (33): net/ixgbe: remove unused field in Rx queue struct net/iavf: make IPsec stats dynamically allocated net/ixgbe: match variable names to other drivers net/i40

[PATCH v1 1/2] net/e1000: better clock synchronization workaround

2025-06-09 Thread Anatoly Burakov
rrect clock synchronization") Signed-off-by: Vitaly Lifshits Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_ich8lan.c | 82 +--- drivers/net/intel/e1000/base/e1000_ich8lan.h | 4 + 2 files changed, 74 insertions(+), 12 deletions(-) diff --git a/d

[PATCH v1 5/5] net/ixgbe: update README

2025-06-09 Thread Anatoly Burakov
Update readme with new base code snapshot update date. Signed-off-by: Anatoly Burakov --- drivers/net/intel/ixgbe/base/README | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/intel/ixgbe/base/README b/drivers/net/intel/ixgbe/base/README index 8693c4ebc1

[PATCH v1 4/5] net/ixgbe: add ACI debug printouts

2025-06-09 Thread Anatoly Burakov
From: Piotr Kwapulinski Add more verbose printouts for ACI when debugging is enabled. Signed-off-by: Piotr Kwapulinski Signed-off-by: Anatoly Burakov --- drivers/net/intel/ixgbe/base/ixgbe_e610.c | 110 ++ drivers/net/intel/ixgbe/base/ixgbe_e610.h | 2 + drivers/net

[PATCH v1 3/5] net/ixgbe: add support for toggling VF Tx queues

2025-06-09 Thread Anatoly Burakov
From: Piotr Pietruszewski Add method to toggle VF's TX queues to work around silicon errata. Signed-off-by: Piotr Pietruszewski Signed-off-by: Anatoly Burakov --- drivers/net/intel/ixgbe/base/ixgbe_api.c| 13 + drivers/net/intel/ixgbe/base/ixgbe_api.h| 1 + drivers/net/

[PATCH v1 2/5] net/ixgbe: add VF mailbox op for link status

2025-06-09 Thread Anatoly Burakov
ovide the actual link data. Update the mailbox api to v1.6. Incorporate both ways of getting link status within the legacy ixgbe_check_mac_link_vf() function. Signed-off-by: Andrzej Wilczynski Signed-off-by: Jedrzej Jagielski Signed-off-by: Anatoly Burakov --- drivers/net/intel/ixgbe

[PATCH v1 1/5] net/ixgbe: remove PTP by PHY cap

2025-06-09 Thread Anatoly Burakov
From: Aleksandr Loktionov Disable PTP by PHY capability support. Signed-off-by: Aleksandr Loktionov Signed-off-by: Anatoly Burakov --- drivers/net/intel/ixgbe/base/ixgbe_e610.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/intel/ixgbe/base/ixgbe_e610.c b

[PATCH v1 0/5] Update ixgbe base code

2025-06-09 Thread Anatoly Burakov
Update IXGBE base code snapshot to version 2025-06-04. Aleksandr Loktionov (1): net/ixgbe: remove PTP by PHY cap Anatoly Burakov (1): net/ixgbe: update README Jedrzej Jagielski (1): net/ixgbe: add VF mailbox op for link status Piotr Kwapulinski (1): net/ixgbe: add ACI debug printouts

[PATCH v1 0/2] e1000 base code update

2025-06-09 Thread Anatoly Burakov
Update e1000 base code version to 2025-06-04-14.40 Anatoly Burakov (1): net/e1000: update README Vitaly Lifshits (1): net/e1000: better clock synchronization workaround drivers/net/intel/e1000/base/README | 4 +- drivers/net/intel/e1000/base/e1000_ich8lan.c | 82

[PATCH v1 2/2] net/e1000: update README

2025-06-09 Thread Anatoly Burakov
Update the last shared code update date. Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/README | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/intel/e1000/base/README b/drivers/net/intel/e1000/base/README index 23a6604121..976391b170 100644

[PATCH v5 23/34] net/iavf: clean up definitions

2025-06-06 Thread Anatoly Burakov
s used in other drivers Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Add this commit drivers/net/intel/iavf/iavf_rxtx.c| 2 +- drivers/net/intel/iavf/iavf_rxtx.h| 11 ++-- drivers/net/intel/iavf/iavf_rxtx

[PATCH v5 00/34] Intel PMD drivers Rx cleanup

2025-06-06 Thread Anatoly Burakov
itespace, syntax, etc. Anatoly Burakov (34): net/ixgbe: remove unused field in Rx queue struct net/iavf: make IPsec stats dynamically allocated net/ixgbe: match variable names to other drivers net/i40e: match variable name to other drivers net/ice: match variable name to other drivers

[PATCH v5 03/34] net/ixgbe: match variable names to other drivers

2025-06-06 Thread Anatoly Burakov
ath is enabled) - mb_pool -> mp (other drivers use this name for mempool) Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- Notes: v3 -> v4: - Make this commit separate .../ixgbe/ixgbe_recycle_mbufs_vec_common.c| 2 +- drivers/net/intel/ixgbe/ixgbe_rxtx.c

  1   2   3   4   5   6   7   8   9   10   >