On Wed, Jul 23, 2025 at 03:31:54PM +0200, David Marchand wrote:
> ../lib/eal/common/eal_common_options.c:1638:16: runtime error:
> null pointer passed as argument 2, which is declared to never be null
>
> Signed-off-by: David Marchand
Acked-by: Bruce Richardson
> ---
> app/test/test_func
On Wed, 23 Jul 2025 06:13:27 +0400 (+04)
Ivan Malov wrote:
> +static inline void
> > +eth_dev_mirror(uint16_t port_id, uint16_t queue_id, uint8_t direction,
> > +struct rte_mbuf **pkts, uint16_t nb_pkts,
> > +const struct rte_eth_mirror_conf *conf)
> > +{
> > + struct rte_mbuf
On Wed, 23 Jul 2025, Stephen Hemminger wrote:
On Wed, 23 Jul 2025 06:13:27 +0400 (+04)
Ivan Malov wrote:
+static inline void
+eth_dev_mirror(uint16_t port_id, uint16_t queue_id, uint8_t direction,
+struct rte_mbuf **pkts, uint16_t nb_pkts,
+const struct rte_eth_mirro
On Wed, Jul 23, 2025 at 03:31:52PM +0200, David Marchand wrote:
> Without an explicit type, ip_xor gets promoted to a int.
>
> ../lib/rib/rte_rib6.c:348:26: runtime error:
> left shift of 130 by 24 places cannot be represented in type 'int'
>
> Signed-off-by: David Marchand
> ---
Acked-by:
On Wed, Jul 23, 2025 at 03:31:53PM +0200, David Marchand wrote:
> Passing a NULL to strncmp is incorrect.
>
> + --- +
> + Test Suite : Test Cfgfile Unit Test Suite
> + --- +
> ../lib/cfgfile/
> -Original Message-
> From: Richardson, Bruce
> Sent: Wednesday, July 23, 2025 4:08 PM
> To: Marchand, David
> Cc: dev@dpdk.org; Dumitrescu, Cristian ; Allain
> Legacy
> Subject: Re: [PATCH v5 20/22] cfgfile: fix section count with no name
>
> On Wed, Jul 23, 2025 at 03:31:53PM +020
On Wed, 23 Jul 2025, Khadem Ullah wrote:
Thanks, no. Can, I ?
Typically, the patch author (as indicated in their respective e-mail address)
can sign up for patchwork account, sign in and mark any of their own patches as
superseded, in order to help the delegated reviewers tell new from outdate
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 to this mail. For the final release
the fixes and re
The ultimate of this patchset is to make it easier to run on systems
with large numbers of cores, by simplifying the process of using core
numbers >RTE_MAX_LCORE. The new EAL args "--lcores-remapped", also
shortened to just "-L", and "--lcoreid-base", are added to DPDK to
support this. However, in
The different value types supported by the argparse library are not
discussed in the documentation, so add some reference material about
them.
Signed-off-by: Bruce Richardson
---
doc/guides/prog_guide/argparse_lib.rst | 73 +-
1 file changed, 71 insertions(+), 2 deletions
Create eal_option_list.h, containing all the possible EAL parameters,
and basic info about them, such as type, whether they take a parameter
or not. Each entry is defined using a macro, which will be then
interpreted when the file is included.
First time this header in included in the eal_common_o
Make the function to print out the help text for an argparse object a
public function, which takes as a new parameter the file stream on which
to print. This can be used in future to allow application to extend
their own help information.
Signed-off-by: Bruce Richardson
---
lib/argparse/rte_argp
To simplify future rework of the EAL arg handling, add a long-option
equivalent for each short option that doesn't already have one.
When updating the docs with the new long options, standardize the format
of options which have both short and long variants, and drop the
deprecated service-coremask
Introduce a string define for the currently running OS, or execution
environment.
Originally, with old make build system, CONFIG_RTE_EXEC_ENV used to hold
this name string, but the variable seems to have been missed in the
meson build system, until commit cadb255e25d6 ("eal: add OS defines for
C c
When the arguments passed to argparse include -h/--help then usage
information is automatically printed. Provide the capability for the
user to supply their own help function for this.
Signed-off-by: Bruce Richardson
---
doc/guides/prog_guide/argparse_lib.rst | 16
doc/guides/re
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
The lcoreid-base option only applies when used with the lcores-remapped
option, so print a warning when it's used with an lcores or coremask
flag, or when no core specification is given at all.
To do this, we add some generic infrastructure to allow us to warn about
options which are ignored when
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
When rte_eal_init fails part way through, any saved EAL arguments need
to be freed, and the run_once flag needs to be set back to zero again.
The former task was never done on failure, and the latter was only done
on some occasions. Rework the error handling to always go to an err_out
label where c
Core lists are widely used in DPDK, so add support for parsing them.
Signed-off-by: Bruce Richardson
---
app/test/test_argparse.c | 188 +
doc/guides/prog_guide/argparse_lib.rst | 32 +
lib/argparse/rte_argparse.c| 63 +
lib/argpars
To simplify use on systems with large numbers of cores, where it becomes
more awkward to use CPU cores numbered above 128, we add to EAL the "-L"
or "--lcores-remapped" option, which simply takes a list of cores to run
on, and maps them to lcore ids starting at a defined base (0 by
default).
To en
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/
Currently the default topology for test suites when not specified
is two link, which causes all one link test runs to skip.
This makes writing test suites less flexible for a user
who doesn't add a topology requirement, so changing this
to one link reduces barriers to getting a test suite
running q
Hi Shivaji,
(please see below)
On Wed, 23 Jul 2025, Shivaji Kant wrote:
Currently, the AF_XDP PMD attaches its XDP program using a fixed
set of flags,defaulting to `XDP_FLAGS_UPDATE_IF_NOEXIST`. This lacks
flexibility for users who might need to explicitly control the XDP
mode based on their s
Hi Khadem,
On Wed, 23 Jul 2025, Khadem Ullah wrote:
Please check v3 of this patch.
Checked. In the meantime, you're not overlooking to mark previous versions [1]
with status 'SUPERSEDED' in DPDK Patchwork, are you?
[1]
https://patches.dpdk.org/project/dpdk/patch/20250723045022.1580829-1-14p
Thanks, no.
Can, I ?
On Wed, Jul 23, 2025, 18:24 Ivan Malov wrote:
> Hi Khadem,
>
> On Wed, 23 Jul 2025, Khadem Ullah wrote:
>
> > Please check v3 of this patch.
>
> Checked. In the meantime, you're not overlooking to mark previous versions
> [1]
> with status 'SUPERSEDED' in DPDK Patchwork, are
On Wed, Jul 23, 2025 at 1:27 PM Bruce Richardson
wrote:
> On Tue, Jul 22, 2025 at 03:24:40PM +0200, David Marchand wrote:
> > Start a new release cycle with empty release notes.
> >
> > The ABI version becomes 26.0.
> > The ABI exceptions are dropped and CI ABI checks are disabled because
> > comp
On Wed, 23 Jul 2025 18:34:04 +0500
Khadem Ullah <14pwcse1...@uetpeshawar.edu.pk> wrote:
> Hi Ivan, agree. I think we can atleast currently guard all the known
> crashes.
>
> Sure, I will check the macro and get back to you.
>
> Thank you!
>
> On Wed, Jul 23, 2025, 18:19 Ivan Malov wrote:
>
>
On Wed, 23 Jul 2025 07:57:02 -0500
Ashok Kaladi wrote:
> During cross-compilation, BPF build incorrectly includes header files
> from the host system instead of the target sysroot. This leads to
> build failures due to incompatible headers or unavailability of header
> files in the host.
>
> Fix
During cross-compilation, BPF build incorrectly includes header files
from the host system instead of the target sysroot. This leads to
build failures due to incompatible headers or unavailability of header
files in the host.
Fix by using the Meson sysroot property to correctly locate and include
Hi Khadem,
On Wed, 23 Jul 2025, Khadem Ullah wrote:
In secondary processes, directly accessing 'dev->data->dev_private' can
cause a segmentation fault if the primary process has exited or if the
shared memory is no longer accessible.
Secondary application not only breaking on device closing,
b
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
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
Acked-by: Morten Brørup
---
app/test/test_mempool.c | 32 +++
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
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
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
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 v4:
- reb
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
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
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
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
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:
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]; /*
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
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
In the absence of drivers, skip tests instead of failing.
Signed-off-by: David Marchand
Acked-by: Bruce Richardson
---
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 100
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/app/test/meson.build b/app/test/meson.build
index 79d635b42b..8df8d3edd1 100644
---
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
Hi Ivan, agree. I think we can atleast currently guard all the known
crashes.
Sure, I will check the macro and get back to you.
Thank you!
On Wed, Jul 23, 2025, 18:19 Ivan Malov wrote:
> Hi Khadem,
>
> On Wed, 23 Jul 2025, Khadem Ullah wrote:
>
> > In secondary processes, directly accessing 'd
Without an explicit type, all parameters of this macro are considered as
a signed integer.
../app/test/test_fib.c:270:20: runtime error: left shift of
128 by 24 places cannot be represented in type 'int'
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior
../app/test/test_fib.c
Enable more libraries, but exclude the ones with currently failing
unit tests.
Signed-off-by: David Marchand
---
Changes since v3:
- re-enabled cfgfile, fib, lpm and rib,
---
.ci/linux-build.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.ci/linux-build.sh b/.ci/linux-bu
../lib/eal/common/eal_common_options.c:1638:16: runtime error:
null pointer passed as argument 2, which is declared to never be null
Signed-off-by: David Marchand
---
app/test/test_func_reentrancy.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/app/test/test_fu
Without an explicit type, ip_xor gets promoted to a int.
../lib/rib/rte_rib6.c:348:26: runtime error:
left shift of 130 by 24 places cannot be represented in type 'int'
Signed-off-by: David Marchand
---
lib/rib/rte_rib6.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git
Passing a NULL to strncmp is incorrect.
+ --- +
+ Test Suite : Test Cfgfile Unit Test Suite
+ --- +
../lib/cfgfile/rte_cfgfile.c:475:7: runtime error: null pointer passed as
argument
On Wed, 23 Jul 2025 05:08:04 +0400 (+04)
Ivan Malov wrote:
> +
> > +int
> > +ethdev_request(uint16_t port_id, enum ethdev_mp_operation operation,
> > + const void *buf, size_t buf_len)
> > +{
> > + struct rte_mp_msg mp_req = { };
> > + struct rte_mp_reply mp_reply;
> > + struct et
Acked-by: Vladimir Medvedkin
On 7/23/2025 2:31 PM, David Marchand wrote:
Without an explicit type, ip_xor gets promoted to a int.
../lib/rib/rte_rib6.c:348:26: runtime error:
left shift of 130 by 24 places cannot be represented in type 'int'
Signed-off-by: David Marchand
---
lib/ri
In secondary processes, directly accessing 'dev->data->dev_private' can
cause a segmentation fault if the primary process has exited or if the
shared memory is no longer accessible.
Secondary application not only breaking on device closing,
but also getting segfault when we do "show device info al
Please check v3 of this patch.
On Wed, Jul 23, 2025 at 5:19 PM Khadem Ullah <14pwcse1...@uetpeshawar.edu.pk>
wrote:
> Secondary application not only breaking on device closing,
> it's also getting segfault when we do "show device info all" from secondary
> after primary closes:
>
> testpmd> show
On Tue, Jul 22, 2025 at 03:24:41PM +0200, David Marchand wrote:
> Now that the ABI has been bumped to 26, we can drop compatibility
> symbols for the CRC API.
>
> The logtype is not used anymore and can be removed.
>
> Signed-off-by: David Marchand
> ---
Not an expert in this area, but code cha
Secondary application not only breaking on device closing,
it's also getting segfault when we do "show device info all" from secondary
after primary closes:
testpmd> show device info all
* Infos for device :03:00.0 *
Bus name: pci
Bus information: vendo
Small series to improve dispatch mode for lib/graph.
In order to run an instance of the graph in a control thread (slow path
defined as nodes) in addition to the datapath thread, we need:
- the ability to run graph_walk on an non-eal thread
- a signaling mechanism to wake up the control thread
In dispatch mode, the assumption is that the graphs will be
polled continuously: there is no way to know when packets are transferred
from one graph to another.
Introduce a callback to be notified when packets are enqueue in the work
queue: this can be useful if we want to wake up a thread.
This s
rte_graph_model_mcore_dispatch_core_bind relied on
rte_lcore_is_enabled.
Yet, "rte_lcore_is_enabled" only checks for EAL threads, which forbids
external threads (NON EAL) to run a part of the graph.
Verify if the lcore role is not "ROLE_OFF", and return relevant
error code otherwise.
Signed-off-b
Add Microsoft Azure Cobalt-100 to arm build.
Signed-off-by: Wathsala Vithanage
Reviewed-by: Dhruv Tripathi
---
config/arm/meson.build | 30 ++
1 file changed, 30 insertions(+)
diff --git a/config/arm/meson.build b/config/arm/meson.build
index 35b7553e74..1cd5bc1a5a
Hi Ivan Malov 😊
Use Case:
I'm currently using the DPDK-Burst-Replay tool to replay captured PCAP files at
specific data rates (e.g., 150–200 Mbps).
Response to your feedback:
Point 1: "Port 0 is not on the good NUMA ID (-1)"
I’m aware that this message is printed due to the NUMA ID being returne
After careful discussion with the Governing Board and Technical Board, we've
decided to cancel the Bay Area DPDK Summit planned for September 17-18.
After our successful DPDK Summit in Prague earlier this year, we definitely
intend to continue the DPDK Summit events. We'll be focusing on plans f
Hi,
On 16.07.25 11:38, Dariusz Sosnowski wrote:
Mark repr_matching_en device argument exposed by mlx5 PMD
as deprecated and schedule its removal in 25.11 release.
[...]
A new unified representor model, described in
https://fast.dpdk.org/events/slides/DPDK-2024-07-unified_representor.pdf
shoul
The meaning of L2_len in the parsing result of the rte_net_get_ptype()
is the same as the L2_len field in the mbuf. For tunnel packets,
the L2_len should include protocol header of tunnel packets.
Bugzilla ID: 1754
Fixes: d21d855464ff ("net: support GRE in software packet type parser")
Cc: sta...@
On Wed, Jul 23, 2025 at 11:58:15AM +0100, Paul Szczepanek wrote:
> Don't think I can "elect" anyone but we did discuss it with other
> maintainers during the recent release meeting and motion was seconded by
> Bruce (I think) and run unopposed.
>
Don't think it was me, but I have no objections in
23/07/2025 11:07, Adrian Schollmeyer:
> Hi,
>
> On 16.07.25 11:38, Dariusz Sosnowski wrote:
>
> > Mark repr_matching_en device argument exposed by mlx5 PMD
> > as deprecated and schedule its removal in 25.11 release.
> >
> > [...]
> >
> > A new unified representor model, described in
> > https://
Don't think I can "elect" anyone but we did discuss it with other
maintainers during the recent release meeting and motion was seconded by
Bruce (I think) and run unopposed.
Acked-by: Paul Szczepanek
On 22/07/2025 17:04, Patrick Robb wrote:
> Acked-by: Patrick Robb mailto:pr...@iol.unh.edu>>
>
On Tue, Jul 22, 2025 at 03:24:40PM +0200, David Marchand wrote:
> Start a new release cycle with empty release notes.
>
> The ABI version becomes 26.0.
> The ABI exceptions are dropped and CI ABI checks are disabled because
> compatibility is not preserved.
>
> Signed-off-by: David Marchand
> --
This patch is a logical continuation of the commit:
```
commit 30410493759f ("drivers/net: check process type in close operation")
```
In that change, @Thomas Monjalon introduced a
mechanism to prevent secondary processes from incorrectly releasing shared
resources during device close operation
Currently, the AF_XDP PMD attaches its XDP program using a fixed
set of flags,defaulting to `XDP_FLAGS_UPDATE_IF_NOEXIST`. This lacks
flexibility for users who might need to explicitly control the XDP
mode based on their specific hardware capabilities or performance
requirements.
This patch introd
Current code in eal_trace_init() specifies 8 byte alignment for CTF
generation, but fallback code in __rte_trace_mem_per_thread() does
not enforce similar requirements when calling malloc(). Modify fallback
heap requests to use posix_memalign() with proper alignment.
Signed-off-by: David Christens
Hi Stephen,
Thanks for the feedback.
This patch doesn’t monitor the primary process, it only adds basic checks to
prevent crashes when the secondary
process calls certain APIs after the primary has exited. Right now, I think,
only specific apps like `dumpcap`
use `enable_primary_monitor`, but
If primary process exits, there is no point in calling
pdump to release resources.
Bugzilla ID: 1760
Fixes: cbb44143be74 ("app/dumpcap: add new packet capture application")
Signed-off-by: Stephen Hemminger
---
v2 - fix indentation
app/dumpcap/main.c | 11 ++-
1 file changed, 6 insertio
On Wed, 23 Jul 2025 06:32:45 +0400 (+04)
Ivan Malov wrote:
> Hi Stephen,
>
> On Tue, 22 Jul 2025, Stephen Hemminger wrote:
>
> > In new model, the packet was already copied, only need
>
> Copied? But what if it was "indirect attached" instead, as the model
> envisages?
>
> Perhaps this is
79 matches
Mail list logo