In the new consecutive memory mode of Tx queues allocation, the
needed WQ length is calculated via txq_calc_wqebb_cnt(). This
function is used both in Verbs and Devx modes, but in the Devx queue
creation, the actual length is re-calculated / adjusted for the Devx
API. The queue parameters 'max_inli
Add myself as maintainer for dlb2.
Signed-off-by: Tirthendu Sarkar
---
MAINTAINERS | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index 0e9357f3a3..7270475021 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1464,7 +1464,7 @@ M: Pavan Nikhilesh
F: d
Some BlueField firmware versions (e.g. 24.30.1004) do not support flex item
definitions using FIELD_MODE_FIXED with size set to 0, such as in 'next_header'.
Attempting to use this configuration may result in the following error:
'unsupported header length field mode (FIXED)'
This is resolved st
Caught by UBSan:
../lib/hash/rte_thash.c:421:8: runtime error: load of misaligned address
0x0001816c2da3 for type 'uint32_t' (aka 'unsigned int'),
which requires 4 byte alignment
Fixes: 28ebff11c2dc ("hash: add predictable RSS")
Cc: sta...@dpdk.org
Signed-off-by: David Marchand
Caught by UBSan:
../lib/eal/x86/include/rte_atomic_64.h:206:21: runtime error:
member access within misaligned address 0x7ffd9c67f228 for
type 'const rte_int128_t', which requires 16 byte alignment
0x7ffd9c67f228: note: pointer points here
00 00 00 00 c0 5d 3e 00 01 00 00
Enable UBSan in GHA.
There are still a lot of issues so only run unit tests for a "mini"
target.
Building with debugoptimized forces -O2 and consumes too much memory
with UBSan, prefer plain build (iow -O0) even though this hides a number
of build issues.
Signed-off-by: David Marchand
---
Change
Doing arithmetic with the NULL pointer is undefined.
Caught by UBSan:
../app/test/test_tailq.c:111:9: runtime error:
member access within null pointer of type 'struct rte_tailq_head'
Fixes: f6b4f6c9c123 ("tailq: use a single cast macro")
Cc: sta...@dpdk.org
Signed-off-by: David Marchand
On Wed, Jun 25, 2025 at 11:29 AM Marat Khalili wrote:
>
> This was flagged by undefined behaviour sanitizer: memset should not be
> called with NULL first argument. (memset requires first argument to be
> pointer to a memory object, so passing NULL may result in an undefined
> behaviour including
Doing arithmetic with the NULL pointer is undefined.
Caught by UBSan:
../lib/cmdline/cmdline_parse_portlist.c:40:19: runtime error:
applying non-zero offset 1 to null pointer
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior
../lib/cmdline/cmdline_parse_portlist.c:40:19 in
In a minimal build, the mempool/stack driver is disabled.
Separate the code specific to this external driver and rename unrelated
variables.
Signed-off-by: David Marchand
Acked-by: Andrew Rybchenko
Reviewed-by: Marat Khalili
---
app/test/test_mempool.c | 32
1
This series fixes a number of issues reported by UBSan and adds a simple
job in GHA to avoid introducing undefined behavior in the core
components.
There is way more work/fixes to do if we want to run with a full set of
components, but baby steps first.
--
David Marchand
Changes since v2:
- sim
pl->map is a uint32_t.
Caught by UBSan:
../lib/cmdline/cmdline_parse_portlist.c:27:17: runtime error:
left shift of 1 by 31 places cannot be represented in type 'int'
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior
../lib/cmdline/cmdline_parse_portlist.c:27:17 in
Fixes: a
For '.' and '..' directories (or any short file name),
a out of bound issue occurs.
Caught by UBSan:
EAL: Detected shared linkage of DPDK
../lib/eal/common/eal_common_options.c:420:15: runtime error: index -2
out of bounds for type 'char[256]'
#0 0x7f867eedf206 in eal_plugindir_init
Skip the test in the absence of the required skeleton driver.
Signed-off-by: David Marchand
---
app/test/meson.build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/test/meson.build b/app/test/meson.build
index 79d635b42b..8df8d3edd1 100644
--- a/app/test/meson.build
+++
In the absence of drivers, skip tests instead of failing.
Signed-off-by: David Marchand
---
app/test/meson.build | 10 ++
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/app/test/meson.build b/app/test/meson.build
index 7d38f51918..79d635b42b 100644
--- a/app/test/meson.bui
If no timer adapter is created, listing with telemetry can lead to crash
and is reported by UBSan as an undefined behavior:
../lib/eventdev/rte_event_timer_adapter.c:1418:13:
runtime error: applying zero offset to null pointer
../lib/eventdev/rte_event_timer_adapter.c:1464:13:
run
Enable more libraries, but exclude the ones with currently failing
unit tests.
Signed-off-by: David Marchand
---
.ci/linux-build.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh
index a24820c65b..1b0e01d395 100755
--- a/.ci/linux-buil
Acked-by: Vladimir Medvedkin
On 7/8/2025 1:28 PM, David Marchand wrote:
Caught by UBSan:
../lib/hash/rte_thash.c:421:8: runtime error: load of misaligned address
0x0001816c2da3 for type 'uint32_t' (aka 'unsigned int'),
which requires 4 byte alignment
Fixes: 28ebff11c2dc ("hash
On Tue, Jul 08, 2025 at 02:46:04PM +0200, David Marchand wrote:
> On Tue, Jul 8, 2025 at 2:44 PM Bruce Richardson
> wrote:
> >
> > On Tue, Jul 08, 2025 at 02:28:16PM +0200, David Marchand wrote:
> > > Content (param[]) of received multiprocess messages are aligned with
> > > a 4 bytes constraint.
This test was doing nothing as it could not find the telemetry client
script following the test suite rework.
Caught while looking at UNH unit test logs:
/root/workspace/Generic-Unit-Test-DPDK/dpdk/app/test/suites/test_telemetry.sh:
18: /root/workspace/Generic-Unit-Test-DPDK/dpdk/app/usertools/dp
When troubleshooting unit test failures and repeating jobs in GHA,
the absence of ccache makes the whole process way slower.
Signed-off-by: David Marchand
Acked-by: Aaron Conole
---
.github/workflows/build.yml | 6 ++
1 file changed, 6 insertions(+)
diff --git a/.github/workflows/build.yml
On Tue, Jul 08, 2025 at 02:28:16PM +0200, David Marchand wrote:
> Content (param[]) of received multiprocess messages are aligned with
> a 4 bytes constraint.
>
> Before patch:
> struct mp_msg_internal {
> int type; /* 0 4 */
> struct rte
On Tue, Jul 8, 2025 at 2:44 PM Bruce Richardson
wrote:
>
> On Tue, Jul 08, 2025 at 02:28:16PM +0200, David Marchand wrote:
> > Content (param[]) of received multiprocess messages are aligned with
> > a 4 bytes constraint.
> >
> > Before patch:
> > struct mp_msg_internal {
> > int type;
Hi Morten,
On 7/7/2025 11:00 PM, Morten Brørup wrote:
*From:*Vladimir Medvedkin [mailto:medvedk...@gmail.com]
*Sent:* Monday, 7 July 2025 22.10
That's not quite correct.
There are 2 valid usecases, that may bring some ambiguity:
1. Some vendors may support mixing dual/single tagged p
UBSan reports:
../lib/graph/graph_stats.c:208:13: runtime error:
member access within misaligned address 0x54742c50
for type 'struct rte_graph_cluster_stats',
which requires 64 byte alignment
../lib/graph/graph_stats.c:257:12: runtime error:
This script relies on subshell and pipes to prepare a list of commands
to pass to the telemetry script.
However, errors are not propagated to the parent process and the test
may still pass when an error occurs.
There is no POSIX option to cleanly catch all errors, so rely on bash
options (as some
From: Marat Khalili
This was flagged by undefined behaviour sanitizer: memset should not be
called with NULL first argument. (memset requires first argument to be
pointer to a memory object, so passing NULL may result in an undefined
behaviour including among other things optimizer potentially re
Content (param[]) of received multiprocess messages are aligned with
a 4 bytes constraint.
Before patch:
struct mp_msg_internal {
int type; /* 0 4 */
struct rte_mp_msg {
char name[64]; /*
On Tue, Jul 08, 2025 at 02:53:03PM +0200, David Marchand wrote:
> On Tue, Jul 8, 2025 at 2:48 PM Bruce Richardson
> wrote:
> >
> > On Tue, Jul 08, 2025 at 02:28:20PM +0200, David Marchand wrote:
> > > In the absence of drivers, skip tests instead of failing.
> > >
> > > Signed-off-by: David Marcha
DPDK traditionally has iterated through all args and processed them as
they appear in the commandline. The arg processing logic can be
simplified if instead we initially gather all arguments into a structure
which is then processed with the arguments dealt with in a fixed/known
order.
Signed-off-b
Use a utility function and macro to simplify the code for checking for
conflicting cmdline options. The checking can also be done at the
initial argument collating stage, shortening the argument
processing function which is very much on the long side.
Signed-off-by: Bruce Richardson
---
lib/eal/
Remove the separate function to check combinations of cmdline
parameters. Instead, just do those checks when parsing the parameters
since we have all info about what parameters are provided at that point.
Signed-off-by: Bruce Richardson
---
lib/eal/common/eal_common_memory.c | 3 +-
lib/eal/c
To simplify future rework of the EAL arg handling, add a long-option
equivalent for each short option that doesn't already have one.
Signed-off-by: Bruce Richardson
---
lib/eal/common/eal_common_options.c | 9 +
lib/eal/common/eal_options.h| 16
2 files changed,
This table should allow us to parse all the eal args into a single
structure for later parsing in a fixed-order field basis. For those
elements that take multiple values, define a TAILQ and a callback to
process those elements.
Signed-off-by: Bruce Richardson
---
lib/eal/common/eal_common_option
This RFC is a second, more complete, prototype of one approach we may
want to take to help improve management of EAL cmdline arguments.
BACKGROUND:
- The first problem that led to this work was that of providing a
way for users to easily provide a set of CPU cores to DPDK where the
CPU ids are
> -Original Message-
> From: Rajesh Mudimadugula
> Sent: Thursday, June 26, 2025 2:49 PM
> To: dev@dpdk.org
> Cc: jianjay.z...@huawei.com; Akhil Goyal ; Rajesh
> Mudimadugula [C]
> Subject: [PATCH] crypto/virtio: fix virtio desc flags virtq info
>
> This patch corrects virtio descript
#
July 3, 2025
Attendees
* Patrick Robb
* Manit Mahajan
* Dean Marx
#
Minutes
=
General Discu
On Tue, Jul 8, 2025 at 6:56 PM Patrick Robb wrote:
> #
> July 3, 2025
> Attendees
> * Patrick Robb
> * Manit Mahajan
> * Dean Marx
>
> #
> Minutes
>
> ==
> -Original Message-
> From: Thomas Monjalon
> Sent: Monday, June 30, 2025 6:31 AM
> To: annou...@dpdk.org
> Subject: release candidate 25.07-rc2
>
> A new DPDK release candidate is ready for testing:
> https://git.dpdk.org/dpdk/tag/?id=v25.07-rc2
>
> There are 141 new patches in t
The existing Rx burst routines suppose the completions in CQ
arrive in order and address the WQEs in receiving queue in order.
That is not true for the shared RQs, CQEs can arrive in out of
order and to address appropriate WQE we should fetch its index
from the CQE wqe_counter field.
Also, we can
On Wed, 9 Jul 2025 at 03:33, Akhil Goyal wrote:
>
> > To get better performance, using async mode to replace sync mode
> >
> > However, case UADK_CHAIN_CIPHER_AUTH and UADK_CHAIN_AUTH_CIPHER
> > still use sync mode for the first operation and async mode for
> > the second operation since the depen
To get better performance, using async mode to replace sync mode
However, case UADK_CHAIN_CIPHER_AUTH and UADK_CHAIN_AUTH_CIPHER
still use sync mode for the first operation and async mode for
the second operation since the dependence.
Also RTE_CRYPTO_AUTH_OP_VERIFY will hold the generated auth in
To get better performance, using async mode to replace sync mode
Signed-off-by: Zhangfei Gao
---
doc/guides/compressdevs/uadk.rst | 15 +++
drivers/compress/uadk/meson.build | 4 +-
drivers/compress/uadk/uadk_compress_pmd.c | 94 ++-
.../compress/uad
Realize async mode to replace sync mode for better performance
v5:
uadk do a 2.9.1 release instead of just tag
dpdk build depend on uadk 2.9.1 release
v4:
Akril pointed uadk build issue on x86
uadk 2.9.1 has fixed the issue
https://github.com/Linaro/uadk/releases/tag/v2.9.1
Update doc accordingly
> -Original Message-
> From: Bing Zhao
> Sent: Wednesday, July 9, 2025 7:00 AM
> To: Slava Ovsiienko ; dev@dpdk.org; Raslan
> Darawsheh
> Cc: Ori Kam ; Dariusz Sosnowski
> ; Suanming Mou ;
> Matan Azrad ; NBU-Contact-Thomas Monjalon
> (EXTERNAL)
> Subject: [PATCH] net/mlx5: fix the queue
The existing Rx burst routines suppose the completions in CQ
arrive in order and address the WQEs in receiving queue in order.
That is not true for the shared RQs, CQEs can arrive in out of
order and to address appropriate WQE we should fetch its index
from the CQE wqe_counter field.
Also, we can
On Tue, Jul 08, 2025 at 12:00:42AM +0200, Morten Brørup wrote:
>From: Vladimir Medvedkin [mailto:medvedk...@gmail.com]
>Sent: Monday, 7 July 2025 22.10
>
>
>Hi Morten, all,
>
>
>
>пн, 7 июл. 2025 г. в 19:09, Morten Brørup
><[1]m...@smartsharesystems.com>:
>
> > From:
when providing short format PCI device names in devargs
(e.g. "08:00:0") it is converted and stored as long format.
however when attach_port is called from testpmd, the user might
provide a short format, which will be passed to find_device with
a comparison function that simply compare stings, whic
v8:
Keep cmp_dev_name as string comparison and create a function within testpmd
that converts the PCI name to its long format before passing it to the
find_device function.
v1-v7:
The fix focuses on improving cmp_dev_name to perform a smarter comparison
instead of a direct string match to find
Device was started but not stopped on exit signal.
Added port stop and close on exit.
Fixes: af75078fece3 ("first public release")
Cc: sta...@dpdk.org
Signed-off-by: Maayan Kashani
---
examples/multi_process/symmetric_mp/main.c | 27 ++
1 file changed, 22 insertions(+), 5 de
On Tue, Jul 1, 2025 at 10:36 AM Konstantin Ananyev
wrote:
> > Caught by UBSan:
> >
> > ../lib/hash/rte_thash.c:421:8: runtime error: load of misaligned address
> > 0x0001816c2da3 for type 'uint32_t' (aka 'unsigned int'),
> > which requires 4 byte alignment
> >
> > Fixes: 28ebff11c2dc (
When compiling with MSVC the error below is hit:
drivers\net\mlx5\mlx5_tx.h(1148): error C2065: 'rte_v128u32_t':
undeclared identifier
The reference to rte_v128u32_t (in code and in names) can be removed,
because the code which relies on MLX5_ESEG_MIN_INLINE_SIZE does not
really use rte_v128u
> From: Bruce Richardson [mailto:bruce.richard...@intel.com]
> Sent: Tuesday, 8 July 2025 12.16
>
> On Tue, Jul 08, 2025 at 12:00:42AM +0200, Morten Brørup wrote:
> >From: Vladimir Medvedkin [mailto:medvedk...@gmail.com]
> >Sent: Monday, 7 July 2025 22.10
> >
> >
> >Hi Morten, all,
> >
On Wed, Jun 04, 2025 at 05:28:57PM +0200, Dariusz Sosnowski wrote:
> Hi,
>
> On Fri, May 30, 2025 at 05:21:57PM -0700, Andre Muezerie wrote:
> > When compiling with MSVC the error below is hit:
> >
> > drivers\net\mlx5\mlx5_tx.h(1148): error C2065: 'rte_v128u32_t':
> > undeclared identifier
>
On Tue, Jul 08, 2025 at 05:07:05PM +0200, Morten Brørup wrote:
> > From: Bruce Richardson [mailto:bruce.richard...@intel.com]
> > Sent: Tuesday, 8 July 2025 12.16
> >
> > On Tue, Jul 08, 2025 at 12:00:42AM +0200, Morten Brørup wrote:
> > >From: Vladimir Medvedkin [mailto:medvedk...@gmail.com]
> From: David Marchand [mailto:david.march...@redhat.com]
> Sent: Tuesday, 8 July 2025 14.28
>
> In a minimal build, the mempool/stack driver is disabled.
> Separate the code specific to this external driver and rename unrelated
> variables.
>
> Signed-off-by: David Marchand
> Acked-by: Andrew R
IBM - Power Systems Testing
DPDK v25.07-rc2
* Build CI on Fedora 40, 41 and 42 container images for ppc64le
* Basic PF on Mellanox: No issue found
* Performance: not tested.
* OS:- RHEL 9.4 kernel: 5.14.0-427.40.1.el9_4.ppc64le
with gcc version 11.4.1 20231218 (Red Hat 11.4.1-3)
Syste
On Tue, Jul 8, 2025 at 3:26 PM Bruce Richardson
wrote:
>
> On Tue, Jul 08, 2025 at 02:46:04PM +0200, David Marchand wrote:
> > On Tue, Jul 8, 2025 at 2:44 PM Bruce Richardson
> > wrote:
> > >
> > > On Tue, Jul 08, 2025 at 02:28:16PM +0200, David Marchand wrote:
> > > > Content (param[]) of receiv
> From: David Marchand [mailto:david.march...@redhat.com]
> Sent: Tuesday, 8 July 2025 14.28
>
> Fixes: 3340202f5954 ("stack: add lock-free implementation")
> Cc: sta...@dpdk.org
>
> Signed-off-by: David Marchand
> Acked-by: Bruce Richardson
> ---
> - struct rte_stack_lf_head old_head;
> +
The cmdline_fixed_string_t has a length of only 128, which will
become insufficient when there are many cores, so it should be
replaced with a cmdline_multi_string_t of larger capacity.
Fixes: af75078fece3 ("first public release")
Cc: sta...@dpdk.org
Signed-off-by: Dengdui Huang
---
app/test-pm
On Tue, Jul 8, 2025 at 2:48 PM Bruce Richardson
wrote:
>
> On Tue, Jul 08, 2025 at 02:28:20PM +0200, David Marchand wrote:
> > In the absence of drivers, skip tests instead of failing.
> >
> > Signed-off-by: David Marchand
> > ---
> > app/test/meson.build | 10 ++
> > 1 file changed, 6 i
On Tue, Jul 08, 2025 at 02:28:21PM +0200, David Marchand wrote:
> Skip the test in the absence of the required skeleton driver.
>
> Signed-off-by: David Marchand
Acked-by: Bruce Richardson
> ---
> app/test/meson.build | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/ap
On Tue, Jul 08, 2025 at 02:28:20PM +0200, David Marchand wrote:
> In the absence of drivers, skip tests instead of failing.
>
> Signed-off-by: David Marchand
> ---
> app/test/meson.build | 10 ++
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/app/test/meson.build b/a
Release status meeting minutes 2025-07-08
=
Agenda:
* Release Dates
* Subtrees
* Roadmaps
* LTS
* Defects
* Opens
Participants:
* ARM
* Intel
* Marvell
* Nvidia
* Red Hat
Release Dates
-
The following are the proposed working dates for 25.07:
This fix introduced a performance regression.
The problem is under investigation, but we are too close to the release
(and the virtio/vhost maintainer is not available) to get a fix before
the v25.07 release.
Revert this change for now, we can revisit during v25.11.
Bugzilla ID: 1747
Fixes: 3e3c
> On Tue, Jul 1, 2025 at 10:36 AM Konstantin Ananyev
> wrote:
> > > Caught by UBSan:
> > >
> > > ../lib/hash/rte_thash.c:421:8: runtime error: load of misaligned address
> > > 0x0001816c2da3 for type 'uint32_t' (aka 'unsigned int'),
> > > which requires 4 byte alignment
> > >
> > > Fi
On Tue, 8 Jul 2025 17:20:34 +
Bruce Richardson wrote:
> This RFC is a second, more complete, prototype of one approach we may
> want to take to help improve management of EAL cmdline arguments.
>
> BACKGROUND:
> - The first problem that led to this work was that of providing a
> way for u
Soon users are going to want to use AI code generation like Claude
with DPDK. There is a convention for giving hints to AI tool.
Rough first draft
Signed-off-by: Stephen Hemminger
---
CLAUDE.md | 33 +
1 file changed, 33 insertions(+)
create mode 100644 CLAUDE.md
> To get better performance, using async mode to replace sync mode
>
> However, case UADK_CHAIN_CIPHER_AUTH and UADK_CHAIN_AUTH_CIPHER
> still use sync mode for the first operation and async mode for
> the second operation since the dependence.
>
> Also RTE_CRYPTO_AUTH_OP_VERIFY will hold the gen
#
June 25, 2025
Attendees
1. Patrick Robb
2. Manit Mahajan
3. Dean Marx
#
Minutes
=
General A
On Tue, Jul 8, 2025 at 10:23 PM David Marchand
wrote:
>
> This fix introduced a performance regression.
>
> The problem is under investigation, but we are too close to the release
> (and the virtio/vhost maintainer is not available) to get a fix before
> the v25.07 release.
>
> Revert this change
From: Dylan Schneider
Allow the user to specify protocol link type when creating pcapng files.
This change is needed to specify the protocol type in the pcapng file,
DLT_EN10MB specifies ethernet packets only. This will allow dissectors
for other protocols to be used on files generated by pcapng.
On Tue, 8 Jul 2025 15:02:45 -0600
Schneide wrote:
> From: Dylan Schneider
>
> Allow the user to specify protocol link type when creating pcapng files.
> This change is needed to specify the protocol type in the pcapng file,
> DLT_EN10MB specifies ethernet packets only. This will allow dissecto
73 matches
Mail list logo