Re: [PATCH] net/mlx5: fix the unneeded stub table allocation

2025-01-20 Thread Raslan Darawsheh
Hi, From: Bing Zhao Sent: Tuesday, November 26, 2024 11:25 AM To: Dariusz Sosnowski; Slava Ovsiienko; dev@dpdk.org; Raslan Darawsheh Cc: Ori Kam; Suanming Mou; Matan Azrad; Maayan Kashani Subject: [PATCH] net/mlx5: fix the unneeded stub table allocation The HWS non-template flow API is reusing s

Re: [PATCH v2] net/mlx5: fix the leak of action data list

2025-01-20 Thread Raslan Darawsheh
Hi, From: Bing Zhao Sent: Tuesday, November 26, 2024 10:34 AM To: Dariusz Sosnowski; Slava Ovsiienko; dev@dpdk.org; Raslan Darawsheh Cc: Ori Kam; Suanming Mou; Matan Azrad; Maayan Kashani Subject: [PATCH v2] net/mlx5: fix the leak of action data list In the actions construction for HWS non-templa

Re: [PATCH v6 06/15] net/xsc: initialize xsc representors

2025-01-20 Thread WanRenyong
On 2025/1/21 3:06, Stephen Hemminger wrote: > On Mon, 20 Jan 2025 19:14:44 +0800 > "WanRenyong" wrote: > >> +static int >> +xsc_ethdev_init_representors(struct rte_eth_dev *eth_dev) >> +{ >> +struct xsc_ethdev_priv *priv = TO_XSC_ETHDEV_PRIV(eth_dev); >> +struct rte_eth_devargs eth_da = {

[PATCH v9 08/15] net/zxdh: provided dev simple rx implementations

2025-01-20 Thread Junlong Wang
provided dev simple rx implementations. Signed-off-by: Junlong Wang --- doc/guides/nics/features/zxdh.ini | 1 + doc/guides/nics/zxdh.rst | 1 + drivers/net/zxdh/zxdh_ethdev.c| 1 + drivers/net/zxdh/zxdh_rxtx.c | 313 ++ drivers/net/zxdh/zxdh_r

[PATCH v9 11/15] net/zxdh: promisc/allmulti ops implementations

2025-01-20 Thread Junlong Wang
provided promiscuous/allmulticast ops. Signed-off-by: Junlong Wang --- doc/guides/nics/features/zxdh.ini | 2 + doc/guides/nics/zxdh.rst | 2 + drivers/net/zxdh/zxdh_ethdev.c | 21 ++- drivers/net/zxdh/zxdh_ethdev.h | 2 + drivers/net/zxdh/zxdh_ethdev_ops.c | 128 ++

[PATCH v9 06/15] net/zxdh: dev start/stop ops implementations

2025-01-20 Thread Junlong Wang
dev start/stop implementations, start/stop the rx/tx queues. Signed-off-by: Junlong Wang --- doc/guides/nics/features/zxdh.ini | 2 + doc/guides/nics/zxdh.rst | 2 + drivers/net/zxdh/zxdh_ethdev.c| 71 drivers/net/zxdh/zxdh_pci.c | 21 +++ driver

[PATCH v9 05/15] net/zxdh: rx/tx queue setup and intr enable

2025-01-20 Thread Junlong Wang
rx/tx queue setup and intr enable implementations. Signed-off-by: Junlong Wang --- drivers/net/zxdh/zxdh_ethdev.c | 4 + drivers/net/zxdh/zxdh_queue.c | 149 + drivers/net/zxdh/zxdh_queue.h | 33 3 files changed, 186 insertions(+) diff --git a/drive

[PATCH v9 10/15] net/zxdh: mac set/add/remove ops implementations

2025-01-20 Thread Junlong Wang
provided mac set/add/remove ops. Signed-off-by: Junlong Wang --- doc/guides/nics/features/zxdh.ini | 2 + doc/guides/nics/zxdh.rst | 2 + drivers/net/zxdh/zxdh_common.c | 24 +++ drivers/net/zxdh/zxdh_common.h | 1 + drivers/net/zxdh/zxdh_ethdev.c | 33 - drive

[PATCH v9 12/15] net/zxdh: vlan filter/ offload ops implementations

2025-01-20 Thread Junlong Wang
provided vlan filter, vlan offload ops. Signed-off-by: Junlong Wang --- doc/guides/nics/features/zxdh.ini | 3 + doc/guides/nics/zxdh.rst | 3 + drivers/net/zxdh/zxdh_ethdev.c | 40 +- drivers/net/zxdh/zxdh_ethdev_ops.c | 223 + drivers/net/zxd

[PATCH v9 09/15] net/zxdh: link info update, set link up/down

2025-01-20 Thread Junlong Wang
provided link info update, set link up /down, and link intr. Signed-off-by: Junlong Wang --- doc/guides/nics/features/zxdh.ini | 2 + doc/guides/nics/zxdh.rst | 3 + drivers/net/zxdh/meson.build | 1 + drivers/net/zxdh/zxdh_ethdev.c | 21 drivers/net/zxdh/zxdh_et

[PATCH v9 13/15] net/zxdh: rss hash config/update, reta update/get

2025-01-20 Thread Junlong Wang
provided rss hash config/update, reta update/get ops. Signed-off-by: Junlong Wang --- doc/guides/nics/features/zxdh.ini | 3 + doc/guides/nics/zxdh.rst | 1 + drivers/net/zxdh/zxdh_ethdev.c | 52 drivers/net/zxdh/zxdh_ethdev.h | 3 + drivers/net/zxdh/zxdh_ethdev_op

[PATCH v9 04/15] net/zxdh: port tables unint implementations

2025-01-20 Thread Junlong Wang
delete port tables in host. Signed-off-by: Junlong Wang --- drivers/net/zxdh/zxdh_ethdev.c | 18 ++ drivers/net/zxdh/zxdh_msg.h| 1 + drivers/net/zxdh/zxdh_np.c | 103 + drivers/net/zxdh/zxdh_np.h | 9 +++ drivers/net/zxdh/zxdh_tables.c | 33

[PATCH v9 07/15] net/zxdh: provided dev simple tx implementations

2025-01-20 Thread Junlong Wang
provided dev simple tx implementations. Signed-off-by: Junlong Wang --- drivers/net/zxdh/meson.build | 1 + drivers/net/zxdh/zxdh_ethdev.c | 22 ++ drivers/net/zxdh/zxdh_queue.h | 26 ++- drivers/net/zxdh/zxdh_rxtx.c | 396 + drivers/net/zxdh/zxdh_rxtx.h

[PATCH v9 02/15] net/zxdh: zxdh np uninit implementation

2025-01-20 Thread Junlong Wang
(np)network processor release resources in host. Signed-off-by: Junlong Wang --- drivers/net/zxdh/zxdh_ethdev.c | 48 drivers/net/zxdh/zxdh_np.c | 470 + drivers/net/zxdh/zxdh_np.h | 107 3 files changed, 625 insertions(+) diff --git a/driv

[PATCH v9 00/15] net/zxdh: updated net zxdh driver

2025-01-20 Thread Junlong Wang
V9: - Remove unnecessary __rte_packed* in stats structure. V8: - using __rte_packed_begin/__rte_packed_end replace __rte_packed. V7: - resolved warning '-Waddress-of-packed-member' in function 'zxdh_dev_rss_reta_update'. V6: - Remove unnecessary __rte_packed in the virtqueue structur

Re: [PATCH v6 05/15] net/xsc: add PCT interfaces

2025-01-20 Thread WanRenyong
On 2025/1/21 2:24, Stephen Hemminger wrote: > On Mon, 20 Jan 2025 19:14:42 +0800 > "WanRenyong" wrote: > >> +int >> +xsc_dev_create_ipat(struct xsc_dev *xdev, uint16_t logic_in_port, uint16_t >> dst_info) >> +{ >> +struct xsc_np_ipat add; >> + >> +memset(&add, 0, sizeof(add)); >> +add

Re: [PATCH v6 08/15] net/xsc: add Rx and Tx queue setup

2025-01-20 Thread WanRenyong
On 2025/1/21 2:16, Stephen Hemminger wrote: > On Mon, 20 Jan 2025 19:14:48 +0800 > "WanRenyong" wrote: > >> +struct __rte_packed_begin xsc_send_wqe_ctrl_seg { >> +rte_le32_t msg_opcode:8; >> +rte_le32_t with_immdt:1; >> +rte_le32_t csum_en:2; >> +rte_le32_t ds_d

Re: [PATCH v6 03/15] net/xsc: add xsc mailbox

2025-01-20 Thread WanRenyong
On 2025/1/21 2:19, Stephen Hemminger wrote: > On Mon, 20 Jan 2025 19:14:37 +0800 > "WanRenyong" wrote: > >> +static struct xsc_cmdq_req_msg * >> +xsc_cmdq_req_msg_alloc(struct xsc_dev *xdev, int len) >> +{ >> +struct xsc_cmdq_req_msg *msg; >> +struct xsc_cmdq_mbox *head = NULL; >> +int

Re: [PATCH v6 03/15] net/xsc: add xsc mailbox

2025-01-20 Thread WanRenyong
On 2025/1/21 2:18, Stephen Hemminger wrote: > On Mon, 20 Jan 2025 19:14:37 +0800 > "WanRenyong" wrote: > >> +static void >> +xsc_cmdq_mbox_free(struct xsc_dev *xdev, struct xsc_cmdq_mbox *mbox) >> +{ >> +struct xsc_cmdq_mbox *next, *head; >> +struct xsc_vfio_priv *priv = (struct xsc_vfio_p

Re: compilation|FAILURE| pw(150284) sid(34398) job(PER_PATCH_BUILD14646)[v5, 25/25] net/intel/common: extract common Rx vector criteria

2025-01-20 Thread Liao, TingtingX
Sorry. There is no error with this series. The error is caused by the CI doesn't apply any changes with doc/*. Community decided to exclude doc/*, as doc/* change frequently, especially the release notes, cause a lot of conflict with main tree. Thanks, Tingting F

Re: [PATCH v8 14/15] net/zxdh: basic stats ops implementations

2025-01-20 Thread Stephen Hemminger
On Mon, 20 Jan 2025 11:47:22 +0800 Junlong Wang wrote: > > +struct __rte_packed_begin zxdh_hw_mac_stats { > + uint64_t rx_total; > + uint64_t rx_pause; > + uint64_t rx_unicast; > + uint64_t rx_multicast; > + uint64_t rx_broadcast; > + uint64_t rx_vlan; > + uint64_t r

[PATCH v2 3/3] examples/flow_filtering: fix gcc 15 overflow warning

2025-01-20 Thread Stephen Hemminger
Gcc 15 no longer allows initialization of arrays with strings because the null character is dropped. Resolve by using an array initializer. ../examples/flow_filtering/snippets/snippet_match_mpls.c: In function ‘snippet_mpls_create_pattern_template’: ../examples/flow_filtering/snippets/snippet_mat

[PATCH v2 2/3] net/thunderx/base: fix build with Gcc 15

2025-01-20 Thread Stephen Hemminger
Gcc 15 now produces warning with the base code of Thunderx driver. The issue is that Gcc now defaults to C23 mode, and the standards gods have decided that the result of partial initialization of a union is not defined for other fields. The fix is to use an empty initializer which forces full init

[PATCH v2 1/3] crypto/cnxk: fix gcc 15 warning

2025-01-20 Thread Stephen Hemminger
GCC 15 produces warnings about uninitaialized variables. In file included from ../lib/mbuf/rte_mbuf.h:36, from ../lib/cryptodev/rte_crypto.h:15, from ../lib/cryptodev/rte_cryptodev.h:19, from ../drivers/crypto/cnxk/cn9k_cryptodev_ops.c:5: In funct

[PATCH v2 0/3] Fix warnings when using gcc 15

2025-01-20 Thread Stephen Hemminger
Three fixes need to make current main branch build cleanly with current pre-release of Gcc 15. Stephen Hemminger (3): crypto/cnxk: fix gcc 15 warning net/thunderx/base: fix build with Gcc 15 examples/flow_filtering: fix gcc 15 overflow warning drivers/crypto/cnxk/cnxk_se.h

Re: [PATCH v6 06/15] net/xsc: initialize xsc representors

2025-01-20 Thread Stephen Hemminger
On Mon, 20 Jan 2025 19:14:44 +0800 "WanRenyong" wrote: > +static int > +xsc_ethdev_init_representors(struct rte_eth_dev *eth_dev) > +{ > + struct xsc_ethdev_priv *priv = TO_XSC_ETHDEV_PRIV(eth_dev); > + struct rte_eth_devargs eth_da = { .nb_representor_ports = 0 }; > + struct rte_devi

Re: [PATCH 14/15] telemetry: add allocation function attributes

2025-01-20 Thread Bruce Richardson
On Mon, Jan 20, 2025 at 10:03:32AM -0800, Stephen Hemminger wrote: > Use function attributes to catch cases where telemetry data > is allocated but not freed correctly. > > Signed-off-by: Stephen Hemminger > --- > lib/telemetry/rte_telemetry.h | 21 +++-- > 1 file changed, 11 ins

Re: [PATCH 00/15] Add attributes to allocation functions

2025-01-20 Thread Bruce Richardson
On Mon, Jan 20, 2025 at 10:03:18AM -0800, Stephen Hemminger wrote: > This patch series builds on the allocation function attributes > added in 24.11 release. These annotations will allow for compiler > to flag cases where a pointer is allocated with one function > but incorrectly passed to a differ

Re: [PATCH v6 08/15] net/xsc: add Rx and Tx queue setup

2025-01-20 Thread Stephen Hemminger
On Mon, 20 Jan 2025 19:14:48 +0800 "WanRenyong" wrote: > +struct __rte_packed_begin xsc_send_wqe_ctrl_seg { > + rte_le32_t msg_opcode:8; > + rte_le32_t with_immdt:1; > + rte_le32_t csum_en:2; > + rte_le32_t ds_data_num:5; > + rte_le32_t wqe_id:16; > +

Re: [PATCH v6 03/15] net/xsc: add xsc mailbox

2025-01-20 Thread Stephen Hemminger
On Mon, 20 Jan 2025 19:14:37 +0800 "WanRenyong" wrote: > +static struct xsc_cmdq_req_msg * > +xsc_cmdq_req_msg_alloc(struct xsc_dev *xdev, int len) > +{ > + struct xsc_cmdq_req_msg *msg; > + struct xsc_cmdq_mbox *head = NULL; > + int cmd_len, nb_mbox; > + > + msg = (struct xsc_cmd

Re: [PATCH v6 03/15] net/xsc: add xsc mailbox

2025-01-20 Thread Stephen Hemminger
On Mon, 20 Jan 2025 19:14:37 +0800 "WanRenyong" wrote: > +static void > +xsc_cmdq_mbox_free(struct xsc_dev *xdev, struct xsc_cmdq_mbox *mbox) > +{ > + struct xsc_cmdq_mbox *next, *head; > + struct xsc_vfio_priv *priv = (struct xsc_vfio_priv *)xdev->dev_priv; Since dev_priv is void *, the

RE: [RFC PATCH] eventdev: adapter API to configure multiple Rx queues

2025-01-20 Thread Shijith Thotton
>> >> >>> This RFC introduces a new API, >> >> >>> rte_event_eth_rx_adapter_queues_add(), >> >> >>> designed to enhance the flexibility of configuring multiple Rx >> >> >>> queues in eventdev Rx adapter. >> >> >>> >> >> >>> The existing rte_event_eth_rx_adapter_queue_add() API supports >> >> >>> ad

[PATCH 00/15] Add attributes to allocation functions

2025-01-20 Thread Stephen Hemminger
This patch series builds on the allocation function attributes added in 24.11 release. These annotations will allow for compiler to flag cases where a pointer is allocated with one function but incorrectly passed to a different free function. Checkpatch perl script falsely complains in a couple pa

[PATCH 15/15] sched: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where sched port config is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/sched/rte_sched.h | 23 +-- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/lib/sched/rte_sched.h b/lib/sched/rte_sche

[PATCH 13/15] compressdev: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where compressdev is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/compressdev/rte_comp.h | 28 +++- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/lib/compressdev/rte_comp.h b/lib/compr

[PATCH 12/15] reorder: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where reorder table is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/reorder/rte_reorder.h | 23 --- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/lib/reorder/rte_reorder.h b/lib/reorder/rt

[PATCH 14/15] telemetry: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where telemetry data is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/telemetry/rte_telemetry.h | 21 +++-- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/lib/telemetry/rte_telemetry.h b/lib/tel

[PATCH 11/15] ring: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where ring is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/ring/rte_ring.h | 22 -- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/lib/ring/rte_ring.h b/lib/ring/rte_ring.h index 63a71d5871

[PATCH 10/15] eventdev: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where eventdev is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/eventdev/rte_event_ring.h | 27 ++- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/lib/eventdev/rte_event_ring.h b/lib/eve

[PATCH 09/15] mempool: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where mempool is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/mempool/rte_mempool.h | 37 - 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/lib/mempool/rte_mempool.h b/lib/me

[PATCH 08/15] member: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where member table is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/member/rte_member.h | 24 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/lib/member/rte_member.h b/lib/member/rte_mem

[PATCH 07/15] bitratestats: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where bitratestats is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/bitratestats/rte_bitrate.h | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/lib/bitratestats/rte_bitrate.h b/lib/bitr

[PATCH 05/15] pipeline: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where pipeline is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/pipeline/rte_port_in_action.h | 55 --- lib/pipeline/rte_table_action.h | 53 +++-- 2 files changed, 56 inser

[PATCH 06/15] acl: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where acl table is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/acl/rte_acl.h | 26 +++--- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/lib/acl/rte_acl.h b/lib/acl/rte_acl.h index ca75a6f

[PATCH 03/15] hash: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where hash table is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/hash/rte_fbk_hash.h | 24 +--- lib/hash/rte_hash.h | 21 +++-- 2 files changed, 24 insertions(+), 21 deletions(-) diff -

[PATCH 04/15] lpm: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where lpm table is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/lpm/rte_lpm.h | 23 --- lib/lpm/rte_lpm6.h | 23 --- 2 files changed, 24 insertions(+), 22 deletions(-) diff --git a/lib

[PATCH 02/15] rib: annotate rib allocation functions

2025-01-20 Thread Stephen Hemminger
Add function attributes to catch cases where rib is allocated and not freed correctly. Signed-off-by: Stephen Hemminger --- lib/rib/rte_rib.h | 24 +--- lib/rib/rte_rib6.h | 24 +--- 2 files changed, 26 insertions(+), 22 deletions(-) diff --git a/lib/rib

[PATCH 01/15] fib: add allocation function attributes

2025-01-20 Thread Stephen Hemminger
Use function attributes to catch cases where fib table is allocated but not freed correctly. Signed-off-by: Stephen Hemminger --- lib/fib/rte_fib.h | 26 +++--- lib/fib/rte_fib6.h | 24 +--- lib/fib/trie.h | 7 --- 3 files changed, 32 insertions(

Re: [PATCH] net/iavf: remove reset of Tx prepare function ptr

2025-01-20 Thread Bruce Richardson
On Mon, Jan 20, 2025 at 03:01:47PM +, Medvedkin, Vladimir wrote: > On 13/12/2024 14:33, Bruce Richardson wrote: > > The iavf driver only contains a single Tx prepare function, so when > > selecting the Tx path, there is no need to reset and reassign the > > function pointer in the ethdev struct

[PATCH v3] net/af_packet: allow changing fanout mode

2025-01-20 Thread Tudor Cornea
This allows us to control the algorithm used to spread traffic between sockets, adding more fine grained control. If the user does not specify a fanout mode, the PMD driver will default to PACKET_FANOUT_HASH. Signed-off-by: Tudor Cornea --- v3: * Removed PACKET_FANOUT ifdef. The feature has exis

Re: [PATCH v2 2/2] net/af_xdp: Refactor af_xdp_tx_zc()

2025-01-20 Thread Maryam Tahhan
On 16/01/2025 17:51, Ariel Otilibili wrote: Both legs of the loop share the same logic: either to go out of the function, or to fall through to the next instructions. Depends-on: patch-1 ("net/af_xdp: fix use after free in af_xdp_tx_zc()") Bugzilla ID: 1440 Signed-off-by: Ariel Otilibili ---

Re: [PATCH 00/10] update net/ixgbe base driver

2025-01-20 Thread Bruce Richardson
On Tue, Jan 14, 2025 at 06:10:10PM +0800, Yuan Wang wrote: > Update the ixgbe driver to the lastest version of the snapshot. > > Dan Nowlin (1): > net/ixgbe/base: add missing buffer copy > > Dawid Zielinski (2): > net/ixgbe/base: add interface for LED control on E610 > net/ixgbe/base: Add c

[PATCH v6] graph: mcore: optimize graph search

2025-01-20 Thread Huichao Cai
I'll try updating it, thank you.

Re: [PATCH 09/10] net/ixgbe/base: add missing buffer copy

2025-01-20 Thread Bruce Richardson
On Tue, Jan 14, 2025 at 06:10:19PM +0800, Yuan Wang wrote: > From: Dan Nowlin > > Add missing buffer copy in ixgbe_aci_send_cmd_sc(). > > In ixgbe_aci_send_cmd_sc() there is code to retry aq commands for > certain commands. To achieve this the function makes a copy of the > original ixgbe_aci_de

Re: [PATCH] net/iavf: remove reset of Tx prepare function ptr

2025-01-20 Thread Medvedkin, Vladimir
On 13/12/2024 14:33, Bruce Richardson wrote: The iavf driver only contains a single Tx prepare function, so when selecting the Tx path, there is no need to reset and reassign the function pointer in the ethdev structure. This fixes an issue where the pointer was reset to NULL, but never assigned

Re: [PATCH v6] graph: mcore: optimize graph search

2025-01-20 Thread Thomas Monjalon
20/01/2025 15:36, Huichao Cai: > Hi, Thomas > I tested(See below) this patch locally and it can suppress this error(github > build: failed). > Is the difference in CI results from patchwork due to different versions of > abidiff? > My abidiff version: > [root@localhost dpdk.chc1]# abidiff --versi

Re: [PATCH v2 1/2] net/af_xdp: fix use after free in af_xdp_tx_zc()

2025-01-20 Thread Maryam Tahhan
On 16/01/2025 17:51, Ariel Otilibili wrote: 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 Otilibi

[PATCH v6] graph: mcore: optimize graph search

2025-01-20 Thread Huichao Cai
Hi, Thomas I tested(See below) this patch locally and it can suppress this error(github build: failed). Is the difference in CI results from patchwork due to different versions of abidiff? My abidiff version: [root@localhost dpdk.chc1]# abidiff --version abidiff: 1.6.0 There is currently no versi

Re: [PATCH v1] common/idpf: fix heap use after free error

2025-01-20 Thread Bruce Richardson
On Mon, Jan 13, 2025 at 08:30:01AM -0800, Stephen Hemminger wrote: > On Mon, 13 Jan 2025 08:54:04 + > Praveen Shetty wrote: > > > Heap use after free error is detected in AddressSanitizer while quitting > > the testpmd application.Issue is due to accessing the empty control > > queue in the i

Re: [PATCH 2/2] common/idpf: enable AVX2 for single queue Tx

2025-01-20 Thread Bruce Richardson
On Wed, Jan 08, 2025 at 05:47:57PM +0530, Shaiq Wani wrote: > In case some CPUs don't support AVX512. Enable AVX2 for them to > get better per-core performance. > > Signed-off-by: Shaiq Wani > --- Hi, some review comments inline below. /Bruce > doc/guides/rel_notes/release_25_03.rst |

Re: [PATCH 1/2] common/idpf: enable AVX2 for single queue Rx

2025-01-20 Thread Bruce Richardson
On Wed, Jan 08, 2025 at 05:47:56PM +0530, Shaiq Wani wrote: > In case some CPUs don't support AVX512. Enable AVX2 for them to > get better per-core performance. > > Signed-off-by: Shaiq Wani Hi, some review comments inline below. /Bruce > --- > drivers/common/idpf/idpf_common_device.h|

[PATCH] doc/guides: Mention needed kernel option for mlx5 multiport e-switch

2025-01-20 Thread Plague
On some kernels (Debian 6.6, 6.9 and 6.10 tested), there is a missing option for "TC recirculation" that prevents MLX5 driver to include CONFIG_MLX5_CLS_ACT in the compilation, thus preventing PF1 from properly working in multiport-eswitch mode. Signed-off-by: Jaromír Smrček <4pla...@gmail.com> --

Re: [PATCH] net/ixgbe: fix missing E610 support in flow engine

2025-01-20 Thread Bruce Richardson
On Mon, Dec 02, 2024 at 06:21:44PM +, Vladimir Medvedkin wrote: > Currently flow engine is missing a new mac type E610 in the check for > fdir support. > This patch adds this mac type to the check. > > Fixes: 316637762a5f ("net/ixgbe/base: enable E610 device") > Cc: sta...@dpdk.org > > Signed

Re: [PATCH 1/2] buildtools, devtools: clear out Python syntax warnings

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

[PATCH v2 2/2] mempool: make rte_mempool_create_empty a single-exit

2025-01-20 Thread Ariel Otilibili
For properly setting rte_errno, and exiting rte_mempool_create_empty() from a single place. Bugzilla ID: 1559 Signed-off-by: Ariel Otilibili --- lib/mempool/rte_mempool.c | 27 +++ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/lib/mempool/rte_mempool.c b

[PATCH v2 1/2] mempool: fix rte_errno in rte_mempool_create_empty

2025-01-20 Thread Ariel Otilibili
When returning from rte_mempool_set_ops_byname(), rte_errno is not set for error exits. The API requires rte_errno to be set in that case. Bugzilla ID: 1559 Fixes: c2c6b2f41305 ("mempool: fix default ops for an empty mempool") Link: https://doc.dpdk.org/api/rte__mempool_8h.html#a82e301ee33ed7a26

[PATCH v2 0/2] add rte_errno to rte_mempool_create_empty, and refactor

2025-01-20 Thread Ariel Otilibili
From: Ariel Otilibili https://inbox.dpdk.org/dev/20250119174643.2162110-1-ariel.otilib...@6wind.com/) Ariel Otilibili (2): mempool: fix rte_errno in rte_mempool_create_empty mempool: make rte_mempool_create_empty a single-exit lib/mempool/rte_mempool.c | 31 ++- 1

[PATCH v5 25/25] net/intel/common: extract common Rx vector criteria

2025-01-20 Thread Bruce Richardson
While some drivers have specific criteria for when a vector driver can be enabled on the Rx path, there are a number of basic criteria which apply across all drivers. Centralize those in the intel/common folder, and then update drivers to use the common conditional checks. This adds some additional

[PATCH v5 24/25] net/intel/common: create common mbuf initializer fn

2025-01-20 Thread Bruce Richardson
Across a number of drivers, the same code is used for initializing the "mbuf_initializer" value inside the rx queue structure for use with the vector drivers. Since the rx queue structures are (currently) different across the drivers, we cannot just move a single copy of the function to a common lo

[PATCH v5 23/25] net/ixgbe: use common Tx backlog entry fn

2025-01-20 Thread Bruce Richardson
Remove the custom vector Tx backlog entry function and use the standard intel_common one, now that all vector drivers are using the same, smaller ring structure. Signed-off-by: Bruce Richardson --- drivers/net/intel/ixgbe/ixgbe_rxtx_vec_common.h | 10 -- drivers/net/intel/ixgbe/ixgbe_rxt

[PATCH v5 22/25] net/intel/common: remove unneeded code

2025-01-20 Thread Bruce Richardson
With all drivers using the common Tx structure updated so that their vector paths all use the simplified Tx mbuf ring format, it's no longer necessary to have a separate flag for the ring format and for use of a vector driver. Remove the former flag and base all decisions off the vector flag. With

[PATCH v5 21/25] net/iavf: use vector SW ring for all vector paths

2025-01-20 Thread Bruce Richardson
The AVX-512 code path used a smaller SW ring structure only containing the mbuf pointer, but no other fields. The other fields are only used in the scalar code path, so update all vector driver code paths (AVX2, SSE) to use the smaller, faster structure. Signed-off-by: Bruce Richardson --- drive

[PATCH v5 20/25] net/i40e: use vector SW ring for all vector paths

2025-01-20 Thread Bruce Richardson
The AVX-512 code path used a smaller SW ring structure only containing the mbuf pointer, but no other fields. The other fields are only used in the scalar code path, so update all vector driver code paths (AVX2, SSE, Neon, Altivec) to use the smaller, faster structure. Signed-off-by: Bruce Richard

[PATCH v5 19/25] net/ice: use vector SW ring for all vector paths

2025-01-20 Thread Bruce Richardson
The AVX-512 code path used a smaller SW ring structure only containing the mbuf pointer, but no other fields. The other fields are only used in the scalar code path, so update all vector driver code paths to use the smaller, faster structure. Signed-off-by: Bruce Richardson --- drivers/net/intel

[PATCH v5 18/25] net/iavf: use common Tx queue mbuf cleanup fn

2025-01-20 Thread Bruce Richardson
Adjust iavf driver to also use the common mbuf freeing functions on Tx queue release/cleanup. The implementation is complicated a little by the need to integrate the additional "has_ctx" parameter for the iavf code, but changes in other drivers are minimal - just a constant "false" parameter. Sign

[PATCH v5 17/25] net/ixgbe: use common Tx queue mbuf cleanup fn

2025-01-20 Thread Bruce Richardson
Update driver to use the common cleanup function. Signed-off-by: Bruce Richardson --- drivers/net/intel/ixgbe/ixgbe_rxtx.c | 22 ++- drivers/net/intel/ixgbe/ixgbe_rxtx.h | 1 - .../net/intel/ixgbe/ixgbe_rxtx_vec_common.h | 28 ++- drivers/net/inte

[PATCH v5 16/25] net/i40e: use common Tx queue mbuf cleanup fn

2025-01-20 Thread Bruce Richardson
Update driver to be similar to the "ice" driver and use the common mbuf ring cleanup code on shutdown of a Tx queue. Signed-off-by: Bruce Richardson --- drivers/net/intel/i40e/i40e_ethdev.h | 4 +- drivers/net/intel/i40e/i40e_rxtx.c | 70 +++- drivers/net/intel/i40e/i4

[PATCH v5 15/25] net/ice: move Tx queue mbuf cleanup fn to common

2025-01-20 Thread Bruce Richardson
The functions to loop over the Tx queue and clean up all the mbufs on it, e.g. for queue shutdown, is not device specific and so can move into the common_intel headers. Only complication is ensuring that the correct ring format, either minimal vector or full structure, is used. Ice driver currently

[PATCH v5 14/25] net/iavf: use common Tx free fn for AVX-512

2025-01-20 Thread Bruce Richardson
Switch the iavf driver to use the common Tx free function. This requires one additional parameter to that function, since iavf sometimes uses context descriptors which means that we have double the descriptors per SW ring slot. Signed-off-by: Bruce Richardson --- drivers/net/intel/common/tx.h

[PATCH v5 13/25] net/intel/common: add Tx buffer free fn for AVX-512

2025-01-20 Thread Bruce Richardson
AVX-512 code paths for ice and i40e drivers are common, and differ from the regular post-Tx free function in that the SW ring from which the buffers are freed does not contain anything other than the mbuf pointer. Merge these into a common function in intel_common to reduce duplication. Signed-off

[PATCH v5 12/25] net/intel/common: add post-Tx buffer free function

2025-01-20 Thread Bruce Richardson
The actions taken for post-Tx buffer free for the SSE and AVX drivers for i40e, iavf and ice drivers are all common, so centralize those in common/intel_eth driver. Signed-off-by: Bruce Richardson --- drivers/net/intel/common/tx.h | 71 ++ drivers/net/intel/i40e/i

[PATCH v5 11/25] net/intel/common: pack Tx queue structure

2025-01-20 Thread Bruce Richardson
Move some fields about to better pack the Tx queue structure and make sure all data used by the vector codepaths is on the first cacheline of the structure. Checking with "pahole" on 64-bit build, only one 6-byte hole is left in the structure - on second cacheline - after this patch. As part of th

[PATCH v5 09/25] net/ixgbe: convert Tx queue context cache field to ptr

2025-01-20 Thread Bruce Richardson
Rather than having a two element array of context cache values inside the Tx queue structure, convert it to a pointer to a cache at the end of the structure. This makes future merging of the structure easier as we don't need the "ixgbe_advctx_info" struct defined when defining a combined queue stru

[PATCH v5 10/25] net/ixgbe: use common Tx queue structure

2025-01-20 Thread Bruce Richardson
Merge in additional fields used by the ixgbe driver and then convert it over to using the common Tx queue structure. Signed-off-by: Bruce Richardson --- drivers/net/intel/common/tx.h | 14 +++- drivers/net/intel/ixgbe/ixgbe_ethdev.c| 4 +- .../ixgbe/ixgbe_recycle_mbufs_v

[PATCH v5 08/25] net/iavf: use common Tx queue structure

2025-01-20 Thread Bruce Richardson
Merge in the few additional fields used by iavf driver and convert it to using the common Tx queue structure also. Signed-off-by: Bruce Richardson --- drivers/net/intel/common/tx.h | 15 +- drivers/net/intel/iavf/iavf.h | 2 +- drivers/net/intel/iavf/iavf_eth

[PATCH v5 07/25] net/intel/common: merge ice and i40e Tx queue struct

2025-01-20 Thread Bruce Richardson
The queue structures of i40e and ice drivers are virtually identical, so merge them into a common struct. This should allow easier function merging in future using that common struct. Signed-off-by: Bruce Richardson --- drivers/net/intel/common/tx.h | 55 + driver

[PATCH v5 06/25] net/intel: add prefix for driver-specific structs

2025-01-20 Thread Bruce Richardson
In preparation for merging the Tx structs for multiple drivers into a single struct, rename the driver-specific pointers in each struct to have a prefix on it, to avoid conflicts. Signed-off-by: Bruce Richardson --- drivers/net/intel/i40e/i40e_fdir.c| 6 +-- .../i40e/i40e_recycle_mb

[PATCH v5 05/25] net/intel: align Tx queue struct field names

2025-01-20 Thread Bruce Richardson
Across the various Intel drivers sometimes different names are given to fields in the Tx queue structure which have the same function. Do some renaming in some drivers to align things better for future merging. Signed-off-by: Bruce Richardson --- drivers/net/intel/i40e/i40e_rxtx.c|

[PATCH v5 04/25] net/intel/common: add Tx mbuf ring replenish fn

2025-01-20 Thread Bruce Richardson
Move the short function used to place mbufs on the SW Tx ring to common code to avoid duplication. Signed-off-by: Bruce Richardson --- drivers/net/intel/common/tx.h | 7 +++ drivers/net/intel/i40e/i40e_rxtx_vec_altivec.c | 4 ++-- drivers/net/intel/i40e/i40e_rxtx_vec_avx2.

[PATCH v5 03/25] net/intel/common: provide common Tx entry structures

2025-01-20 Thread Bruce Richardson
The Tx entry structures, both vector and scalar, are common across Intel drivers, so provide a single definition to be used everywhere. Signed-off-by: Bruce Richardson --- drivers/net/intel/common/tx.h | 27 +++ .../i40e/i40e_recycle_mbufs_vec_common.c | 2 +

[PATCH v5 02/25] net/intel/common: add pkt reassembly fn for intel drivers

2025-01-20 Thread Bruce Richardson
The code for reassembling a single, multi-mbuf packet from multiple buffers received from the NIC is duplicated across many drivers. Rather than having multiple copies of this function, we can create an "intel/common" directory to hold such functions and consolidate multiple functions down to a sin

[PATCH v5 01/25] net: move intel drivers to intel subdirectory

2025-01-20 Thread Bruce Richardson
Consolidate all Intel HW NIC drivers into a driver/net/intel This matches the layout used for drivers in the kernel, and potentially enabling easier sharing among drivers. Signed-off-by: Bruce Richardson --- MAINTAINERS | 20 +-- devtools/check-

[PATCH v5 00/25] Reduce code duplication across Intel NIC drivers

2025-01-20 Thread Bruce Richardson
This patchset attempts to reduce the amount of code duplication across a number of Intel NIC drivers, specifically: ixgbe, i40e, iavf, and ice. As part of this process of deduplication, and in preparation for further cleanup work, it moves all existing Intel drivers to a net/intel directory, with a

[PATCH] devtool: fix falsely reporting from checkpatch

2025-01-20 Thread WanRenyong
When executes the check_packed_attributes function in checkpatch, if __rte_packed_begin or __rte_packed_end appear in the context of a patch file, there may be a situation where the counts of __rte_packed_begin and __rte_packed_end do not match, causing checkpatch to return a failure. This patch fi

[PATCH v6 15/15] net/xsc: add ethdev link and MTU ops

2025-01-20 Thread WanRenyong
Implement xsc ethdev link and MTU ops. Signed-off-by: WanRenyong --- doc/guides/nics/features/xsc.ini | 1 + drivers/net/xsc/xsc_dev.c| 33 ++ drivers/net/xsc/xsc_dev.h| 4 +++ drivers/net/xsc/xsc_ethdev.c | 60 4 files chang

[PATCH v6 14/15] net/xsc: add ethdev infos get

2025-01-20 Thread WanRenyong
Implement xsc ethdev information get ops. Signed-off-by: WanRenyong --- drivers/net/xsc/xsc_ethdev.c | 61 1 file changed, 61 insertions(+) diff --git a/drivers/net/xsc/xsc_ethdev.c b/drivers/net/xsc/xsc_ethdev.c index 63c64ce547..5d548adb2d 100644 --- a/dri

[PATCH v6 00/15] XSC PMD for Yunsilicon NICs

2025-01-20 Thread WanRenyong
This xsc PMD (**librte_net_xsc**) provides poll mode driver for Yunsilicon metaScale serials NICs. Features: - - MTU update - TSO - RSS hash - RSS key update - RSS reta update - L3 checksum offload - L4 checksum offload - Inner L3 checksum - Inner L4 checksum - Basic stats Support NICs:

[PATCH v6 13/15] net/xsc: add basic stats ops

2025-01-20 Thread WanRenyong
Implement xsc ethdev basic statatics ops. Signed-off-by: WanRenyong --- v6: * Remove unnecessary paren. * Add the feature of stats per queue in xsc.ini. --- doc/guides/nics/features/xsc.ini | 2 + drivers/net/xsc/xsc_ethdev.c | 75 2 files changed, 77 inse

[PATCH v6 10/15] net/xsc: add ethdev stop and close

2025-01-20 Thread WanRenyong
Implement xsc ethdev close and stop functions. Signed-off-by: WanRenyong --- drivers/net/xsc/xsc_dev.c| 12 drivers/net/xsc/xsc_dev.h| 2 + drivers/net/xsc/xsc_ethdev.c | 108 +++ drivers/net/xsc/xsc_rx.c | 47 +++ drivers/net/xsc/

[PATCH v6 12/15] net/xsc: add ethdev Tx burst

2025-01-20 Thread WanRenyong
Implement xsc ethdev Tx burst function. Signed-off-by: WanRenyong Signed-off-by: Dongwei Xu --- doc/guides/nics/features/xsc.ini | 4 + drivers/net/xsc/xsc_ethdev.c | 1 + drivers/net/xsc/xsc_tx.c | 228 +++ drivers/net/xsc/xsc_tx.h | 1 + 4

  1   2   >