[PATCH 31/32] test: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- app/test/test_acl.c | 5 ++-- app/test/test_compressdev.c | 36 +-- app/test/test_security_inline_proto.c | 23 +++-- 3 fil

[PATCH 32/32] test/cryptodev: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/struct_assign.cocci Signed-off-by: Stephen Hemminger --- app/test/test_cryptodev.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/test/test_cryptodev.c b/app/test/test_cryptodev.c index 441ecc6ad5..50518dc5c6 1006

[PATCH 30/32] net/ice: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- drivers/net/intel/ice/ice_hash.c | 6 ++ 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/net/intel/ice/ice_hash.c b/drivers/net/intel/ice/ice_hash.c index 00d65bc

[PATCH 28/32] net/enic: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- drivers/net/enic/enic_fm_flow.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/enic/enic_fm_flow.c b/drivers/net/enic/enic_fm_flow.c index 8988148454..c2c3

[PATCH 29/32] net/iavf: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- drivers/net/intel/iavf/iavf_ipsec_crypto.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/net/intel/iavf/iavf_ipsec_crypto.c b/drivers/net/intel/iavf/iavf_i

[PATCH 27/32] net/cnxk: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- drivers/net/cnxk/cnxk_ethdev_cman.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/cnxk/cnxk_ethdev_cman.c b/drivers/net/cnxk/cnxk_ethdev_cman.c index a7c

[PATCH 26/32] net/bonding: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- drivers/net/bonding/rte_eth_bond_pmd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c

[PATCH 24/32] net/bnx2x: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- drivers/net/bnx2x/bnx2x_stats.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/bnx2x/bnx2x_stats.c b/drivers/net/bnx2x/bnx2x_stats.c index 8adbe7e381..b141

[PATCH 25/32] net/dpaa2: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- drivers/net/dpaa2/dpaa2_ethdev.c | 5 ++--- drivers/net/dpaa2/dpaa2_flow.c | 9 +++-- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/drivers/net/dpaa2/dpaa2_ethdev.c

[PATCH 23/32] net/txgbe: replace memcpy with assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/struct_assign.cocci Signed-off-by: Stephen Hemminger --- drivers/net/txgbe/txgbe_flow.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/net/txgbe/txgbe_flow.c b/drivers/net/txgbe/txgbe_flow.c index 5d2dd45368.

[PATCH 22/32] net/nfp: replace memcpy with assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/struct_assign.cocci Signed-off-by: Stephen Hemminger --- drivers/net/nfp/flower/nfp_flower_representor.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/nfp/flower/nfp_flower_representor.c b/drivers/net/nfp/

[PATCH 20/32] net/enic: replace memcpy with assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/struct_assign.cocci Signed-off-by: Stephen Hemminger --- drivers/net/enic/enic_main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/enic/enic_main.c b/drivers/net/enic/enic_main.c index b755b15d92..82abcde3

[PATCH 21/32] net/intel/i40e: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- drivers/net/intel/i40e/i40e_ethdev.c | 6 ++ drivers/net/intel/i40e/i40e_fdir.c| 3 +-- drivers/net/intel/i40e/i40e_flow.c| 3 +-- drivers/net/intel/i40e/rte_pmd_i40e.c | 3 +-

[PATCH 17/32] crypto/qat: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- drivers/crypto/qat/dev/qat_crypto_pmd_gen3.c | 3 +-- drivers/crypto/qat/dev/qat_crypto_pmd_gen5.c | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/crypto/qa

[PATCH 19/32] net/dpaa2: replace memcpy with assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/struct_assign.cocci Signed-off-by: Stephen Hemminger --- drivers/net/dpaa2/dpaa2_mux.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/dpaa2/dpaa2_mux.c b/drivers/net/dpaa2/dpaa2_mux.c index 2f124313fa..3f259

[PATCH 13/32] sched: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- lib/sched/rte_sched.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/sched/rte_sched.c b/lib/sched/rte_sched.c index bbdb5d1d86..c9b955b8e8 100644 --- a/lib/sched/

[PATCH 18/32] mempool/cnxk: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- drivers/mempool/cnxk/cnxk_mempool_ops.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/mempool/cnxk/cnxk_mempool_ops.c b/drivers/mempool/cnxk/cnxk_mempool_ops

[PATCH 16/32] net/bnxt: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- drivers/net/bnxt/bnxt_hwrm.c | 3 +-- drivers/net/bnxt/tf_core/tf_rm.c | 8 ++-- drivers/net/bnxt/tf_ulp/ulp_tun.c | 3 +-- 3 files changed, 4 insertions(+), 10 deletions(-) dif

[PATCH 14/32] table: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- lib/table/rte_swx_table_selector.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/table/rte_swx_table_selector.c b/lib/table/rte_swx_table_selector.c index 18e021

[PATCH 15/32] net/ntnic: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- drivers/net/ntnic/nthw/flow_api/flow_id_table.c | 4 ++-- .../nthw/flow_api/profile_inline/flow_api_profile_inline.c| 2 +- 2 files changed, 3 insertions(+), 3 deletions(

[PATCH 12/32] pipeline: replace memcpy with assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/struct_assign.cocci Signed-off-by: Stephen Hemminger --- examples/ip_pipeline/parser.c| 2 +- lib/pipeline/rte_pipeline.c | 6 ++--- lib/pipeline/rte_swx_ctl.c | 2 +- lib/pipeline/rte_swx_ipsec.c | 2

[PATCH 10/32] examples: replace memcpy with assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/struct_assign.cocci Signed-off-by: Stephen Hemminger --- examples/bbdev_app/main.c | 2 +- examples/l2fwd-cat/cat.c | 3 +-- examples/ptpclient/ptpclient.c | 4 +--- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/

[PATCH 11/32] node: replace memcpy with assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/rte_memcpy.cocci. Signed-off-by: Stephen Hemminger --- lib/node/ethdev_rx.c | 2 +- lib/node/ip4_reassembly.c | 2 +- lib/node/kernel_rx.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/node/ethdev_rx.c

[PATCH 09/32] ml/cnxk: replace memcpy with assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/struct_assign.cocci Signed-off-by: Stephen Hemminger --- drivers/ml/cnxk/cnxk_ml_ops.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/ml/cnxk/cnxk_ml_ops.c b/drivers/ml/cnxk/cnxk_ml_ops.c index d93c31535d..99589

[PATCH 08/32] event/dsw: replace memcpy with assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/struct_assign.cocci Signed-off-by: Stephen Hemminger --- drivers/event/dsw/dsw_event.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/event/dsw/dsw_event.c b/drivers/event/dsw/dsw_event.c index e68fb19890..399

[PATCH 07/32] event/dpaa2: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- drivers/event/dpaa2/dpaa2_eventdev.c | 7 +++ 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/event/dpaa2/dpaa2_eventdev.c b/drivers/event/dpaa2/dpaa2_eventdev.c

[PATCH 06/32] eventdev: replace memcpy with assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/struct_assign.cocci Signed-off-by: Stephen Hemminger --- lib/eventdev/rte_event_dma_adapter.c | 2 +- lib/eventdev/rte_event_timer_adapter.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/eventdev/rte_event_dma

[PATCH 05/32] dma/dpaa2: replace memcpy with assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/struct_assign.cocci Signed-off-by: Stephen Hemminger --- drivers/dma/dpaa2/dpaa2_qdma.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/dma/dpaa2/dpaa2_qdma.c b/drivers/dma/dpaa2/dpaa2_qdma.c index 3c9a7b5485.

[PATCH 04/32] crypto/dpaa_sec: replace memcpy with assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/struct_assign.cocci Signed-off-by: Stephen Hemminger --- drivers/crypto/dpaa_sec/dpaa_sec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/crypto/dpaa_sec/dpaa_sec.c b/drivers/crypto/dpaa_sec/dpaa_sec.c index 3

[PATCH 03/32] app/graph: replace memcpy with structure assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by struct-assign.cocci. Signed-off-by: Stephen Hemminger --- app/graph/ethdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/graph/ethdev.c b/app/graph/ethdev.c index d343235dae..2f4cf65c96 100644 --- a/app/graph/ethdev.c

[PATCH 02/32] app/testpmd: replace memcpy with assignment

2025-02-08 Thread Stephen Hemminger
Prefer structure assignment over memcpy. Found by cocci/struct_assign.cocci Signed-off-by: Stephen Hemminger --- app/test-pmd/cmdline_flow.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c index e1720e54d7..9a2cd86821

[PATCH 01/32] devtools/cocci: prefer structure assignment over memcpy

2025-02-08 Thread Stephen Hemminger
Prefer using simple structure assignment instead of memcpy. Using a structure assignment preserves type information and compiler checks types already. Signed-off-by: Stephen Hemminger --- devtools/cocci/struct-assign.cocci | 15 +++ 1 file changed, 15 insertions(+) create mode 10064

[PATCH 00/32] Use structure assignment instead of memcpy

2025-02-08 Thread Stephen Hemminger
This patch series reduces use of memcpy and rte_memcpy in DPDK. It changes memcpy to a simple assignment operator which easier to read, generates the same code, and keeps type safety. Historically memcpy was used in textbooks because there was no structure assignement in original K&R C. Stephen H

Re: [PATCH] drivers: allow build with VLAs

2025-02-08 Thread David Marchand
On Sat, Feb 8, 2025 at 10:29 AM Thomas Monjalon wrote: > > The drivers nfb, mvpp2 and mvsam use some variable length arrays > in their code, so the warnings about VLA must be disabled for now, > until removal for MSVC support, as in some other drivers. > > The warnings look like below: > > nfb_rx.

[PATCH] drivers: allow build with VLAs

2025-02-08 Thread Thomas Monjalon
The drivers nfb, mvpp2 and mvsam use some variable length arrays in their code, so the warnings about VLA must be disabled for now, until removal for MSVC support, as in some other drivers. The warnings look like below: nfb_rx.h:156:16: error: ISO C90 forbids variable length array 'packet