From: Sunil Kumar Kori
Adding link type parameter to provide the type
of port like twisted pair, fibre etc.
Also added an API to convert the RTE_ETH_LINK_TYPE_XXX
to a readable string.
Signed-off-by: Nithin Dabilpuram
Signed-off-by: Sunil Kumar Kori
---
v4..v5:
Add support for ECDSA SECP384R1 curve SIGN and VERIFY operations
Signed-off-by: Rupesh Chiluka
---
app/test-crypto-perf/cperf_ops.c | 58 +---
app/test-crypto-perf/cperf_options.h | 2 +
app/test-crypto-perf/cperf_options_parsing.c | 7 +-
app/test-crypto-perf/cperf
Add support for ECDSA SECP384R1 curve SIGN and VERIFY operations
Signed-off-by: Rupesh Chiluka
Change-Id: I0bde24ad5f93a9f2d37dfe156ba3325d3d151f8f
---
app/test-crypto-perf/cperf_ops.c | 58 +---
app/test-crypto-perf/cperf_options.h | 2 +
app/test-crypto-perf/cperf_
https://bugs.dpdk.org/show_bug.cgi?id=1773
Bug ID: 1773
Summary: Crypto devices should be using constant time memcmp
Product: DPDK
Version: 25.07
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
From: Long Li
In most cases, netvsc is used with a VF device. The application generally
runs with better performance when all the device memory is allocated on
VF's NUMA node, as the VF device carries most of the data packets.
But sometimes netvsc may run on a different NUMA node than that of th
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/txgbe/txgbe_ethdev_vf.c | 1 -
drivers/net/txgbe/txgbe_fdir.c | 2 +-
drivers/net/txgbe/txgbe_flow.c | 2 +-
drivers/net/txgbe/txgbe_rxtx.c | 1 -
4 files changed, 2 insertions
Use the new bsd_queue.h where needed but most files already
get the needed macros from rte_tailq.h
Signed-off-by: Stephen Hemminger
---
lib/acl/rte_acl_osdep.h | 1 -
lib/bbdev/rte_bbdev.c| 2 +-
lib/cryptodev/cryptodev_pmd.c| 1 -
lib/cryptodev/r
No need for direct inclusion here.
Signed-off-by: Stephen Hemminger
---
app/test-bbdev/main.h | 1 -
app/test-cmdline/cmdline_test.c | 1 -
app/test-mldev/ml_test.h| 1 -
3 files changed, 3 deletions(-)
diff --git a/app/test-bbdev/main.h b/app/test-bbdev/main.h
index dc10a505d
Only include the definition of LIST, TAILQ, etc where needed.
Signed-off-by: Stephen Hemminger
---
app/test-pmd/5tswap.c | 2 --
app/test-pmd/cmdline.c| 2 +-
app/test-pmd/config.c | 2 +-
app/test-pmd/csumonly.c | 1 -
app/test-pmd/flowgen.c| 1 -
app/test-pmd/hairpin.c| 1
The file sys/queue.h is not used anywhere now in DPDK.
Signed-off-by: Stephen Hemminger
---
lib/eal/windows/include/sys/queue.h | 840
1 file changed, 840 deletions(-)
delete mode 100644 lib/eal/windows/include/sys/queue.h
diff --git a/lib/eal/windows/include/sys/q
There is now a standard macro to safely walk tailq.
Signed-off-by: Stephen Hemminger
---
drivers/raw/ifpga/base/ifpga_enumerate.c | 6 +++---
drivers/raw/ifpga/base/opae_intel_max10.c | 8 +---
2 files changed, 4 insertions(+), 10 deletions(-)
diff --git a/drivers/raw/ifpga/base/ifpga_enum
There is now a standard macro for this.
Signed-off-by: Stephen Hemminger
---
drivers/net/mvpp2/mrvl_mtr.c | 8 ++--
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/net/mvpp2/mrvl_mtr.c b/drivers/net/mvpp2/mrvl_mtr.c
index c07ac95ddc..27596b8c99 100644
--- a/drivers/net/
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/dpaa2/dpaa2_flow.c | 1 -
drivers/net/dpaa2/dpaa2_mux.c | 1 -
drivers/net/dpaa2/dpaa2_ptp.c | 1 -
3 files changed, 3 deletions(-)
diff --git a/drivers/net/dpaa2/dpaa2_flow.c b/drivers/ne
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/zxdh/zxdh_mtr.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/zxdh/zxdh_mtr.h b/drivers/net/zxdh/zxdh_mtr.h
index 3efcb6b591..4b9b409025 100644
--- a/drivers/net/zxdh/zxdh_mt
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/vdev_netvsc/vdev_netvsc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/vdev_netvsc/vdev_netvsc.c
b/drivers/net/vdev_netvsc/vdev_netvsc.c
index f4a84783ce..
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/vmxnet3/vmxnet3_ethdev.c | 1 -
drivers/net/vmxnet3/vmxnet3_rxtx.c | 1 -
2 files changed, 2 deletions(-)
diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c
b/drivers/net/vmxnet3/vmxnet3_e
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/softnic/rte_eth_softnic_internals.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/softnic/rte_eth_softnic_internals.h
b/drivers/net/softnic/rte_eth_softnic_internals.h
index
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/thunderx/base/nicvf_bsvf.h | 2 +-
drivers/net/thunderx/base/nicvf_plat.h | 1 +
drivers/net/thunderx/nicvf_ethdev.c| 1 -
3 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/d
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/sfc/sfc_dp.c | 2 +-
drivers/net/sfc/sfc_dp.h | 1 -
2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/net/sfc/sfc_dp.c b/drivers/net/sfc/sfc_dp.c
index 7e2a20e4dc..0dbdc5
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/ntnic/ntnic_ethdev.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/ntnic/ntnic_ethdev.c b/drivers/net/ntnic/ntnic_ethdev.c
index 79ef9e7e7c..dac1cde891 100644
--- a/drivers/n
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/ngbe/ngbe_ethdev_vf.c | 1 -
drivers/net/ngbe/ngbe_rxtx.c | 1 -
2 files changed, 2 deletions(-)
diff --git a/drivers/net/ngbe/ngbe_ethdev_vf.c
b/drivers/net/ngbe/ngbe_ethdev_vf.c
inde
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/mlx4/mlx4.h | 1 -
drivers/net/mlx4/mlx4_flow.c | 2 +-
drivers/net/mlx4/mlx4_flow.h | 1 -
drivers/net/mlx4/mlx4_mr.h | 1 -
drivers/net/mlx4/mlx4_rxtx.h | 1 -
5 files changed, 1 ins
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/memif/memif_socket.h | 1 -
drivers/net/memif/rte_eth_memif.h | 1 -
2 files changed, 2 deletions(-)
diff --git a/drivers/net/memif/memif_socket.h b/drivers/net/memif/memif_socket.h
index b
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/failsafe/failsafe_flow.c| 1 -
drivers/net/failsafe/failsafe_private.h | 2 +-
2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/net/failsafe/failsafe_flow.c
b/driver
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/enic/enic.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/enic/enic.h b/drivers/net/enic/enic.h
index dc1d16f7d5..7c16356a58 100644
--- a/drivers/net/enic/enic.h
+++ b/driver
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/cxgbe/cxgbe_ethdev.c | 2 +-
drivers/net/cxgbe/cxgbe_main.c | 1 -
drivers/net/cxgbe/sge.c | 1 -
3 files changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/net/cxgbe/cx
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/bonding/eth_bond_private.h | 1 -
drivers/net/bonding/rte_eth_bond_flow.c | 1 -
2 files changed, 2 deletions(-)
diff --git a/drivers/net/bonding/eth_bond_private.h
b/drivers/net/bonding/e
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/bnx2x/bnx2x_ethdev.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/bnx2x/bnx2x_ethdev.h b/drivers/net/bnx2x/bnx2x_ethdev.h
index fa1c3ba955..3434aa0c9f 100644
--- a/drivers/n
Replace use of system sys/queue.h with DPDK bsd_queue.h
Signed-off-by: Stephen Hemminger
---
drivers/net/axgbe/axgbe_common.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/axgbe/axgbe_common.h b/drivers/net/axgbe/axgbe_common.h
index 93e6c177b6..e882842e39 100644
--- a/drivers/n
The macros in sys/queue.h are not used here.
Signed-off-by: Stephen Hemminger
---
drivers/net/tap/rte_eth_tap.h | 1 -
drivers/net/tap/tap_flow.c| 1 -
2 files changed, 2 deletions(-)
diff --git a/drivers/net/tap/rte_eth_tap.h b/drivers/net/tap/rte_eth_tap.h
index ce4322ad04..055a9e9b23 100
Already handled by rte_tailq.h in most places.
Signed-off-by: Stephen Hemminger
---
drivers/net/mlx5/hws/mlx5dr_internal.h | 1 -
drivers/net/mlx5/linux/mlx5_verbs.c| 1 -
drivers/net/mlx5/mlx5.h| 2 +-
drivers/net/mlx5/mlx5_devx.c | 1 -
drivers/net/mlx5/mlx5_flow.
For all the drivers, remove use of sys/queue.h if not necessary.
Remove locally defined FOREACH_SAFE macros.
Use bsd_queue.h instead.
Signed-off-by: Stephen Hemminger
---
drivers/net/intel/cpfl/cpfl_flow_engine_fxp.c | 1 -
drivers/net/intel/e1000/e1000_ethdev.h| 1 -
drivers/net/intel/e
Fix unsafe use after free by using STAILQ_FOREACH_SAFE.
Fixes: e8fe0e067b68 ("net/bnxt: fix allocation of PF info struct")
Cc: ajit.khapa...@broadcom.com
Cc: sta...@dpdk.org
Signed-off-by: Stephen Hemminger
---
drivers/net/bnxt/bnxt.h | 1 -
drivers/net/bnxt/bnxt_filter.c
The BSD version has the needed SLIST_FOREACH_SAFE already.
Signed-off-by: Stephen Hemminger
---
drivers/net/qede/qede_ethdev.h | 3 +--
drivers/net/qede/qede_filter.c | 6 --
2 files changed, 1 insertion(+), 8 deletions(-)
diff --git a/drivers/net/qede/qede_ethdev.h b/drivers/net/qede/qede_
Prefer just using rte_tailq.h when TAILQ macro's are used.
Other places eliminate sys/queue.h if possible.
Signed-off-by: Stephen Hemminger
---
drivers/bus/auxiliary/auxiliary_common.c | 2 +-
drivers/bus/auxiliary/private.h | 2 +-
drivers/bus/ifpga/ifpga_bus.c| 2 +-
drive
Use macros from rte_tailq.h instead using sys/queue.h directly.
Signed-off-by: Stephen Hemminger
---
drivers/bus/fslmc/bus_fslmc_driver.h | 1 -
drivers/bus/fslmc/fslmc_vfio.c | 1 +
drivers/bus/fslmc/portal/dpaa2_hw_dpio.c | 11 ++-
3 files changed, 3 insertions(+), 10 d
Use bsd_queue.h
Signed-off-by: Stephen Hemminger
---
lib/ethdev/ethdev_private.h | 3 +--
lib/ethdev/rte_ethdev.c | 2 +-
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/lib/ethdev/ethdev_private.h b/lib/ethdev/ethdev_private.h
index b07b1b4c42..a994833760 100644
--- a/lib/eth
Use bsd_queue.h instead.
Signed-off-by: Stephen Hemminger
---
lib/log/log.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/log/log.c b/lib/log/log.c
index 8ad5250a13..63289dd9a6 100644
--- a/lib/log/log.c
+++ b/lib/log/log.c
@@ -11,9 +11,9 @@
#include
#include
#incl
The necessary tailq macros are in rte_tailq.h
Signed-off-by: Stephen Hemminger
---
lib/mempool/rte_mempool.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/lib/mempool/rte_mempool.c b/lib/mempool/rte_mempool.c
index 1021ede0c2..bf8e870151 100644
--- a/lib/mempool/rte_mempool.c
+++ b/lib/memp
Use new bsd_queue.h instead.
Signed-off-by: Stephen Hemminger
---
lib/bpf/bpf_load_elf.c | 1 -
lib/bpf/bpf_pkt.c | 3 +--
2 files changed, 1 insertion(+), 3 deletions(-)
diff --git a/lib/bpf/bpf_load_elf.c b/lib/bpf/bpf_load_elf.c
index 1d30ba17e2..4e911c5083 100644
--- a/lib/bpf/bpf_load
The necessary macros are in rte_tailq.h
Signed-off-by: Stephen Hemminger
---
lib/lpm/rte_lpm.c | 1 -
lib/lpm/rte_lpm6.c | 1 -
2 files changed, 2 deletions(-)
diff --git a/lib/lpm/rte_lpm.c b/lib/lpm/rte_lpm.c
index 6dab86a05e..09d1e08263 100644
--- a/lib/lpm/rte_lpm.c
+++ b/lib/lpm/rte_lpm.c
The necessary TAILQ macros are in rte_tailq.h
Signed-off-by: Stephen Hemminger
---
lib/hash/rte_cuckoo_hash.c | 1 -
lib/hash/rte_fbk_hash.c| 1 -
lib/hash/rte_thash.c | 1 -
3 files changed, 3 deletions(-)
diff --git a/lib/hash/rte_cuckoo_hash.c b/lib/hash/rte_cuckoo_hash.c
index 2c9
Where macros are actually used directly include bsd_queue.h.
Most places were just copying some other file and doing unnecessary
include of sys/queue.h
Signed-off-by: Stephen Hemminger
---
examples/bbdev_app/main.c | 2 +-
examples/bond/main.c
Not used directly here
Signed-off-by: Stephen Hemminger
---
app/test-pipeline/config.c | 1 -
app/test-pipeline/init.c| 1 -
app/test-pipeline/main.c| 1 -
app/test-pipeline/runtime.c | 1 -
4 files changed, 4 deletions(-)
diff --git a/app/test-pipeline/config.c b/app/test-pipeline/con
Use the replacement bsd_queue.h header instead
Signed-off-by: Stephen Hemminger
---
app/test-eventdev/evt_test.c | 2 +-
app/test-eventdev/evt_test.h | 1 -
2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/app/test-eventdev/evt_test.c b/app/test-eventdev/evt_test.c
index 72d6228bc3.
Don't suggest use of sys/queue.h
Signed-off-by: Stephen Hemminger
---
doc/guides/contributing/coding_style.rst | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/doc/guides/contributing/coding_style.rst
b/doc/guides/contributing/coding_style.rst
index 243a3c2959..1f3d5d9acb
Not used directly here.
Signed-off-by: Stephen Hemminger
---
app/proc-info/main.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/app/proc-info/main.c b/app/proc-info/main.c
index be67386658..2feecbca78 100644
--- a/app/proc-info/main.c
+++ b/app/proc-info/main.c
@@ -9,7 +9,6 @@
#include
#
Use DPDK not system version.
Not really a requirement but better to avoid any possible conflict.
Signed-off-by: Stephen Hemminger
---
app/dumpcap/main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/dumpcap/main.c b/app/dumpcap/main.c
index 3d3c0dbc66..f28392d6cd 100644
Those macros are not directly in most of the test code.
Signed-off-by: Stephen Hemminger
---
app/test/commands.c | 2 +-
app/test/test.c | 1 -
app/test/test.h | 2 +-
app/test/test_atomic.c | 1 -
app/test/test_cmdline_lib
Replace use of sys/queue.h with bsd_queue.h
Signed-off-by: Stephen Hemminger
---
lib/eal/common/eal_common_bus.c| 2 +-
lib/eal/common/eal_common_class.c | 2 +-
lib/eal/common/eal_common_dev.c| 2 +-
lib/eal/common/eal_common_tailqs.c | 2 +-
lib/eal/common/eal_common_trace.c | 2 +-
The code to cleanup metering was using the objects after calling
rte_free(). Can fix now by using LIST_FOREACH_SAFE().
Fixes: 2caf84a71cfd ("net/nfp: add meter options")
Cc: jin@corigine.com
Cc: sta...@dpdk.org
Signed-off-by: Stephen Hemminger
---
drivers/net/nfp/nfp_mtr.c | 12 ++--
The version of sys/queue.h on Linux from glibc was derived
from an older version of BSD and is missing several key macros
such as LIST_FOREACH_SAFE. This leads to drivers re-implementing
the macros (sometimes badly) and other bugs.
Introduce a version of queue.h derived from the current FreeBSD
he
This patchset cleans up the queue.h macro problems in DPDK.
The root cause is that sys/queue.h in Linux is an old version
from early BSD; my best guess is that it is a BSD GPL license
issue that it never got updated. The Linux version is missing
several useful macros which leads to redefiniton, bug
On 8/18/25 00:24, Morten Brørup wrote:
From: Sunil Kumar Kori [mailto:sk...@marvell.com]
Sent: Monday, 18 August 2025 08.22
On Thu, 14 Aug 2025 11:04:18 +0200
Morten Brørup wrote:
From: sk...@marvell.com [mailto:sk...@marvell.com]
Sent: Thursday, 14 August 2025 10.10
Adding link type par
13/08/2025 16:16, Dariusz Sosnowski:
> Hi,
>
> Thank you for the patch. Please see comments inline.
>
> On Tue, Aug 12, 2025 at 08:46:30AM -0400, Khadem Ullah wrote:
> > This patch validate a connection tracking state when matching
> > 'conntrack is' in rte_flow rules. Since conntrack item flags
On Mon, 18 Aug 2025 17:36:21 +0100
Bruce Richardson wrote:
> > diff --git a/drivers/meson.build b/drivers/meson.build
> > index b62880db02..4c08a1dd9d 100644
> > --- a/drivers/meson.build
> > +++ b/drivers/meson.build
> > @@ -59,7 +59,7 @@ default_cflags = machine_args
> > default_cflags += ['-D
Mypy does not check functions and methods that are not entirely type
hinted. This prevents full checks, so they have been added where missing.
Full checks revealed some typing errors, pattern matching was applied
where appropriate to ensure these types were handled properly.
Additionally, the linte
On Mon, Aug 18, 2025 at 09:18:14AM -0700, Stephen Hemminger wrote:
> Clang (3.9 or later) has a -Wcomma that emits warnings for questionable
> uses of the comma operator.
>
> Don't enable it for drivers since many drivers still use
> comma operator unnecessarily.
>
> Signed-off-by: Stephen Hemmin
On Mon, Aug 18, 2025 at 09:18:07AM -0700, Stephen Hemminger wrote:
> Use of comma as statement separator is discouraged and
> reported as warning by clang with -Wcomma
>
> Signed-off-by: Stephen Hemminger
> Acked-by: Konstantin Ananyev
> Acked-by: Chengwen Feng
> Acked-by: Morten Brørup
> ---
On Wed, 12 Mar 2025 16:15:29 -0700
Stephen Hemminger wrote:
> This series adds common macros for safe iteration over lists.
> It is a subset copy of the macros from FreeBSD that are
> missing from the Linux header sys/queue.h
>
> Chose this over several other options:
> - let each driver defin
On Mon, Aug 18, 2025 at 09:18:07AM -0700, Stephen Hemminger wrote:
> Use of comma as statement separator is discouraged and
> reported as warning by clang with -Wcomma
>
> Signed-off-by: Stephen Hemminger
> Acked-by: Konstantin Ananyev
> Acked-by: Chengwen Feng
> Acked-by: Morten Brørup
> ---
Clang (3.9 or later) has a -Wcomma that emits warnings for questionable
uses of the comma operator.
Don't enable it for drivers since many drivers still use
comma operator unnecessarily.
Signed-off-by: Stephen Hemminger
Acked-by: Konstantin Ananyev
Acked-by: Chengwen Feng
Acked-by: Morten Brør
Should use semicolon here.
Signed-off-by: Stephen Hemminger
---
drivers/net/bnxt/tf_core/tf_msg.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/bnxt/tf_core/tf_msg.c
b/drivers/net/bnxt/tf_core/tf_msg.c
index f2d2de859c..645a4b1e66 100644
--- a/drivers/net/b
Use of comma as statement separator is discouraged and
reported as warning by clang with -Wcomma
Signed-off-by: Stephen Hemminger
Acked-by: Konstantin Ananyev
Acked-by: Chengwen Feng
Acked-by: Morten Brørup
Acked-by: Bruce Richardson
---
app/test/test_compressdev.c | 4 ++--
app/tes
Use semicolon to break lines.
Signed-off-by: Stephen Hemminger
---
drivers/net/bnx2x/bnx2x.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/bnx2x/bnx2x.c b/drivers/net/bnx2x/bnx2x.c
index 51e5cabf7b..8790c858d5 100644
--- a/drivers/net/bnx2x/bnx2x.c
+++ b/dri
Use of comma as statement separator is discouraged and
reported as warning by clang with -Wcomma
Signed-off-by: Stephen Hemminger
---
examples/l2fwd-event/l2fwd_event_generic.c | 2 +-
examples/l3fwd/l3fwd_event_generic.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git
Use while with brackets in favor of comma operator.
In flow print replace with temporary variable.
Signed-off-by: Stephen Hemminger
Acked-by: Chengwen Feng
Acked-by: Morten Brørup
Acked-by: Bruce Richardson
---
app/test-pmd/cmdline_flow.c | 6 --
app/test-pmd/config.c | 10 ++-
Use of comma as statement separator is discouraged and
reported as warning by clang with -Wcomma
Signed-off-by: Stephen Hemminger
Acked-by: Konstantin Ananyev
Acked-by: Chengwen Feng
Acked-by: Morten Brørup
---
lib/ipsec/misc.h | 8 +++-
1 file changed, 3 insertions(+), 5 deletions(-)
di
Clang has ability to detect suspicious use of comma operator
where a semicolon would have the same effect.
Easy enough to fix in DPDK code.
v4 - review feedback about consolidating assignments
fix Broadcom drivers (Intel and Nvidia still have warnings)
Stephen Hemminger (9):
eal: replace u
Use of comma as statement separator is discouraged and
reported as warning by clang with -Wcomma
Signed-off-by: Stephen Hemminger
Acked-by: Konstantin Ananyev
Acked-by: Chengwen Feng
Acked-by: Morten Brørup
Acked-by: Bruce Richardson
---
lib/graph/graph_stats.c | 2 +-
1 file changed, 1 inse
Use of comma as statement separator is discouraged and
reported as warning by clang with -Wcomma
Signed-off-by: Stephen Hemminger
Acked-by: Konstantin Ananyev
Acked-by: Chengwen Feng
Acked-by: Morten Brørup
Acked-by: Bruce Richardson
---
lib/eal/common/rte_malloc.c | 4 ++--
lib/eal/linux/ea
On Thu, Aug 14, 2025 at 5:46 PM Stephen Hemminger
wrote:
>
> KNI was removed from DPDK but the diagrams in the documentation
> were left behind.
>
> Signed-off-by: Stephen Hemminger
> ---
> doc/guides/prog_guide/img/kni_traffic_flow.png | Bin 366308 -> 0 bytes
> doc/guides/prog_guide/img/pkt_fl
> > >
> > > 10/07/2025 16:37, Andre Muezerie:
> > > > On Tue, Jul 01, 2025 at 04:17:20PM +0200, Thomas Monjalon wrote:
> > > > > 23/05/2025 01:37, Andre Muezerie:
> > > > > > The functions rte_rcu_qsbr_dq_create and rte_rcu_qsbr_dq_reclaim
> > > > > > establish no limit on the size of each element
On Tue, Aug 5, 2025 at 10:37 AM Maxime Coquelin
wrote:
>
> This patch fixes the used ring address calculation, to
> avoid Vhost-vDPA backends (such as VDUSE) to fail while
> trying to translate it.
Maybe update the patch title to reflect that this issue affects
vhost-vdpa backend?
>
> Fixes: 66
On Wed, 23 Jul 2025 at 17:08, wrote:
>
> Hi all,
>
> Here is a list of patches targeted for stable release 22.11.9.
>
> The planned date for the final release is by the 25th of August 2025.
>
> Please help with testing and validation of your use cases and report
> any issues/results with reply-all
This series aims to simplify the process of selecting an Rx burst
function for the i40e, iavf and ice drivers. Three main simplifications
are made:
1. enforcing the same rx burst function for both primary and secondary
processes.
2. using a common function for determining the maximum SIMD width bas
On Mon, Aug 18, 2025 at 11:58:22AM +0100, Loftus, Ciara wrote:
> > >
> > > They're not necessarily needed but I think they improve the readability
> > > when
> > they are used in the next three patches when defining the features of each
> > Rx
> > burst function. If you don't agree I can remove t
Replace the existing complicated logic with the use of the common
function.
Signed-off-by: Ciara Loftus
---
v3:
* Fixed vector offload mask to excude QINQ
* Use new extra features structure to define burst features
---
drivers/net/intel/ice/ice_ethdev.h | 1 -
drivers/net/intel/ice/ic
Replace the existing complicated logic with the use of the common function.
Signed-off-by: Ciara Loftus
---
v3
* change burst features to true/false instead of using defines
* Use new extra features structure to define burst features
---
drivers/net/intel/i40e/i40e_rxtx.c| 144 ++
The code for determining which Rx path to select during initialisation
has become complicated in many intel drivers due to the amount of
different paths and features available within each path. This commit
aims to simplify and genericize the path selection logic.
The following information about ea
Order the elements in the enum of Rx function types starting from
smallest SIMD width to largest, similar to the order in the i40e and
ice drivers.
Signed-off-by: Ciara Loftus
Acked-by: Bruce Richardson
---
drivers/net/intel/iavf/iavf.h | 22 +++---
1 file changed, 11 insertions
Replace the existing complicated logic with the use of the common
function.
Signed-off-by: Ciara Loftus
---
v3:
* change burst features to true/false instead of using defines
* Use new extra features structure to define burst features
---
drivers/net/intel/iavf/iavf_rxtx.c| 288 +
The offload RTE_ETH_RX_OFFLOAD_SCTP_CKSUM is not supported in the ice
driver so remove the one erroneous use of it.
Signed-off-by: Ciara Loftus
Acked-by: Bruce Richardson
---
drivers/net/intel/ice/ice_rxtx_vec_common.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/intel/ice/ice
Use the new function for determining the maximum simd bitwidth in
the i40e driver.
Signed-off-by: Ciara Loftus
Acked-by: Bruce Richardson
---
v3:
* removed unnecessary #ifdef CC_AVX512_SUPPORT
* added error log for case when tx simd width is invalid
---
drivers/net/intel/i40e/i40e_ethdev.h
The variable rx_vec_allowed was only used in one function, so
it's not necessary to have it part of the iavf_adapter structure.
Signed-off-by: Ciara Loftus
Acked-by: Bruce Richardson
---
drivers/net/intel/iavf/iavf.h| 1 -
drivers/net/intel/iavf/iavf_ethdev.c | 1 -
drivers/net/intel/ia
Use the new function for determining the maximum simd bitwidth in
the iavf driver.
Signed-off-by: Ciara Loftus
Acked-by: Bruce Richardson
---
drivers/net/intel/iavf/iavf_rxtx.c | 27 +-
drivers/net/intel/iavf/iavf_rxtx.h | 1 +
drivers/net/intel/iavf/iavf_rx
Use the new function for determining the maximum simd bitwidth in
the ice driver.
Signed-off-by: Ciara Loftus
Acked-by: Bruce Richardson
---
v3:
* removed unnecessary #ifdef CC_AVX512_SUPPORT
* changed == RTE_VECT_SIMD_256 to >= RTE_VECT_SIMD_256
---
drivers/net/intel/ice/ice_ethdev.h |
From: Bruce Richardson
A common need within the drivers is to select between SSE, AVX2 and
AVX-512 code paths. Provide a common function which helps with this
decision making, that returns the max simd bandwidth based on any
user configured maximums and available CPU flags.
Signed-off-by: Bruce
Rename variables from burst_type to func_type to better reflect
the information the variables are storing.
Signed-off-by: Ciara Loftus
Acked-by: Bruce Richardson
---
drivers/net/intel/iavf/iavf.h | 8 +-
drivers/net/intel/iavf/iavf_rxtx.c | 114 ++---
2 files chan
In the interest of simplicity, let the primary process select the Rx
path to be used by all processes using the given device.
The many logs which report individual Rx path selections have been
consolidated into one single log
Signed-off-by: Ciara Loftus
Acked-by: Bruce Richardson
---
drivers/n
In the interest of simplicity, let the primary process select the Rx
path to be used by all processes using the given device.
The many logs which report individual Rx path selections have been
consolidated into one single log
Signed-off-by: Ciara Loftus
Acked-by: Bruce Richardson
---
drivers/n
In the interest of simplicity, let the primary process select the Rx
path to be used by all processes using the given device.
The many logs which report individual Rx path selections have been
consolidated into one single log.
Signed-off-by: Ciara Loftus
Acked-by: Bruce Richardson
---
drivers/
On 8/18/2025 4:11 PM, Morten Brørup wrote:
> Why does the mbuf library support packet mbufs with smaller data room size
> than RTE_PKTMBUF_HEADROOM (e.g. [1]), when the Ethdev drivers (e.g. [2])
> don't support it?
Maybe the pktmbuf which extbuf, which the data-room-size is zero when create
pkt
> >
> > They're not necessarily needed but I think they improve the readability when
> they are used in the next three patches when defining the features of each Rx
> burst function. If you don't agree I can remove them.
> >
>
> I'd tend to prefer assigning bools to just true/false for type-safety
Hi Ivan,
> +static int
> +nbl_res_txrx_reset_stats(void *priv)
> +{
> + struct nbl_resource_mgt *res_mgt = (struct nbl_resource_mgt *)priv;
> + struct rte_eth_dev *eth_dev = res_mgt->eth_dev;
> + struct nbl_res_rx_ring *rxq;
> + struct nbl_rxq_stats *rxq_stats;
> + struct nbl_res_tx_ring *txq;
> +
Looks good, thank you!
Reviewed-by: Luca Vizzarro
On Mon, 18 Aug 2025, Morten Brørup wrote:
From: Ivan Malov [mailto:ivan.ma...@arknetworks.am]
Sent: Monday, 18 August 2025 10.13
Hi Morten,
On Mon, 18 Aug 2025, Morten Brørup wrote:
Ethtool has both NONE and OTHER:
https://git.kernel.org/pub/scm/network/ethtool/ethtool.git/tree/uapi/lin
> From: Ivan Malov [mailto:ivan.ma...@arknetworks.am]
> Sent: Monday, 18 August 2025 10.13
>
> Hi Morten,
>
> On Mon, 18 Aug 2025, Morten Brørup wrote:
>
>
>
> >
> > Ethtool has both NONE and OTHER:
> >
> https://git.kernel.org/pub/scm/network/ethtool/ethtool.git/tree/uapi/linux/eth
> tool.h#n
On Thu, Aug 14, 2025 at 08:46:04AM -0700, Stephen Hemminger wrote:
> KNI was removed from DPDK but the diagrams in the documentation
> were left behind.
>
> Signed-off-by: Stephen Hemminger
> ---
> doc/guides/prog_guide/img/kni_traffic_flow.png | Bin 366308 -> 0 bytes
> doc/guides/prog_guide/im
On Thu, Aug 14, 2025 at 02:35:34PM +0100, Loftus, Ciara wrote:
> >
> > On Thu, Aug 07, 2025 at 12:39:46PM +, Ciara Loftus wrote:
> > > The code for determining which Rx path to select during initialisation
> > > has become complicated in many intel drivers due to the amount of
> > > different
1 - 100 of 109 matches
Mail list logo