Re: [PATCH] net/hns3: remove roh devices

2024-10-30 Thread Jie Hai
On 2024/10/26 14:38, Jie Hai wrote: From: Dengdui Huang The devices added in commit 3f1436d7006c ("net/hns3: support new device") is no longer available, so revert it. Fixes: 3f1436d7006c ("net/hns3: support new device") Cc: sta...@dpdk.org Signed-off-by: Dengdui Huang --- drivers/net/hns3

[PATCH v5 52/80] net/ntnic: update alignment for virt queue structs

2024-10-30 Thread Serhii Iliushyk
Update incorrect alignment Signed-off-by: Serhii Iliushyk --- v2 * Fix __rte_packed usage Original NT PMD driver use pragma pack(1) wich is similar with combination attributes packed and aligned In this case aligned(1) can be ignored in case of use attribute packed

Re: [PATCH] net/hns3: remove roh devices

2024-10-30 Thread Ferruh Yigit
On 10/26/2024 7:38 AM, Jie Hai wrote: > From: Dengdui Huang > > The devices added in commit 3f1436d7006c ("net/hns3: support new device") > is no longer available, so revert it. > > Fixes: 3f1436d7006c ("net/hns3: support new device") > Cc: sta...@dpdk.org > > Signed-off-by: Dengdui Huang > H

Re: [PATCH] net/vmxnet3: Fix vmxnet3 NULL pointer deref after configuration failure

2024-10-30 Thread Ferruh Yigit
On 10/27/2024 8:43 AM, Morten Brørup wrote: >> From: Roger B Melton [mailto:rmel...@cisco.com] >> Sent: Saturday, 26 October 2024 16.34 >> >> Problem: >> >> If vxmnet3_dev_configure() fails, applications may call >> vmxnet3_dev_close(). If the failure occurs before the vmxnet3 >> hw->shared structu

Re: [PATCH v5 00/80] Provide flow filter and statistics support

2024-10-30 Thread Ferruh Yigit
On 10/30/2024 9:38 PM, Serhii Iliushyk wrote: > The list of updates provided by the patchset: > - FW version > - Speed capabilities > - Link status (Link update only) > - Unicast MAC filter > - Multicast MAC filter > - Promiscuous mode (Enable only. The device always run promiscuous mod

Re: [PATCH v6] testpmd: add hairpin map parameter

2024-10-30 Thread Etelson, Gregory
Hello Stephen, Did you consider that most of the hairpin_conf values could just be set directly, avoiding intermediate variables. fixed. + diag = rte_eth_rx_hairpin_queue_setup + (pi, qi, nb_rxd, &hairpin_conf); fixed.

[PATCH v7] testpmd: add hairpin map parameter

2024-10-30 Thread Gregory Etelson
Hairpin offloads packet forwarding between ports. Packet is expected on Rx port , Rx queue and is forwarded to Tx port Tx queue . Testpmd implements a static hairpin configuration scheme. The new parameter allows explicit selection of Rx and Tx ports and queues in hairpin configuration. The new

[PATCH v5 64/80] net/ntnic: add high-level flow aging support

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov add flow aging functions to the ops structure Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/nthw/flow_api/flow_api.c| 71 +++ drivers/net/ntnic/ntnic_filter/ntnic_filter.c | 88 +++ drivers/net/ntnic/ntnic_mod_reg.h |

[PATCH v5] doc: modernize build instructions on Windows

2024-10-30 Thread Andre Muezerie
Meson 0.57 was an unstable version and is now outdated. The referenced bug in Meson 0.58 is fixed in stable releases. Recommend the latest stable release which is tested. Building DPDK applications that run on 32-bit Windows is currently not supported. However, some Visual Studio environments defa

[PATCH v5 69/80] net/ntnic: add meter support

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Add meter implementation to the profile inline. management functions were extended with meter flow support. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/features/ntnic.ini| 1 + doc/guides/nics/ntnic.rst | 1 + doc/guides/rel

Re: [PATCH v3 1/1] net/bonding: make bonding functions stable

2024-10-30 Thread lihuisong (C)
Acked-by: Huisong Li 在 2024/10/30 23:42, Lukas Sismis 写道: Remove rte_experimental macros from the stable functions as they have been part of the stable API since 23.11. Signed-off-by: Lukas Sismis --- drivers/net/bonding/rte_eth_bond.h| 4 drivers/net/bonding/rte_eth_bond_802

[PATCH v5 07/80] net/ntnic: add NT flow profile management implementation

2024-10-30 Thread Serhii Iliushyk
Implements functions required for (re)set NT flow dev Signed-off-by: Serhii Iliushyk --- drivers/net/ntnic/include/flow_api.h | 4 ++ drivers/net/ntnic/include/flow_api_engine.h | 10 drivers/net/ntnic/meson.build | 4 ++ drivers/net/ntnic/nthw/flow_api/flow_gro

[PATCH v5 59/80] net/ntnic: add STA module

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets fpga map was extended with STA module support which enable statistics functionality. Signed-off-by: Oleksandr Kolomeiets --- .../supported/nthw_fpga_9563_055_049_.c | 92 ++- .../nthw/supported/nthw_fpga_mod_str_map.c| 1 + .../nthw/support

[PATCH] net/ice: enable link speed 200G

2024-10-30 Thread Mingjin Ye
ICE Enable 200G link speed capability. Fixes: 36afbc269081 ("net/ice: support link speed change") Signed-off-by: Mingjin Ye --- drivers/net/ice/ice_ethdev.c | 11 ++- drivers/net/ice/ice_ethdev.h | 12 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/drivers/n

Re: [PATCH v4 05/86] net/ntnic: add minimal NT flow inline profile

2024-10-30 Thread Ferruh Yigit
On 10/30/2024 9:08 PM, Serhii Iliushyk wrote: >> On 30.10.2024, 03:56, "Ferruh Yigit" wrote: >> >> On 10/29/2024 4:41 PM, Serhii Iliushyk wrote: >>> The flow profile implements a all flow related operations >>> >> >> >> Can you please give some more details about the profiles, and "inline >> profil

Re: [PATCH v5 49/80] net/ntnic: add Tx CPY module registers

2024-10-30 Thread Stephen Hemminger
On Wed, 30 Oct 2024 22:38:56 +0100 Serhii Iliushyk wrote: > From: Oleksandr Kolomeiets > > The TX Copy module writes data to packet fields based on the lookup > performed by the FLM module. > This is used for NAT and can support other actions based > on the RTE action MODIFY_FIELD. > > Signed-

[PATCH v5 24/80] net/ntnic: add action modify filed

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Add possibility to use RTE_FLOW_ACTION_TYPE_MODIFY_FIELD. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/features/ntnic.ini| 1 + doc/guides/nics/ntnic.rst | 1 + drivers/net/ntnic/include/flow_api_engine.h | 7 + drivers/ne

[PATCH v5 47/80] net/ntnic: add RPP LR module registers

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets The RX Packet Process for Local Retransmit module can add bytes in the FPGA TX pipeline, which is needed when the packet increases in size. Note, this makes room for packet expansion, but the actual expansion is done by the modules. Signed-off-by: Oleksandr Kolomeiets

Re: [PATCH] net/vmxnet3: Fix vmxnet3 NULL pointer deref after configuration failure

2024-10-30 Thread Roger Melton (rmelton)
On 10/30/24 4:28 PM, Roger Melton (rmelton) wrote: > On 10/29/24 11:15 PM, Ferruh Yigit wrote: >> On 10/26/2024 3:33 PM, Roger B Melton wrote: >>> Problem: >>> >>> If vxmnet3_dev_configure() fails, applications may call >>> vmxnet3_dev_close(). If the failure occurs before the vmxnet3 >>> hw->share

[PATCH v5 70/80] net/ntnic: add meter module

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Meter module was added: 1. add/remove profile 2. create/destroy flow 3. add/remove meter policy 4. read/update stats eth_dev_ops struct was extended with ops above. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/features/ntnic.ini| 1 + drivers/net/

[PATCH v5 65/80] net/ntnic: add aging to the inline profile

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Added implementation for flow get aging. Module which operate with age queue was extended with get, count and size operations. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/meson.build | 1 + .../flow_api/profile_inline/flm_age_queue.c | 49

[PATCH v5 71/80] net/ntnic: add action update support

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov rte_flow_ops was extended with action update feature. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/ntnic_filter/ntnic_filter.c | 66 +++ drivers/net/ntnic/ntnic_mod_reg.h | 10 +++ 2 files changed, 76 insertions(+) diff --git a/dri

[PATCH v5 61/80] net/ntnic: add xStats

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Extended statistics implementation and initialization were added. Extended set of operations for eth dev with xstats support. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/features/ntnic.ini| 1 + doc/guides/nics/ntnic.rst | 2

[PATCH v5 53/80] net/ntnic: enable RSS feature

2024-10-30 Thread Serhii Iliushyk
Enable receive side scaling Signed-off-by: Serhii Iliushyk --- v4 * Use RTE_MIN instead of the ternary operator. --- doc/guides/nics/features/ntnic.ini| 3 + doc/guides/nics/ntnic.rst | 7 ++ drivers/net/ntnic/include/create_elements.h | 1 + drivers/net/ntni

[PATCH v5 58/80] net/ntnic: add TSM module

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov TSM module which operate with timers in the physical nic was added. Necessary defines and implementation were added. The Time Stamp Module controls every aspect of packet timestamping, including time synchronization, time stamp format, PTP protocol, etc. Signed-off-by:

[PATCH v5 76/80] net/ntnic: add async create/destroy declaration

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov implementation for async create and destroy flow. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/include/flow_api_engine.h | 8 ++ drivers/net/ntnic/ntnic_ethdev.c | 1 + drivers/net/ntnic/ntnic_filter/ntnic_filter.c | 105 ++

[PATCH v5 54/80] net/ntnic: add statistics support

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Statistics init, setup, get, reset, and their implementation was added. Statistics FPGA defines were added. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/adapter/nt4ga_adapter.c | 29 +- .../net/ntnic/adapter/nt4ga_stat/nt4ga_stat.c | 192 + .../n

[PATCH v5 51/80] net/ntnic: add Tx RPL module registers

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets The TX Replacer module can replace a range of bytes in a packet. The replacing data is stored in a table in the module and will often contain tunnel data. Signed-off-by: Oleksandr Kolomeiets --- .../supported/nthw_fpga_9563_055_049_.c | 41 ++-

[PATCH v5 68/80] net/ntnic: add termination thread

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Introduce clear_pdrv to unregister driver from global tracking. Modify drv_deinit to call clear_pdirv and ensure safe termination. Add flm sta and age event free. Signed-off-by: Danylo Vodopianov --- .../flow_api/profile_inline/flm_age_queue.c | 10 +++ .../flow_api

[PATCH v5 78/80] net/ntnic: add async flow create/delete implementation

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Inline profile was extended with async flow create and delete features implementation. async create and destroy was added to the flow filter ops. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/ntnic.rst | 1 + doc/guides/rel_notes/release_24

[PATCH v5 55/80] net/ntnic: add rpf module

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov The Receive Port FIFO module controls the small FPGA FIFO that packets are stored in before they enter the packet processor pipeline. Signed-off-by: Danylo Vodopianov --- .../net/ntnic/adapter/nt4ga_stat/nt4ga_stat.c | 25 +++- drivers/net/ntnic/include/ntnic_stat.h

[PATCH v5 75/80] net/ntnic: remove unnecessary

2024-10-30 Thread Serhii Iliushyk
Type casting: The dev_private has type void * and type casting is not necessary. FLOW_DEBUG condition Use the dynamic logging Signed-off-by: Serhii Iliushyk --- drivers/net/ntnic/nthw/flow_api/flow_api.c| 4 -- .../net/ntnic/nthw/ntnic_meter/ntnic_meter.c | 18 +++ driv

[PATCH v5 77/80] net/ntnic: add async template declaration

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov rte_flow_ops was exnteded with next features support 1. flow pattern template create 2. flow pattern template destroy 3. flow actions template create 4. flow actions template destroy 5. flow template table create 6. flow template table destroy Signed-off-by: Danylo Vodopi

[PATCH v5 48/80] net/ntnic: add SLC LR module registers

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets The Slicer for Local Retransmit module can cut of the head a packet before the packet leaves the FPGA RX pipeline. This is used when the TX pipeline is configured to add a new head in the packet Signed-off-by: Oleksandr Kolomeiets --- .../supported/nthw_fpga_9563_055

[PATCH v5 66/80] net/ntnic: add flow info and flow configure support

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Inline profile was extended with flow info and create. Module which operate with age queue was extended with create and free operations. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/include/flow_api.h | 3 + drivers/net/ntnic/include/flow_api_engine

[PATCH v5 72/80] net/ntnic: add flow action update

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov flow_filter_ops was extended with flow action update API. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/nthw/flow_api/flow_api.c | 16 .../profile_inline/flow_api_profile_inline.h | 5 + 2 files changed, 21 insertions(+) diff --

[PATCH v5 60/80] net/ntnic: add TSM module

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets fpga map was extended with tsm module support which enable statistics functionality. Signed-off-by: Oleksandr Kolomeiets --- doc/guides/nics/features/ntnic.ini| 1 + .../supported/nthw_fpga_9563_055_049_.c | 394 +- .../nthw/suppor

[PATCH v5 45/80] net/ntnic: add MAC Rx module registers

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets The IP Fragmenter module can fragment outgoing packets based on a programmable MTU. Signed-off-by: Oleksandr Kolomeiets --- .../supported/nthw_fpga_9563_055_049_.c | 61 ++- .../ntnic/nthw/supported/nthw_fpga_mod_defs.h | 3 +- .../ntnic/nthw/s

[PATCH v5 50/80] net/ntnic: add Tx INS module registers

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets The TX Inserter module injects zeros into an offset of a packet, effectively expanding the packet. Signed-off-by: Oleksandr Kolomeiets --- .../supported/nthw_fpga_9563_055_049_.c | 19 ++- .../ntnic/nthw/supported/nthw_fpga_mod_defs.h | 3 ++-

[PATCH v5 56/80] net/ntnic: add statistics poll

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Mechanism which poll statistics module and update values with dma module. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/ntnic.rst | 1 + doc/guides/rel_notes/release_24_11.rst| 1 + .../net/ntnic/adapter/nt4ga_stat/nt4ga_stat.c | 3

[PATCH v5 67/80] net/ntnic: add flow aging event

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Port thread was extended with new age event callback handler. LRN, INF, STA registers getter setter was added. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/features/ntnic.ini| 1 + doc/guides/nics/ntnic.rst | 19 ++ doc/guides/

[PATCH v5 46/80] net/ntnic: add MAC Tx module registers

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets The Media Access Control Transmit module contains counters that keep track on transmitted packets. Signed-off-by: Oleksandr Kolomeiets --- .../supported/nthw_fpga_9563_055_049_.c | 38 ++- .../ntnic/nthw/supported/nthw_fpga_mod_defs.h | 3 +- .

[PATCH v5 80/80] net/ntnic: add MTU configuration

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets Add supporting API rte_eth_dev_set_mtu Signed-off-by: Oleksandr Kolomeiets --- doc/guides/nics/features/default.ini | 2 +- doc/guides/nics/features/ntnic.ini| 1 + doc/guides/nics/ntnic.rst | 1 + doc/guides/rel_notes/rele

[PATCH v5 08/80] net/ntnic: add create/destroy implementation for NT flows

2024-10-30 Thread Serhii Iliushyk
Implements flow create/destroy functions with minimal capabilities item any action port id Signed-off-by: Serhii Iliushyk --- doc/guides/nics/features/ntnic.ini| 6 + doc/guides/nics/ntnic.rst | 2 + doc/guides/rel_notes/release_24_11.rst| 1 + drive

[PATCH v5 42/80] net/ntnic: add FLM module registers

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets The Flow Matcher module is a high-performance stateful SDRAM lookup and programming engine which supported exact match lookup in line-rate of up to hundreds of millions of flows. Signed-off-by: Oleksandr Kolomeiets --- .../supported/nthw_fpga_9563_055_049_.c |

[PATCH v5 73/80] net/ntnic: add flow actions update

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Flow action update was implemented. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/ntnic.rst | 1 + doc/guides/rel_notes/release_24_11.rst| 1 + .../profile_inline/flow_api_profile_inline.c | 165 ++ 3 files changed

[PATCH v5 79/80] net/ntnic: add async template implementation

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov flow filter ops and inline API was exnteded with next APIs: 1. flow pattern template create 2. flow pattern template destroy 3. flow actions template create 4. flow actions template destroy 5. flow template table create 6. flow template table destroy Signed-off-by: Danylo

[PATCH v5 63/80] net/ntnic: add scrub registers

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Scrub fields were added to the fpga map file Remove duplicated macro Signed-off-by: Danylo Vodopianov --- .../supported/nthw_fpga_9563_055_049_.c | 17 - drivers/net/ntnic/ntnic_ethdev.c| 3 --- 2 files changed, 16 insertions(+),

[PATCH v5 74/80] net/ntnic: migrate to the RTE spinlock

2024-10-30 Thread Serhii Iliushyk
Migarte form the pthread to rte_spinlock Signed-off-by: Serhii Iliushyk --- drivers/net/ntnic/include/flow_api.h | 6 +- drivers/net/ntnic/include/ntdrv_4ga.h | 3 +- .../net/ntnic/nthw/core/include/nthw_i2cm.h | 4 +- .../net/ntnic/nthw/core/include/nthw_rpf.h| 5 +-

[PATCH v5 57/80] net/ntnic: added flm stat interface

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov flm stat module interface was added. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/include/flow_api.h | 2 ++ drivers/net/ntnic/include/flow_filter.h| 1 + drivers/net/ntnic/nthw/flow_api/flow_api.c | 11 +++ drivers/net/ntnic/ntnic_mod_reg.

[PATCH v5 49/80] net/ntnic: add Tx CPY module registers

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets The TX Copy module writes data to packet fields based on the lookup performed by the FLM module. This is used for NAT and can support other actions based on the RTE action MODIFY_FIELD. Signed-off-by: Oleksandr Kolomeiets --- .../supported/nthw_fpga_9563_055_049_

[PATCH v5 62/80] net/ntnic: added flow statistics

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov xstats was extended with flow statistics support. Additional counters that shows learn, unlearn, lps, aps and other. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/ntnic.rst | 1 + .../net/ntnic/adapter/nt4ga_stat/nt4ga_stat.c | 40 dr

[PATCH v5 21/80] net/ntnic: add action VLAN

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Add possibility to use RTE_FLOW_ITEM_TYPE_VLAN. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/features/ntnic.ini| 1 + doc/guides/nics/ntnic.rst | 1 + drivers/net/ntnic/include/hw_mod_backend.h| 1 + .../profile_inline/flow

Re: [PATCH] net: increase the maximum of RX/TX descriptors

2024-10-30 Thread Bruce Richardson
On Wed, Oct 30, 2024 at 04:40:10PM +0100, Lukáš Šišmiš wrote: > > On 30. 10. 24 16:20, Stephen Hemminger wrote: > > On Wed, 30 Oct 2024 14:58:40 +0100 > > Lukáš Šišmiš wrote: > > > > > On 29. 10. 24 15:37, Morten Brørup wrote: > > > > > From: Lukas Sismis [mailto:sis...@cesnet.cz] > > > > > Sent

[PATCH v5 43/80] net/ntnic: add HFU module registers

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets The Header Field Update module updates protocol fields if the packets have been changed, for example length fields and next protocol fields. Signed-off-by: Oleksandr Kolomeiets --- .../supported/nthw_fpga_9563_055_049_.c | 38 ++- 1 file changed

[PATCH v5 39/80] net/ntnic: add GMF (Generic MAC Feeder) module

2024-10-30 Thread Serhii Iliushyk
The Generic MAC Feeder module provides a way to feed data to the MAC modules directly from the FPGA, rather than from host or physical ports. The use case for this is as a test tool and is not used by NTNIC. This module is requireqd for correct initialization Signed-off-by: Serhii Iliushyk --- .

[PATCH v5 25/80] net/ntnic: add items gtp and actions raw encap/decap

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Add possibility to use * RTE_FLOW_ITEM_TYPE_GTP * RTE_FLOW_ITEM_TYPE_GTP_PSC * RTE_FLOW_ACTION_TYPE_RAW_ENCAP * RTE_FLOW_ACTION_TYPE_RAW_DECAP Signed-off-by: Danylo Vodopianov --- doc/guides/nics/features/ntnic.ini| 4 + doc/guides/nics/ntnic.rst

[PATCH v5 18/80] net/ntnic: add item void

2024-10-30 Thread Serhii Iliushyk
Add possibility to use RTE_FLOW_ITEM_TYPE_VOID. Signed-off-by: Serhii Iliushyk --- .../nthw/flow_api/profile_inline/flow_api_profile_inline.c | 5 + 1 file changed, 5 insertions(+) diff --git a/drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_profile_inline.c b/drivers/net/ntnic/

[PATCH v5 14/80] net/ntnic: add item eth

2024-10-30 Thread Serhii Iliushyk
Add possibility to use RTE_FLOW_ITEM_TYPE_ETH. Signed-off-by: Serhii Iliushyk --- doc/guides/nics/features/ntnic.ini| 1 + drivers/net/ntnic/include/hw_mod_backend.h| 12 ++ .../profile_inline/flow_api_profile_inline.c | 177 ++ 3 files changed, 190 insertions

[PATCH v5 28/80] net/ntnic: add PDB module

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov The Packet Description Builder module creates packet meta-data for example virtio-net headers. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/include/hw_mod_backend.h| 3 + .../ntnic/nthw/flow_api/hw_mod/hw_mod_pdb.c | 144 ++ .../profile

[PATCH v5 19/80] net/ntnic: add item UDP

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Add possibility to use RTE_FLOW_ITEM_TYPE_UDP. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/features/ntnic.ini| 1 + drivers/net/ntnic/include/hw_mod_backend.h| 2 + .../profile_inline/flow_api_profile_inline.c | 103 ++ 3 fi

[PATCH v5 26/80] net/ntnic: add cat module

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov The Categorizer module’s main purpose is to is select the behavior of other modules in the FPGA pipeline depending on a protocol check. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/include/hw_mod_backend.h| 24 ++ .../ntnic/nthw/flow_api/hw_mod/hw_mod_cat

[PATCH v5 32/80] net/ntnic: add TPE module

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov The TX Packet Editor is a software abstraction module, that keeps track of the handful of FPGA modules that are used to edit packets in the TX pipeline. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/include/hw_mod_backend.h| 16 + .../ntnic/nthw/flow_api/h

[PATCH v5 34/80] net/ntnic: add FLM RCP module

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov The Flow Matcher module is a high-performance stateful SDRAM lookup and programming engine which supported exact match lookup in line-rate of up to hundreds of millions of flows. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/include/hw_mod_backend.h| 4 +

[PATCH v5 09/80] net/ntnic: add infrastructure for for flow actions and items

2024-10-30 Thread Serhii Iliushyk
Add etities(utilities, structures, etc) required for flow support Signed-off-by: Serhii Iliushyk --- v2 * Change cast to void with __rte_unused --- drivers/net/ntnic/include/flow_api.h | 34 drivers/net/ntnic/include/flow_api_engine.h | 46 +++ drivers/net/ntnic/inclu

[PATCH v5 44/80] net/ntnic: add IFR module registers

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets The IP Fragmenter module can fragment outgoing packets based on a programmable MTU. Signed-off-by: Oleksandr Kolomeiets --- .../supported/nthw_fpga_9563_055_049_.c | 41 ++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/drivers/n

[PATCH v5 41/80] net/ntnic: add CSU module registers

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets The Checksum Update module updates the checksums of packets that has been modified in any way. Signed-off-by: Oleksandr Kolomeiets --- .../supported/nthw_fpga_9563_055_049_.c | 20 ++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git

[PATCH v5 40/80] net/ntnic: sort FPGA registers alphanumerically

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets Beatification commit. It is required for pretty supporting different FPGA Signed-off-by: Oleksandr Kolomeiets --- .../supported/nthw_fpga_9563_055_049_.c | 364 +- 1 file changed, 182 insertions(+), 182 deletions(-) diff --git a/drivers/net/ntn

[PATCH v5 38/80] net/ntnic: add flow flush

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets Implements flow flush support Signed-off-by: Oleksandr Kolomeiets --- drivers/net/ntnic/nthw/flow_api/flow_api.c| 13 ++ .../profile_inline/flow_api_profile_inline.c | 43 +++ .../profile_inline/flow_api_profile_inline.h | 4 ++ drivers/net

[PATCH v5 37/80] net/ntnic: add flow dump feature

2024-10-30 Thread Serhii Iliushyk
From: Oleksandr Kolomeiets Add posibilyty to dump flow in human readable format Signed-off-by: Oleksandr Kolomeiets --- drivers/net/ntnic/include/flow_api_engine.h | 2 + drivers/net/ntnic/nthw/flow_api/flow_api.c| 17 ++ .../profile_inline/flow_api_hw_db_inline.c| 264 +++

[PATCH v5 36/80] net/ntnic: match and action db attributes were added

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Implements match/action dereferencing Signed-off-by: Danylo Vodopianov --- .../profile_inline/flow_api_hw_db_inline.c| 795 ++ .../profile_inline/flow_api_hw_db_inline.h| 35 + .../profile_inline/flow_api_profile_inline.c | 55 ++ 3 files chan

[PATCH v5 35/80] net/ntnic: add learn flow queue handling

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Implements thread for handling flow learn queue Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/include/hw_mod_backend.h| 5 + drivers/net/ntnic/include/ntdrv_4ga.h | 1 + .../ntnic/nthw/flow_api/hw_mod/hw_mod_flm.c | 33 +++ .../flow_api/prof

[PATCH v5 29/80] net/ntnic: add QSL module

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov The Queue Selector module directs packets to a given destination which includes host queues, physical ports, exceptions paths, and discard. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/include/flow_api.h | 3 + drivers/net/ntnic/include/hw_mod_backe

[PATCH v5 27/80] net/ntnic: add SLC LR module

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov The Slicer for Local Retransmit module can cut of the head a packet before the packet leaves the FPGA RX pipeline. This is used when the TX pipeline is configured to add a new head in the packet. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/include/hw_mod_back

[PATCH v5 31/80] net/ntnic: add hash API

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov The Hasher module calculates a configurable hash value to be used internally by the FPGA. The module support both Toeplitz and NT-hash. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/ntnic.rst | 2 + drivers/net/ntnic/include/flow_api.h

[PATCH v5 33/80] net/ntnic: add FLM module

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov The Flow Matcher module is a high-performance stateful SDRAM lookup and programming engine which supported exact match lookup in line-rate of up to hundreds of millions of flows. Signed-off-by: Danylo Vodopianov --- drivers/net/ntnic/include/hw_mod_backend.h| 42 ++

[PATCH v5 30/80] net/ntnic: add KM module

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov The Key Matcher module checks the values of individual fields of a packet. It supports both exact match which is implemented with a CAM, and wildcards which is implemented with a TCAM. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/ntnic.rst |

[PATCH v5 23/80] net/ntnic: add items IPv6 and ICMPv6

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Add possibility to use * RTE_FLOW_ITEM_TYPE_IPV6 * RTE_FLOW_ITEM_TYPE_ICMP6 Signed-off-by: Danylo Vodopianov --- doc/guides/nics/features/ntnic.ini| 2 + drivers/net/ntnic/include/hw_mod_backend.h| 2 + drivers/net/ntnic/nthw/flow_api/flow_api.c|

[PATCH v5 22/80] net/ntnic: add item SCTP

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Add possibility to use RTE_FLOW_ITEM_TYPE_SCTP. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/features/ntnic.ini| 1 + drivers/net/ntnic/include/hw_mod_backend.h| 2 + .../profile_inline/flow_api_profile_inline.c | 102 ++ 3 f

[PATCH v5 20/80] net/ntnic: add action TCP

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov Add possibility to use RTE_FLOW_ITEM_TYPE_TCP. Signed-off-by: Danylo Vodopianov --- doc/guides/nics/features/ntnic.ini| 1 + drivers/net/ntnic/include/hw_mod_backend.h| 2 + .../profile_inline/flow_api_profile_inline.c | 108 ++ 3 fi

[PATCH v5 17/80] net/ntnic: add item port ID

2024-10-30 Thread Serhii Iliushyk
Add possibility to use RTE_FLOW_ITEM_TYPE_PORT_ID. Signed-off-by: Serhii Iliushyk --- doc/guides/nics/features/ntnic.ini| 1 + .../flow_api/profile_inline/flow_api_profile_inline.c | 11 +++ 2 files changed, 12 insertions(+) diff --git a/doc/guides/nics/features/ntn

[PATCH v5 16/80] net/ntnic: add item ICMP

2024-10-30 Thread Serhii Iliushyk
Add possibility to use RTE_FLOW_ITEM_TYPE_ICMP. Signed-off-by: Serhii Iliushyk --- doc/guides/nics/features/ntnic.ini| 1 + .../profile_inline/flow_api_profile_inline.c | 101 ++ 2 files changed, 102 insertions(+) diff --git a/doc/guides/nics/features/ntnic.ini b

[PATCH v5 13/80] net/ntnic: add action drop

2024-10-30 Thread Serhii Iliushyk
Add possibility to use RTE_FLOW_ACTION_TYPE_DROP. Signed-off-by: Serhii Iliushyk --- doc/guides/nics/features/ntnic.ini | 1 + .../profile_inline/flow_api_profile_inline.c | 12 2 files changed, 13 insertions(+) diff --git a/doc/guides/nics/features/ntnic

[PATCH v5 15/80] net/ntnic: add item IPv4

2024-10-30 Thread Serhii Iliushyk
Add possibility to use RTE_FLOW_ITEM_TYPE_IPV4. Signed-off-by: Serhii Iliushyk --- v5 * Remove redundant 'break'. --- doc/guides/nics/features/ntnic.ini| 1 + .../profile_inline/flow_api_profile_inline.c | 163 ++ 2 files changed, 164 insertions(+) diff --git a/do

[PATCH v5 12/80] net/ntnic: add ation jump

2024-10-30 Thread Serhii Iliushyk
Add possibility to use RTE_FLOW_ACTION_TYPE_JUMP. Signed-off-by: Serhii Iliushyk --- doc/guides/nics/features/ntnic.ini | 1 + .../profile_inline/flow_api_profile_inline.c| 17 + 2 files changed, 18 insertions(+) diff --git a/doc/guides/nics/features/ntnic.ini

[PATCH v5 11/80] net/ntnic: add action mark

2024-10-30 Thread Serhii Iliushyk
Add possibility to use RTE_FLOW_ACTION_TYPE_MARK. Signed-off-by: Serhii Iliushyk --- doc/guides/nics/features/ntnic.ini | 1 + .../profile_inline/flow_api_profile_inline.c | 16 2 files changed, 17 insertions(+) diff --git a/doc/guides/nics/features/ntnic.ini

[PATCH v5 06/80] net/ntnic: add management functions for NT flow profile

2024-10-30 Thread Serhii Iliushyk
Management functions implements (re)setting of the NT flow dev. Signed-off-by: Serhii Iliushyk --- v5 * Remove unnecessaty SCATTER_GATHER definition --- drivers/net/ntnic/include/flow_api.h | 1 + drivers/net/ntnic/include/flow_api_engine.h | 5 ++ drivers/net/ntnic/nthw/flow_api/fl

[PATCH v5 04/80] net/ntnic: add internal functions for create/destroy

2024-10-30 Thread Serhii Iliushyk
NT-specific functions for creating/destroying a flow Signed-off-by: Serhii Iliushyk --- v2 * Change cast to void with __rte_unused --- drivers/net/ntnic/nthw/flow_api/flow_api.c| 39 +++ drivers/net/ntnic/ntnic_filter/ntnic_filter.c | 66 ++- drivers/net/ntnic/ntnic_m

[PATCH v5 10/80] net/ntnic: add action queue

2024-10-30 Thread Serhii Iliushyk
Add possibility to use RTE_FLOW_ACTION_TYPE_QUEUE. Signed-off-by: Serhii Iliushyk --- doc/guides/nics/features/ntnic.ini| 1 + doc/guides/nics/ntnic.rst | 4 ++ doc/guides/rel_notes/release_24_11.rst| 1 + .../profile_inline/flow_api_profile_inline.c |

[PATCH v5 05/80] net/ntnic: add minimal NT flow inline profile

2024-10-30 Thread Serhii Iliushyk
The flow profile implements all flow-related operations Signed-off-by: Serhii Iliushyk --- drivers/net/ntnic/include/flow_api.h | 15 + drivers/net/ntnic/meson.build | 1 + drivers/net/ntnic/nthw/flow_api/flow_api.c| 28 +++- .../profile_inline/flow_api_prof

[PATCH v5 02/80] net/ntnic: add flow filter support

2024-10-30 Thread Serhii Iliushyk
Enable flow ops getter. Signed-off-by: Serhii Iliushyk --- v2 * Change cast to void with __rte_unused --- drivers/net/ntnic/include/create_elements.h | 13 +++ .../ntnic/include/stream_binary_flow_api.h| 2 + drivers/net/ntnic/meson.build | 1 + drivers/net/ntnic/ntni

[PATCH v5 03/80] net/ntnic: add minimal create/destroy flow operations

2024-10-30 Thread Serhii Iliushyk
Add high-level API flow create/destroy implementation Signed-off-by: Serhii Iliushyk --- v2 * Change cast to void with __rte_unused --- drivers/net/ntnic/include/create_elements.h | 51 drivers/net/ntnic/ntnic_filter/ntnic_filter.c | 227 +- drivers/net/ntnic/ntutil/nt_ut

[PATCH v5 01/80] net/ntnic: add NT flow dev configuration

2024-10-30 Thread Serhii Iliushyk
From: Danylo Vodopianov This API allows enabling of flow profile for NT SmartNIC. Signed-off-by: Danylo Vodopianov --- v5 * remove unnecessary SCATTER_GATHER condition --- drivers/net/ntnic/include/flow_api.h | 30 +++ drivers/net/ntnic/include/flow_api_engine.h | 5 + drivers/ne

[PATCH v5 00/80] Provide flow filter and statistics support

2024-10-30 Thread Serhii Iliushyk
The list of updates provided by the patchset: - FW version - Speed capabilities - Link status (Link update only) - Unicast MAC filter - Multicast MAC filter - Promiscuous mode (Enable only. The device always run promiscuous mode) - Flow API support. - Support for multiple rte_flow g

Re: [PATCH v4 05/86] net/ntnic: add minimal NT flow inline profile

2024-10-30 Thread Serhii Iliushyk
>On 30.10.2024, 03:56, "Ferruh Yigit" wrote: > >On 10/29/2024 4:41 PM, Serhii Iliushyk wrote: >> The flow profile implements a all flow related operations >> > > >Can you please give some more details about the profiles, and "inline >profile" mentioned? > > >> Signed-off-by: Serhii Iliushyk >

[PATCH v7 4/7] ring: make dump function more verbose

2024-10-30 Thread Konstantin Ananyev
From: Eimear Morrissey The current rte_ring_dump function uses the generic rte_ring_headtail structure to access head/tail positions. This is incorrect for the RTS case where the head is stored in a different offset in the union of structs. Switching to a separate function for each sync type allo

[PATCH v7 3/7] ring: make copying functions generic

2024-10-30 Thread Konstantin Ananyev
Note upfront: that change doesn't introduce any functional or performance changes. It is just a code-reordering for: - improve code modularity and re-usability - ability in future to re-use the same code to introduce new functionality There is no real need for enqueue_elems()/dequeue_elems() to

[PATCH v7 1/7] test/ring: fix failure with custom number of lcores

2024-10-30 Thread Konstantin Ananyev
ring_stress_autotest fails to initialize the ring when RTE_MAX_LCORE value is not a number of 2. There is a flaw in calculation required number of elements in the ring. Fix it by aligning number of elements to next power of 2. Fixes: bf28df24e915 ("test/ring: add contention stress test") Cc: sta..

[PATCH v7 7/7] test: add stress test suite

2024-10-30 Thread Konstantin Ananyev
Add a new test suite which purpose is to run 'stress' tests: main purpose is put a pressure to dpdk sync algorithms to flag their misbehaving/slowdown/etc. Right now it consists from just 2 test-cases: meson test --suite stress-tests --list DPDK:stress-tests / ring_stress_autotest DPDK:stress-tests

[PATCH v7 5/7] ring/soring: introduce Staged Ordered Ring

2024-10-30 Thread Konstantin Ananyev
Staged-Ordered-Ring (SORING) provides a SW abstraction for 'ordered' queues with multiple processing 'stages'. It is based on conventional DPDK rte_ring, re-uses many of its concepts, and even substantial part of its code. It can be viewed as an 'extension' of rte_ring functionality. In particular,

  1   2   3   >