[PATCH v6 2/2] net/af_xdp: Refactor af_xdp_tx_zc

2025-01-31 Thread Ariel Otilibili
Both legs of the loop share the same logic: the common parts are about reserving and filling both address and length into the description. This is moved into reserve_and_fill(). Bugzilla ID: 1440 Suggested-by: Maryam Tahhan Signed-off-by: Ariel Otilibili --- drivers/net/af_xdp/rte_eth_af_xdp.c

[PATCH v6 0/2] Fix use after free, and refactor af_xdp_tx_zc

2025-01-31 Thread Ariel Otilibili
Hello, The series addresses Bugzilla ID 1440 in two steps; 1. Fix use after free. 2. Refactor af_xdp_tx_zc(). Thank you, --- v6 * added missing credits to Maryam Tahhan in v5 v5 (https://inbox.dpdk.org/dev/20250131183439.909831-1-ariel.otilib...@6wind.com/) * fix style issues in the signature

[PATCH v6 1/2] net/af_xdp: Fix use after free in af_xdp_tx_zc

2025-01-31 Thread Ariel Otilibili
tx_bytes is computed after both legs are tested. This might produce a use after memory free. The computation is now moved into each leg. Bugzilla ID: 1440 Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks") Signed-off-by: Ariel Otilibili Acked-by: Stephen Hemminger --- .mailmap

Re: [PATCH 2/2] dts: rework run-time MTU adjustment test case

2025-01-31 Thread Luca Vizzarro
Looks good. Just some very small comments on polishing. Reviewed-by: Luca Vizzarro On 31/01/2025 19:38, Nicholas Pratte wrote: Forwarding restarts in the run-time MTU adjustment test case have been explicitly added, given that the 'requires_forwarding_restart' decorator from a previous patch w

Re: [PATCH 1/2] dts: remove 'requires_forwarding_restart' from framework

2025-01-31 Thread Luca Vizzarro
Reviewed-by: Luca Vizzarro

[PATCH 0/2] remove 'requires_forwarding_restart' from framework

2025-01-31 Thread Nicholas Pratte
While I initially thought that this would improve the cleanliness of future test suite writing, because of the various nuances of each testpmd run-time command, having the framework managing forwarding when needed introduces far too many additional challenges, such that, it simply is not worth the

[PATCH 1/2] dts: remove 'requires_forwarding_restart' from framework

2025-01-31 Thread Nicholas Pratte
This implementation conflicts with other bug fixes implemented in earlier patches. The decorator was devised as a mean to make suite writing a bit simpler, semantically, but the addition of this adds too many complications for it to be worth implementing. Signed-off-by: Nicholas Pratte --- dts/f

[PATCH 2/2] dts: rework run-time MTU adjustment test case

2025-01-31 Thread Nicholas Pratte
Forwarding restarts in the run-time MTU adjustment test case have been explicitly added, given that the 'requires_forwarding_restart' decorator from a previous patch was removed. Signed-off-by: Nicholas Pratte --- dts/tests/TestSuite_mtu.py | 8 +++- 1 file changed, 7 insertions(+), 1 deleti

[PATCH 3/3] dts: bump up fabric version

2025-01-31 Thread Luca Vizzarro
DTS was pinned to use the version 2 of Fabric which was still backwards compatible with Python 2. Many of the backwards-compatible modules have been officially dropped in recent versions of Python, e.g. imp was dropped in Python 3.12. Given DTS does not support any version older than 3.10, bump up

[PATCH 2/3] dts: stop using partial in enums

2025-01-31 Thread Luca Vizzarro
Starting from Python 3.13 functools.partial is started to be treated as a method descriptor. As a consequence, any class attributes whose value is functools.partial is no longer treated as an attribute, but a class method instead. NicCapability is an enum that expects to have methods as values, an

[PATCH 1/3] dts: remove use of field validators

2025-01-31 Thread Luca Vizzarro
When autodoc-pydantic is not installed in the system, autodoc has some trouble parsing Pydantic's field_validator decorators. As a consequence some unwanted warnings are printed when building the docs. This commit removes any use of field validators in favour of "after" model validators. Therefore

[PATCH 0/3] dts: fix doc issues

2025-01-31 Thread Luca Vizzarro
Hi everyone, The first patch will finally get rid of any warnings in the doc build. Whereas the other two patches are required to build docs or even run DTS in Python 3.12 and 3.13. Python 3.13 has introduced a new breaking change without warning, which broke the way we used a specific stdlib fu

Re: [PATCH v4 2/2] net/af_xdp: Refactor af_xdp_tx_zc

2025-01-31 Thread Ariel Otilibili
On Fri, Jan 31, 2025 at 12:55 AM Stephen Hemminger < step...@networkplumber.org> wrote: > Need space after xdp_desc to follow style used elsewhere in DPDK. > There you are, Stephen: https://inbox.dpdk.org/dev/20250131183439.909831-3-ariel.otilib...@6wind.com/

[PATCH v5 2/2] net/af_xdp: Refactor af_xdp_tx_zc

2025-01-31 Thread Ariel Otilibili
Both legs of the loop share the same logic: the common parts are about reserving and filling both address and length into the description. This is moved into reserve_and_fill(). Bugzilla ID: 1440 Signed-off-by: Ariel Otilibili --- drivers/net/af_xdp/rte_eth_af_xdp.c | 62 ---

[PATCH v5 1/2] net/af_xdp: Fix use after free in af_xdp_tx_zc

2025-01-31 Thread Ariel Otilibili
tx_bytes is computed after both legs are tested. This might produce a use after memory free. The computation is now moved into each leg. Bugzilla ID: 1440 Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks") Signed-off-by: Ariel Otilibili Acked-by: Stephen Hemminger --- .mailmap

[PATCH v5 0/2] Fix use after free, and refactor af_xdp_tx_zc

2025-01-31 Thread Ariel Otilibili
Hello, The series addresses Bugzilla ID 1440 in two steps; 1. Fix use after free. 2. Refactor af_xdp_tx_zc(). Thank you, --- v5 * fix style issues in the signature of reserve_and_fill() (Stephen Hemminger) v4 (https://inbox.dpdk.org/dev/20250130221853.789366-1-ariel.otilib...@6wind.com/) * red

Re: [PATCH] vhost: fix VDUSE devices registration

2025-01-31 Thread Ariel Otilibili-Anieli
Hello Maxime, On Friday, January 31, 2025 14:09 CET, Maxime Coquelin wrote: > This patch fixes a regression in vhost_driver_register() > causing VDUSE devices registration to fail systematically > because the return value was initialized to -1 and not > changed later on for this type of devices

Re: [PATCH] net/ice: fix segmentation fault Rx function

2025-01-31 Thread Andre Muezerie
On Thu, Jan 30, 2025 at 07:26:17PM +, Vladimir Medvedkin wrote: > Fix a typo in avx512 rx function, where accidentally the _mm_load_si128 > argument was passed by value instead of a pointer. > > Fixes: 43fd3624fdfe ("drivers: replace GCC pragma with cast") > Cc: andre...@linux.microsoft.com >

Re: [PATCH v18 00/26] remove use of VLAs for Windows

2025-01-31 Thread Andre Muezerie
On Fri, Jan 31, 2025 at 08:54:24AM +0100, Morten Brørup wrote: > > From: Andre Muezerie [mailto:andre...@linux.microsoft.com] > > Sent: Thursday, 30 January 2025 22.55 > > > > As per guidance technical board meeting 2024/04/17. This series > > removes the use of VLAs from code built for Windows fo

Re: [PATCH] dma/idxd: add device ids for new HW versions

2025-01-31 Thread Bruce Richardson
On Thu, Jan 30, 2025 at 05:26:25PM +, Bruce Richardson wrote: > Add in two extra PCI device id's for future HW versions to be > supported by idxd driver. This aligns with the definitions present > in kernel idxd driver [1]. > > [1] > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/li

[PATCH] doc/dmadevs: clarify naming constraints for idxd devices

2025-01-31 Thread Bruce Richardson
The requirement to have DPDK in the DSA wq name is given in the idxd chapter section 5.3.3 [1]. However, that information should also be given in section 5.3.1 [2] where we list out the fields to be set and what values they should have. [1] https://doc.dpdk.org/guides-24.11/dmadevs/idxd.html#devi

Re: [PATCH v1 00/42] Merge Intel IGC and E1000 drivers, and update E1000 base code

2025-01-31 Thread David Marchand
On Fri, Jan 31, 2025 at 2:12 PM Bruce Richardson wrote: > > On Fri, Jan 31, 2025 at 12:58:13PM +, Anatoly Burakov wrote: > > Intel IGC and E1000 drivers are distinct, but they are actually generated > > from the same base code. This patchset will merge together all e1000-derived > > drivers in

Re: [PATCH v1 00/42] Merge Intel IGC and E1000 drivers, and update E1000 base code

2025-01-31 Thread Bruce Richardson
On Fri, Jan 31, 2025 at 12:58:13PM +, Anatoly Burakov wrote: > Intel IGC and E1000 drivers are distinct, but they are actually generated > from the same base code. This patchset will merge together all e1000-derived > drivers into one common base, with three different ethdev driver > frontends

[PATCH] vhost: fix VDUSE devices registration

2025-01-31 Thread Maxime Coquelin
This patch fixes a regression in vhost_driver_register() causing VDUSE devices registration to fail systematically because the return value was initialized to -1 and not changed later on for this type of devices. Fixes: 4d2aa150769b ("vhost: remove check around mutex init") Signed-off-by: Maxime

[PATCH v1 00/42] Merge Intel IGC and E1000 drivers, and update E1000 base code

2025-01-31 Thread Anatoly Burakov
Intel IGC and E1000 drivers are distinct, but they are actually generated from the same base code. This patchset will merge together all e1000-derived drivers into one common base, with three different ethdev driver frontends (EM, IGB, and IGC). After the merge is done, base code is also updated t

[PATCH v1 42/42] net/e1000/base: update readme

2025-01-31 Thread Anatoly Burakov
Update README with more up-to-date information. Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/README | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/net/intel/e1000/base/README b/drivers/net/intel/e1000/base/README index b84ee5ad6e..2a0696f3

[PATCH v1 41/42] net/e1000/base: rename NVM version variable

2025-01-31 Thread Anatoly Burakov
From: Piotr Kubaj Rename version to nvm_version to avoid shadowing global variables on some systems. Signed-off-by: Piotr Kubaj Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_i210.c | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/drive

[PATCH v1 37/42] net/e1000/base: fix mac addr hash bit_shift

2025-01-31 Thread Anatoly Burakov
From: Loktionov Aleksandr In e1000_hash_mc_addr_generic() the expression: "mc_addr[4] >> 8 - bit_shift", right shifting "mc_addr[4]" shift by more than 7 bits always yields zero, so hash becomes not so different. Add initialization with bit_shift = 1, and add a loop condition to ensure

[PATCH v1 40/42] net/e1000/base: fix data type in MAC hash

2025-01-31 Thread Anatoly Burakov
From: Barbara Skobiej One of the bit shifts in MAC hash calculation triggers a static analysis warning about a potential overflow. Fix the data type to avoid this. Fixes: af75078fece3 ("first public release") Cc: sta...@dpdk.org Signed-off-by: Barbara Skobiej Signed-off-by: Anatoly Burakov --

[PATCH v1 39/42] net/e1000/base: fix unchecked return

2025-01-31 Thread Anatoly Burakov
From: Dima Ruinskiy Static analysis has detected a write that is not checked for errors, leading to ignored error return value. Add a check. Fixes: edcdb3c5f71b ("e1000/base: fix link flap on 82579") Cc: sta...@dpdk.org Signed-off-by: Dima Ruinskiy Signed-off-by: Anatoly Burakov --- drivers/

[PATCH v1 36/42] net/e1000/base: fix reset for 82580

2025-01-31 Thread Anatoly Burakov
From: Barbara Skobiej Fix setting device reset status bit in e1000_reset_hw_82580() function for 82580 by first reading the register value, and then setting the device reset bit. Fixes: af75078fece3 ("first public release") Cc: sta...@dpdk.org Signed-off-by: Barbara Skobiej Signed-off-by: Anat

[PATCH v1 38/42] net/e1000/base: fix uninitialized variable usage

2025-01-31 Thread Anatoly Burakov
From: Jakub Buchocki <101559614+jbuch...@users.noreply.github.com> Coverity has detected potential usage of uninitialized values inside the array. Fix the warning by initializing array. Fixes: af75078fece3 ("first public release") Cc: sta...@dpdk.org Signed-off-by: Jakub Buchocki Signed-off-by:

[PATCH v1 35/42] net/e1000/base: fix static analysis warnings

2025-01-31 Thread Anatoly Burakov
From: Przemysław Ciesielski There are some static analysis warnings due to wrong data types being used for various operations. Fix them with explicit typecasts. Fixes: 5a32a257f957 ("e1000: more NICs in base driver") Fixes: 38db3f7f50bd ("e1000: update base driver") Cc: sta...@dpdk.org Signed-o

[PATCH v1 34/42] net/e1000/base: fix iterator type

2025-01-31 Thread Anatoly Burakov
From: Amir Avivi Fix static analysis warning about comparison between types of incompatible width, which might lead to an infinite loop due to overflow. Fixes: af75078fece3 ("first public release") Cc: sta...@dpdk.org Signed-off-by: Amir Avivi Signed-off-by: Anatoly Burakov --- drivers/net/i

[PATCH v1 32/42] net/e1000/base: introduce PHY ID retry mechanism

2025-01-31 Thread Anatoly Burakov
From: Nir Efrati On some customer platforms it was observed that invalid PHY ID (0x) was returned on first try. This patch introduces PHY ID retry mechanism to perform retries on PHY ID read for up to a second. Because the original code was intentionally not checking PHY ID due to a different

[PATCH v1 31/42] net/e1000/base: remove non-inclusive language

2025-01-31 Thread Anatoly Burakov
From: Marcin Jurczak This patch removes non-inclusive language from the e1000 shared code and comments. Signed-off-by: Marcin Jurczak Signed-off-by: Anatoly Burakov --- .../net/intel/e1000/base/e1000_80003es2lan.c | 8 ++-- drivers/net/intel/e1000/base/e1000_82571.c| 4 +- drivers/net/

[PATCH v1 33/42] net/e1000/base: add PHY read/write retry mechanism

2025-01-31 Thread Anatoly Burakov
From: Nir Efrati Sporadic MDI errors are observed on some platforms. To address them, a read/write retry mechanism is introduced. Set the initial retry counter to 3 with an option to disable/enable the mechanism for some specific flows that errors are expected. Signed-off-by: Nir Efrati Signed-

[PATCH v1 26/42] net/e1000/base: make debug prints more informative

2025-01-31 Thread Anatoly Burakov
From: Dima Ruinskiy PHY page and register notation traditionally uses decimal numbering. This patch aligns the debug prints to this notation, as well as moves prints to after we get a value of interest to us. Signed-off-by: Dima Ruinskiy Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1

[PATCH v1 29/42] net/e1000/base: improve NVM checksum handling

2025-01-31 Thread Anatoly Burakov
From: Sasha Neftin When reading NVM checksum, we may encounter the following scenarios: - Checksum may be invalid, and can be updated - Checksum may be invalid but cannot be updated because NVM is read-only For the latter case, we should just ignore invalid checksum and not attempt to update it

[PATCH v1 30/42] net/e1000/base: remove redundant access to RO register

2025-01-31 Thread Anatoly Burakov
From: Nir Efrati Remove workaround for hardware synchronization before reset. The original bug that was fixed by this workaround was root caused later and fixed in other ways. Signed-off-by: Nir Efrati Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_ich8lan.c | 17 --

[PATCH v1 28/42] net/e1000/base: hardcode bus parameters for ICH8

2025-01-31 Thread Anatoly Burakov
From: Dima Ruinskiy Current implementation of e1000_get_bus_info_ich8lan first attempts to call e1000_get_bus_info_pcie_generic, and hard codes the bus width if the latter does not return a valid value. However, e1000_get_bus_info_pcie_generic will always fail on an ICH device, since no PCIe cap

[PATCH v1 27/42] net/e1000/base: add WoL definitions

2025-01-31 Thread Anatoly Burakov
From: Adam Ludkiewicz Define constants for WoL control on i210 NICs. Signed-off-by: Adam Ludkiewicz Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_i210.h | 4 1 file changed, 4 insertions(+) diff --git a/drivers/net/intel/e1000/base/e1000_i210.h b/drivers/net/int

[PATCH v1 25/42] net/e1000/base: make e1000_access_phy_wakeup_reg_bm non-static

2025-01-31 Thread Anatoly Burakov
From: Dima Ruinskiy Mark e1000_access_phy_wakeup_reg_bm as non-static. Signed-off-by: Dima Ruinskiy Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_phy.c | 6 ++ drivers/net/intel/e1000/base/e1000_phy.h | 2 ++ 2 files changed, 4 insertions(+), 4 deletions(-) diff -

[PATCH v1 24/42] net/e1000/base: use longer ULP exit timeout on more HW

2025-01-31 Thread Anatoly Burakov
From: Nir Efrati Add some definitions related to ULP WoL, and set longer ULP exit timeout on more MAC types. Signed-off-by: Nir Efrati Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_hw.h | 1 + drivers/net/intel/e1000/base/e1000_ich8lan.c | 2 +- drivers/net/intel/

[PATCH v1 23/42] net/e1000/base: add definition for EXFWSM register

2025-01-31 Thread Anatoly Burakov
From: Nir Efrati Add Extended Firmware Semaphore (EXFWSM) register definition. Signed-off-by: Nir Efrati Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_defines.h | 3 ++- drivers/net/intel/e1000/base/e1000_regs.h| 1 + 2 files changed, 3 insertions(+), 1 deletion(-)

[PATCH v1 22/42] net/e1000/base: improve code flow in ICH8LAN

2025-01-31 Thread Anatoly Burakov
From: Piotr Pietruszewski This change rearranges the ICH8LAN code to have less indentation levels. Signed-off-by: Piotr Pietruszewski Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_ich8lan.c | 84 ++-- 1 file changed, 43 insertions(+), 41 deletions(-) d

[PATCH v1 21/42] net/e1000/base: add LPI counters

2025-01-31 Thread Anatoly Burakov
From: Sasha Neftin Add new fields in structure to indicate if EEE LPI entries have been observed on Tx and Rx path. Signed-off-by: Sasha Neftin Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_hw.h | 2 ++ drivers/net/intel/e1000/base/e1000_mac.c | 2 ++ 2 files changed,

[PATCH v1 20/42] net/e1000/base: add profile information field

2025-01-31 Thread Anatoly Burakov
From: Sasha Neftin Some tools require device profile information to be present, so add it. Signed-off-by: Sasha Neftin Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_hw.h | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/intel/e1000/base/e1000_hw.h b/driv

[PATCH v1 18/42] net/e1000/base: add EEE common API function

2025-01-31 Thread Anatoly Burakov
From: Evgeny Efimov Add enable/disable EEE API to base code. Signed-off-by: Evgeny Efimov Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_api.c | 16 drivers/net/intel/e1000/base/e1000_api.h | 1 + drivers/net/intel/e1000/base/e1000_hw.h | 1 + dri

[PATCH v1 19/42] net/e1000/base: add queue select definitions

2025-01-31 Thread Anatoly Burakov
From: Sasha Neftin Add definitions for address select mask (selects source address to be used in the address filtering), as well as queue select (indicates which Rx queue should get the packet matching this MAC address). Signed-off-by: Sasha Neftin Signed-off-by: Anatoly Burakov --- drivers/n

[PATCH v1 17/42] net/e1000/base: workaround for packet loss

2025-01-31 Thread Anatoly Burakov
From: Nir Efrati On some MAC types, packet loss is observed due to wake DMA clock gating. Disable wake DMA clock for some MAC types to avoid packet loss. Signed-off-by: Nir Efrati Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_ich8lan.c | 7 +++ drivers/net/intel/e1

[PATCH v1 16/42] net/e1000/base: correct disable k1 logic

2025-01-31 Thread Anatoly Burakov
From: Vitaly Lifshits Starting from MTP PHY type there is a synchronization issue between the PHY's clock and PCH's synopsis PHY. This causes Tx packets corruptions. The workaround to this issue is to change P0s power down state from P0/P0s to P1 prior to disabling K1. Signed-off-by: Vitaly Lif

[PATCH v1 15/42] net/e1000/base: skip MANC check for 82575

2025-01-31 Thread Anatoly Burakov
From: Carolyn Wyborny On 82575, driver is not supposed to check if managegement control is enabled, and flush the Rx FIFO unconditionally. Signed-off-by: Carolyn Wyborny Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_base.c | 3 ++- 1 file changed, 2 insertions(+), 1 de

[PATCH v1 14/42] net/e1000/base: correct mPHY access logic

2025-01-31 Thread Anatoly Burakov
The original code had incorrect indentation, and the fix was applied to follow the indentation, i.e. adding brackets making the indentation valid. However, the actual issue was incorrect indentation and not missing braces, so the fix was incorrect. This fix restores the original logic and corrects

[PATCH v1 13/42] net/e1000/base: correct minor formatting issues

2025-01-31 Thread Anatoly Burakov
There are some mismatches between what's in the base driver, and what is in DPDK version of it. This patch fixes the following issues: - Unneeded #ifndef clause - Missing comments - Duplicate definitions - Missed definitions - Extraneous fall-through comments - Function comments not matching funct

[PATCH v1 12/42] net/e1000: add support for more I219 devices

2025-01-31 Thread Anatoly Burakov
From: Vitaly Lifshits Add support for new hardware ID's from the I219 series. Signed-off-by: Lifshits, Vitaly Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_api.c | 32 + drivers/net/intel/e1000/base/e1000_hw.h | 36 +--- drivers

[PATCH v1 11/42] net/e1000: add missing hardware support

2025-01-31 Thread Anatoly Burakov
Some hardware device ID's from i210 and i219 series were added over the years, but they were never added to the table of support PCI ID's for EM and IGB drivers respectively. This commit adds the missing device ID's to the table. Signed-off-by: Anatoly Burakov --- Notes: This commit is not c

[PATCH v1 10/42] net/e1000: add missing i225 devices

2025-01-31 Thread Anatoly Burakov
Add missing i225 devices to the list of supported devices by IGC driver, as well as resort the device list to match sorting order of definitions in the base code. Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/igc_ethdev.c | 14 +- 1 file changed, 9 insertions(+), 5 delet

[PATCH v1 08/42] net/e1000/base: add misc definitions for i225

2025-01-31 Thread Anatoly Burakov
Add in various miscellaneous definitions (Rx/Tx, RSS, etc.) for i225 series NICs. This is mostly identical to IGC driver, with some minor differences due to the way IGC driver was originally generated. Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_defines.h | 107

[PATCH v1 06/42] net/e1000/base: add LTR support in i225

2025-01-31 Thread Anatoly Burakov
Enable Latency Tolerance Reporting (LTR) code and add its associated definitions for i225. This is mostly identical to IGC driver, with some minor differences due to the way IGC driver was originally generated. Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_defines.h | 31

[PATCH v1 07/42] net/e1000/base: add eee support for i225

2025-01-31 Thread Anatoly Burakov
Add EEE advertising support for i225 series NICs. This is mostly identical to IGC driver, with some minor differences due to the way IGC driver was originally generated. Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_defines.h | 9 +++ drivers/net/intel/e1000/base/e1000_i

[PATCH v1 05/42] net/e1000/base: add NVM/EEPROM support for i225

2025-01-31 Thread Anatoly Burakov
Add support for NVM/EEPROM operations for i225 series NICs. This is mostly identical to IGC driver, with some minor differences due to the way IGC driver was originally generated. Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_defines.h | 40 + drivers/net/intel/e1000/bas

[PATCH v1 04/42] net/e1000/base: add LED blink support for i225

2025-01-31 Thread Anatoly Burakov
Add LED blink support for i225 series NICs. This is mostly identical to IGC driver, with some minor differences due to the way IGC driver was originally generated. Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_i225.c | 44 +++ drivers/net/intel/e1000/b

[PATCH v1 03/42] net/e1000/base: add link bringup support for i225

2025-01-31 Thread Anatoly Burakov
Add link bringup support for i225 series NICs. This is mostly identical to IGC driver, with some minor differences due to the way IGC driver was originally generated. Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_defines.h | 16 +++ drivers/net/intel/e1000/base/e1000_i22

[PATCH v1 02/42] net/e1000/base: add initial support for i225

2025-01-31 Thread Anatoly Burakov
Add basic init, and PHY/MAC type support for i225 series NICs. This is mostly identical to IGC driver, with some minor differences due to the way IGC driver was originally generated. Signed-off-by: Anatoly Burakov --- drivers/net/intel/e1000/base/e1000_api.c | 20 ++ drivers/net/intel/e1000

[PATCH v1 01/42] net/e1000/base: fix semaphore timeout value

2025-01-31 Thread Anatoly Burakov
From: Pawel Malinowski According to datasheet software ownership of SWSM.SWESMBI bit should not exceed 100ms. Current implementation caused incorrect timeout counter values, where each iteration equals 50us delay. Because of that driver was allowed to wait for semaphore even for 1,5s. This might

Re: [PATCH v2] net/ice: fix how ice driver handles flows

2025-01-31 Thread Bruce Richardson
On Thu, Jan 30, 2025 at 04:14:42PM +, Vladimir Medvedkin wrote: > Currently ICE PMD uses group attribute to select the appropriate HW engine > to offload the flow. This behavior violates the rte_flow API, existing > documentation/examples, and reveals hardware specific details. > > This patch

Re: [PATCH] net/ice: fix segmentation fault Rx function

2025-01-31 Thread Bruce Richardson
On Fri, Jan 31, 2025 at 11:43:53AM +0100, David Marchand wrote: > On Thu, Jan 30, 2025 at 8:26 PM Vladimir Medvedkin > wrote: > > > > Fix a typo in avx512 rx function, where accidentally the _mm_load_si128 > > argument was passed by value instead of a pointer. > > > > Fixes: 43fd3624fdfe ("drivers

Re: [PATCH] net/ice: fix segmentation fault Rx function

2025-01-31 Thread David Marchand
On Thu, Jan 30, 2025 at 8:26 PM Vladimir Medvedkin wrote: > > Fix a typo in avx512 rx function, where accidentally the _mm_load_si128 > argument was passed by value instead of a pointer. > > Fixes: 43fd3624fdfe ("drivers: replace GCC pragma with cast") > > Signed-off-by: Vladimir Medvedkin Indee

RE: [RFC 7/7] raw/ifpga: use EAL version of TAILQ_FOREACH_SAFE

2025-01-31 Thread Xu, Rosen
Hi, > -Original Message- > From: Stephen Hemminger > Sent: Tuesday, January 28, 2025 2:04 AM > To: dev@dpdk.org > Cc: Stephen Hemminger ; Xu, Rosen > > Subject: [RFC 7/7] raw/ifpga: use EAL version of TAILQ_FOREACH_SAFE > > Prefer the EAL version over local version of macro. > > Signed

[PATCH 11/34] common/cnxk: update default eng group for cn20k

2025-01-31 Thread Nithin Dabilpuram
CN20K does not have IE engines, hence change the default eng group for cn20k and use legacy for cn10k or older version. Signed-off-by: Nithin Dabilpuram --- drivers/common/cnxk/roc_cpt.c | 6 +++--- drivers/common/cnxk/roc_cpt.h | 10 +++--- drivers/common/cnxk/roc_nix_inl.c

[PATCH 34/34] common/cnxk: move interrupt handling to platform-specific

2025-01-31 Thread Nithin Dabilpuram
From: Satha Rao This change refactors the interrupt handling to be platform-specific. Some platforms directly call ioctls, while others provide a library API for the same functionality. Moving the interrupt handling to platform-specific implementations enhances clarity and maintainability. Signe

[PATCH 33/34] net/cnxk: update MC address list configure API

2025-01-31 Thread Nithin Dabilpuram
From: Satha Rao Return -ENOSPC when there is no space to update the complete MC address list, without flushing the existing list of addresses. Signed-off-by: Satha Rao --- drivers/net/cnxk/cnxk_ethdev_ops.c | 32 ++ 1 file changed, 24 insertions(+), 8 deletions(-)

[PATCH 32/34] common/cnxk: change the error log to a debug log

2025-01-31 Thread Nithin Dabilpuram
From: Srujana Challa This patch updates the error log to a debug log since it is not needed. Signed-off-by: Srujana Challa --- drivers/common/cnxk/roc_nix_inl_dev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/common/cnxk/roc_nix_inl_dev.c b/drivers/common/cnxk/

[PATCH 31/34] common/cnxk: add stats reset for inline device

2025-01-31 Thread Nithin Dabilpuram
From: Monendra Singh Kushwaha This patch adds support to reset inline device stats. Signed-off-by: Monendra Singh Kushwaha --- drivers/common/cnxk/roc_nix_inl.h | 1 + drivers/common/cnxk/roc_nix_inl_dev.c | 27 +++ drivers/common/cnxk/version.map | 1 + 3 f

[PATCH 30/34] common/cnxk: fix inbound IPsec sa setup

2025-01-31 Thread Nithin Dabilpuram
Make sure the w2 in inbound SA is set for inline IPsec have L3 header on errors. Fixes: 350b7a536a51 ("common/cnxk: enable L3 header write back in SA") Signed-off-by: Nithin Dabilpuram --- drivers/common/cnxk/cnxk_security.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dr

[PATCH 29/34] net/cnxk: fix of NIX send header L3 type

2025-01-31 Thread Nithin Dabilpuram
From: Rahul Bhansali For small packets less than 55 bytes, SQ error interrupts are observed. When checksum offload flag is enabled and mbuf ol_flags are not set, then default L3 type will be set to IPv6 in vector processing. Based on this, HW will still validate for minimum header size and genera

[PATCH 28/34] common/cnxk: enable allmulti mode on rpm/cgx VF

2025-01-31 Thread Nithin Dabilpuram
From: Monendra Singh Kushwaha This patch enables allmulti mode on rpm/cgx vf devices. Signed-off-by: Monendra Singh Kushwaha --- .mailmap | 1 + drivers/common/cnxk/roc_mbox.h| 1 + drivers/common/cnxk/roc_nix_npc.c | 10 +++--- 3 files changed, 9 insertions(

[PATCH 27/34] event/cnxk: inline IPsec Rx support for cn20k

2025-01-31 Thread Nithin Dabilpuram
From: Rahul Bhansali Inline IPsec Rx support for cn20k Signed-off-by: Rahul Bhansali --- drivers/event/cnxk/cn20k_worker.h | 111 -- drivers/net/cnxk/cn20k_rx.h | 5 +- 2 files changed, 109 insertions(+), 7 deletions(-) diff --git a/drivers/event/cnxk/cn20k

[PATCH 26/34] net/cnxk: inline IPsec Rx support for cn20k

2025-01-31 Thread Nithin Dabilpuram
From: Rahul Bhansali Inline IPsec Rx support for cn20k Signed-off-by: Rahul Bhansali --- drivers/event/cnxk/cn20k_worker.h | 4 +- drivers/net/cnxk/cn20k_rx.h | 737 -- 2 files changed, 689 insertions(+), 52 deletions(-) diff --git a/drivers/event/cnxk/cn20

[PATCH 25/34] net/cnxk: store pool buffer size in lookup memory

2025-01-31 Thread Nithin Dabilpuram
From: Rahul Bhansali Store the pool buffer size in lookup memory to calculate mbuf start address for reassembly case in fastpath. Also, restructured lookup memory data per port. Signed-off-by: Rahul Bhansali --- drivers/net/cnxk/cn20k_ethdev.c | 17 + drivers/net/cnxk/cn20k_rxtx.h

[PATCH 24/34] common/cnxk: update CPT RXC time config mbox for cn20k

2025-01-31 Thread Nithin Dabilpuram
From: Rahul Bhansali Sync in CPT_RXC_TIME_CFG mbox as per new fields added for cn20k and restructure to support it. Signed-off-by: Rahul Bhansali --- drivers/common/cnxk/roc_mbox.h| 2 ++ drivers/common/cnxk/roc_nix_inl.c | 55 +-- drivers/common/cnxk/roc_nix_i

[PATCH 21/34] common/cnxk: add NPC action2 support

2025-01-31 Thread Nithin Dabilpuram
From: Rahul Bhansali Add action2 config for IPsec rule. Signed-off-by: Rahul Bhansali --- drivers/common/cnxk/hw/nix.h | 13 +++-- drivers/common/cnxk/roc_mbox.h | 1 + drivers/common/cnxk/roc_npc.h | 1 + drivers/common/cnxk/roc_npc_mcam.c | 1 + 4 files changed, 14

[PATCH 23/34] net/cnxk: support for cn20k inline IPsec session

2025-01-31 Thread Nithin Dabilpuram
Add support for cn20k inline IPsec session create/destroy. Signed-off-by: Nithin Dabilpuram --- drivers/net/cnxk/cn10k_ethdev_sec.c |7 - drivers/net/cnxk/cn20k_ethdev.c | 11 + drivers/net/cnxk/cn20k_ethdev.h | 17 + drivers/net/cnxk/cn20k_ethdev_sec.c | 1182 +++

[PATCH 22/34] common/cnxk: support for NPC inline rule for cn20k

2025-01-31 Thread Nithin Dabilpuram
Use UCAST_CPT in cn20k as opposed to UCAST_IPSEC in cn10k for inline IPsec rule. Signed-off-by: Nithin Dabilpuram --- drivers/common/cnxk/hw/nix.h| 1 + drivers/common/cnxk/roc_npc.c | 15 +++ drivers/common/cnxk/roc_npc_mcam.c | 7 --- drivers/common

[PATCH 20/34] common/cnxk: add API to fetch inline profile ID

2025-01-31 Thread Nithin Dabilpuram
From: Rahul Bhansali For Inline device, add new roc API to get IPsec and reassembly profile id. Signed-off-by: Rahul Bhansali --- drivers/common/cnxk/roc_nix_inl.c | 60 +++ drivers/common/cnxk/roc_nix_inl.h | 2 ++ 2 files changed, 62 insertions(+) diff --git a/d

[PATCH 19/34] common/cnxk: add NIX inline reassembly profile config

2025-01-31 Thread Nithin Dabilpuram
From: Rahul Bhansali Reassembly profile configuration for nix inline path. Signed-off-by: Rahul Bhansali --- drivers/common/cnxk/roc_features.h | 6 + drivers/common/cnxk/roc_ie_ow.c| 22 +++ drivers/common/cnxk/roc_ie_ow.h| 2 + drivers/common/cnxk/roc_nix.h

[PATCH 18/34] common/cnxk: support for inline inbound queue

2025-01-31 Thread Nithin Dabilpuram
In CN20k, since we have 16 Inline inbound queues possible, add support to attach inline inbound queue directly to the application instead of getting it attached to CPT PF. Signed-off-by: Nithin Dabilpuram --- drivers/common/cnxk/roc_features.h | 12 + drivers/common/cnxk/roc_mbox.h

[PATCH 14/34] common/cnxk: support for inline IPsec for cn20k

2025-01-31 Thread Nithin Dabilpuram
From: Rahul Bhansali Support in NIX inline device for inbound and outbound SA init. Signed-off-by: Rahul Bhansali --- drivers/common/cnxk/roc_cpt.h | 1 + drivers/common/cnxk/roc_nix_inl.c | 62 ++- drivers/common/cnxk/roc_nix_inl_dev.c | 22 ++ dri

[PATCH 17/34] common/cnxk: add mbox define for inline profile support

2025-01-31 Thread Nithin Dabilpuram
Add mbox support for global inline profile allocation. Signed-off-by: Nithin Dabilpuram --- drivers/common/cnxk/roc_mbox.h| 45 ++ drivers/common/cnxk/roc_nix_inl.c | 53 +++ 2 files changed, 85 insertions(+), 13 deletions(-) diff --git a/

[PATCH 16/34] common/cnxk: update feature flags for cn20k

2025-01-31 Thread Nithin Dabilpuram
From: Rahul Bhansali Features updated for cn20k platform. Signed-off-by: Rahul Bhansali --- drivers/common/cnxk/roc_features.h | 22 +++--- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/drivers/common/cnxk/roc_features.h b/drivers/common/cnxk/roc_features.h i

[PATCH 15/34] common/cnxk: support inline SA context invalidate

2025-01-31 Thread Nithin Dabilpuram
From: Rahul Bhansali Add SA context invalidate support for cn20k. Signed-off-by: Rahul Bhansali --- drivers/common/cnxk/hw/cpt.h | 11 - drivers/common/cnxk/roc_nix.h | 1 + drivers/common/cnxk/roc_nix_inl.c | 37 ++- 3 files changed, 47 insertions

[PATCH 13/34] common/cnxk: add cn20k meta pkt structs

2025-01-31 Thread Nithin Dabilpuram
From: Rahul Bhansali Adds below structures for cn20k, - cpt_parse_hdr_s - cpt_rxc_sg_s - cpt_rxc_ptr_info_s Signed-off-by: Rahul Bhansali --- drivers/common/cnxk/hw/cpt.h| 211 +--- drivers/common/cnxk/roc_cpt.h | 2 +- drivers/common/cnxk/roc_cpt_debug.

[PATCH 12/34] common/cnxk: support for cn20k IPsec session

2025-01-31 Thread Nithin Dabilpuram
Add support for cn20k IPsec session create/destroy. Signed-off-by: Nithin Dabilpuram --- drivers/common/cnxk/cnxk_security.c | 546 +++- drivers/common/cnxk/cnxk_security.h | 12 +- drivers/common/cnxk/version.map | 2 + 3 files changed, 557 insertions(+), 3 deleti

[PATCH 10/34] common/cnxk: add 20k defines for IPsec

2025-01-31 Thread Nithin Dabilpuram
From: Anoob Joseph Add 20K defines for IPsec. Signed-off-by: Anoob Joseph --- drivers/common/cnxk/meson.build | 1 + drivers/common/cnxk/roc_api.h | 1 + drivers/common/cnxk/roc_ie_ow.c | 41 +++ drivers/common/cnxk/roc_ie_ow.h | 537 drivers/common/cnxk

[PATCH 08/34] common/cnxk: add CPT cn20k device enumeration

2025-01-31 Thread Nithin Dabilpuram
From: Anoob Joseph Add CPT cn20k device enumeration. Signed-off-by: Anoob Joseph --- drivers/common/cnxk/roc_constants.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/common/cnxk/roc_constants.h b/drivers/common/cnxk/roc_constants.h index 67cd74b28a..ac492651de 100644 --- a/dr

[PATCH 09/34] common/cnxk: add CPT LMT defines

2025-01-31 Thread Nithin Dabilpuram
From: Anoob Joseph add CPT LMT defines Signed-off-by: Anoob Joseph --- drivers/common/cnxk/roc_cpt.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/common/cnxk/roc_cpt.h b/drivers/common/cnxk/roc_cpt.h index c8cf9354da..ac27479371 100644 --- a/drivers/common/cnxk/roc_cpt.h +++

[PATCH 06/34] common/cnxk: enable IE with cn9k and cn10k only

2025-01-31 Thread Nithin Dabilpuram
From: Anoob Joseph IE engines are present only with cn9k and cn10k. Signed-off-by: Anoob Joseph --- drivers/common/cnxk/roc_cpt.c | 43 +++ drivers/common/cnxk/roc_cpt.h | 3 +++ 2 files changed, 41 insertions(+), 5 deletions(-) diff --git a/drivers/common/cnx

[PATCH 04/34] common/cnxk: move CTX defines to common

2025-01-31 Thread Nithin Dabilpuram
From: Anoob Joseph CTX defines are common for all cases using CPT CTX. Signed-off-by: Anoob Joseph --- drivers/common/cnxk/cnxk_security.h | 1 + drivers/common/cnxk/roc_cpt.h | 16 drivers/common/cnxk/roc_ie_ot.h | 16 drivers/net/cnxk/cn10k_rxtx.h

[PATCH 07/34] common/cnxk: make special handling only for 9k

2025-01-31 Thread Nithin Dabilpuram
From: Anoob Joseph 9k would need special handling compared to 10k & 20k. Update the check to reflect the same. Signed-off-by: Anoob Joseph --- drivers/common/cnxk/roc_cpt.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/common/cnxk/roc_cpt.c b/drivers/common/

  1   2   >