[PATCH v2 6/7] dts: remove multi-inheritance classes

2025-03-14 Thread Luca Vizzarro
Multi inheritance has proven to be flaky in Python, therefore revert back to a simpler approach where classes will only inherit one base class. As part of this change, instead of making the ScapyTrafficGenerator class inehrit a PythonShell, use simple class composition, by making the shell a class

[Patch v2] doc: announce bus/vmbus API changes

2025-03-14 Thread longli
From: Long Li All vmbus APIs are used internally by DPDK core and net/netvsc PMD. It's not feasible or practical to use those APIs by the application. Those APIs will be moved from "DPDK" to "Internal" in DPDK 25.11. Signed-off-by: Long Li --- Change in v2: add details on what APIs will be chan

[PATCH v2 1/7] dts: escape single quotes

2025-03-14 Thread Luca Vizzarro
When making any command a privileged one in a LinuxSession, there currently is no consideration whether this command already includes single quotes. Therefore escape the existing single quotes before making the command. Signed-off-by: Luca Vizzarro Reviewed-by: Paul Szczepanek --- dts/framework

[PATCH v2 3/4] drivers/net: build use common AVX handling

2025-03-14 Thread Bruce Richardson
Remove from remaining net drivers the special-case code to handle AVX2 or AVX512 specific files. These can be built instead using drivers/meson.build. Signed-off-by: Bruce Richardson --- drivers/net/bnxt/meson.build | 10 +- drivers/net/enic/meson.build | 10 +- drivers

Re: [PATCH v2] rust: support raw DPDK API

2025-03-14 Thread Etelson, Gregory
Looking at the above parts of "Port abstraction in Rust", I'm not sure it really adds anything. It feels a bit "middle of the road" (aka, adding some "abstraction", but not going far enough). Current helloword example is a POC for the raw module usage. It content can (should) be updated

[PATCH v2 0/4] remove driver-specific logic for AVX builds

2025-03-14 Thread Bruce Richardson
A number of drivers had special optimized AVX2 and AVX512 code paths for performance reasons, and these tended to have copy-pasted logic to build those files. Centralise that logic in the main drivers/meson.build file to avoid duplication. v2: add patch 4 to remove use of unnecessary CC_AVX2_SUPPO

Re: [RFC v3 6/8] build: mark exported symbols

2025-03-14 Thread Bruce Richardson
On Fri, Mar 14, 2025 at 06:39:54PM +0100, David Marchand wrote: > On Fri, Mar 14, 2025 at 6:29 PM Bruce Richardson > wrote: > > > > What I'd actually like more, but never have had time to actually try > > > > out is > > > > to generalise the instruction-set-specific build stuff into the higher >

[PATCH v2 4/4] drivers/net: remove AVX2 build-time define

2025-03-14 Thread Bruce Richardson
Since all supported compilers can generate AVX2 code, we will always enable the build of the AVX2 files on x86. This means that CC_AVX2_SUPPORT is always true on x86, so it can be removed and a regular "#ifdef RTE_ARCH_x86" used in its place. Signed-off-by: Bruce Richardson --- drivers/net/bnxt/

[PATCH v2 1/4] build: add generalized AVX handling for drivers

2025-03-14 Thread Bruce Richardson
Add support to the top-level driver build file for AVX2 and AVX512 specific sources. This should simplify driver builds by avoiding the need to constantly reimplement the same build logic Signed-off-by: Bruce Richardson --- drivers/meson.build | 30 ++ 1 file changed,

Re: [PATCH 3/3] drivers/net: build use common AVX handling

2025-03-14 Thread David Marchand
On Fri, Mar 14, 2025 at 6:24 PM Bruce Richardson wrote: > diff --git a/drivers/net/octeon_ep/meson.build > b/drivers/net/octeon_ep/meson.build > index 1b34db3edc..9bf4627894 100644 > --- a/drivers/net/octeon_ep/meson.build > +++ b/drivers/net/octeon_ep/meson.build > @@ -15,18 +15,8 @@ sources = f

[PATCH 3/3] drivers/net: build use common AVX handling

2025-03-14 Thread Bruce Richardson
Remove from remaining net drivers the special-case code to handle AVX2 or AVX512 specific files. These can be built instead using drivers/meson.build. Signed-off-by: Bruce Richardson --- drivers/net/bnxt/meson.build | 10 +- drivers/net/enic/meson.build | 10 +- drivers

[PATCH 1/3] build: add generalized AVX handling for drivers

2025-03-14 Thread Bruce Richardson
Add support to the top-level driver build file for AVX2 and AVX512 specific sources. This should simplify driver builds by avoiding the need to constantly reimplement the same build logic Signed-off-by: Bruce Richardson --- drivers/meson.build | 30 ++ 1 file changed,

[PATCH 0/3] remove driver-specific logic for AVX builds

2025-03-14 Thread Bruce Richardson
A number of drivers had special optimized AVX2 and AVX512 code paths for performance reasons, and these tended to have copy-pasted logic to build those files. Centralise that logic in the main drivers/meson.build file to avoid duplication. Bruce Richardson (3): build: add generalized AVX handlin

Re: [RFC v3 6/8] build: mark exported symbols

2025-03-14 Thread David Marchand
On Fri, Mar 14, 2025 at 5:53 PM David Marchand wrote: > > On Fri, Mar 14, 2025 at 5:24 PM Bruce Richardson > wrote: > > > > On Fri, Mar 14, 2025 at 05:14:34PM +0100, David Marchand wrote: > > > On Thu, Mar 13, 2025 at 6:31 PM Bruce Richardson > > > wrote: > > > > > > > > On Tue, Mar 11, 2025 at

RE: [PATCH 1/2] net/mlx5: improve socket file path

2025-03-14 Thread Dariusz Sosnowski
Hi, > From: Yang Ming > Sent: Wednesday, March 12, 2025 3:56 AM > To: Bruce Richardson ; Stephen Hemminger > > Cc: Dariusz Sosnowski ; Slava Ovsiienko > ; Bing Zhao ; Ori Kam > ; > Suanming Mou ; Matan Azrad > ; dev@dpdk.org > Subject: Re: [PATCH 1/2] net/mlx5: improve socket file path > >

Re: [RFC v3 6/8] build: mark exported symbols

2025-03-14 Thread Bruce Richardson
On Fri, Mar 14, 2025 at 05:14:34PM +0100, David Marchand wrote: > On Thu, Mar 13, 2025 at 6:31 PM Bruce Richardson > wrote: > > > > On Tue, Mar 11, 2025 at 10:56:04AM +0100, David Marchand wrote: > > > Annotate symbols with newly introduced export macros. > > > > > > For code not compiled by lib/m

Re: [RFC v3 6/8] build: mark exported symbols

2025-03-14 Thread David Marchand
On Thu, Mar 13, 2025 at 6:31 PM Bruce Richardson wrote: > > On Tue, Mar 11, 2025 at 10:56:04AM +0100, David Marchand wrote: > > Annotate symbols with newly introduced export macros. > > > > For code not compiled by lib/meson.build or drivers/meson.build (like AVX > > separate libraries, or sources

Re: [RFC v3 5/8] build: generate symbol maps

2025-03-14 Thread David Marchand
On Thu, Mar 13, 2025 at 6:27 PM Bruce Richardson wrote: > > On Tue, Mar 11, 2025 at 10:56:03AM +0100, David Marchand wrote: > > Rather than maintain a file in parallel of the code, symbols to be > > exported can be marked with a token RTE_EXPORT_*SYMBOL. > > > > From those marks, the build framewo

Re: [RFC v3 5/8] build: generate symbol maps

2025-03-14 Thread David Marchand
On Fri, Mar 14, 2025 at 4:28 PM Andre Muezerie wrote: > > On Tue, Mar 11, 2025 at 10:56:03AM +0100, David Marchand wrote: > > Rather than maintain a file in parallel of the code, symbols to be > > exported can be marked with a token RTE_EXPORT_*SYMBOL. > > > > >From those marks, the build framewor

Re: [RFC v3 5/8] build: generate symbol maps

2025-03-14 Thread David Marchand
On Fri, Mar 14, 2025 at 3:24 PM Thomas Monjalon wrote: > > 11/03/2025 10:56, David Marchand: > > +if is_ms_linker > > +link_mode = 'msvc' > > It can be MSVC or clang. > mslinker may be a better naming. > > > +elif is_windows > > +link_mode = 'mingw' > > +

Re: [RFC] git: consolidate .gitignore files

2025-03-14 Thread Thomas Monjalon
14/03/2025 16:18, Patrick Robb: > https://git.dpdk.org/next/dpdk-next-dts/commit/?id=564f4abb42df0cdf7da8c53933705bc205642005 > > This commit on next-dts changes the name of this default config file from > test_runs.yaml to test_run.yaml. However, it is not pulled to main yet. > > I can send a pa

[PATCH v5 1/3] eal: add portable version of __builtin_add_overflow

2025-03-14 Thread Andre Muezerie
__builtin_add_overflow is gcc specific. There's a need for a portable version that can also be used with other compilers. This patch introduces rte_add_overflow. Signed-off-by: Andre Muezerie --- doc/api/doxy-api-index.md | 1 + lib/eal/include/meson.build | 1 + lib/eal/include/rte_math.h

Re: [RFC v3 5/8] build: generate symbol maps

2025-03-14 Thread Andre Muezerie
On Tue, Mar 11, 2025 at 10:56:03AM +0100, David Marchand wrote: > Rather than maintain a file in parallel of the code, symbols to be > exported can be marked with a token RTE_EXPORT_*SYMBOL. > > >From those marks, the build framework generates map files only for > symbols actually compiled (which

Re: [RFC v3 5/8] build: generate symbol maps

2025-03-14 Thread Thomas Monjalon
11/03/2025 10:56, David Marchand: > +if is_ms_linker > +link_mode = 'msvc' It can be MSVC or clang. mslinker may be a better naming. > +elif is_windows > +link_mode = 'mingw' > +else > +link_mode = 'gnu' > +endif

Re: [PATCH v5 2/3] net/intel: use portable version of __builtin_add_overflow

2025-03-14 Thread Bruce Richardson
On Fri, Mar 14, 2025 at 07:33:39AM -0700, Andre Muezerie wrote: > __builtin_add_overflow is gcc specific. It should be replaced with > a portable version that can also be used with other compilers. > > Signed-off-by: Andre Muezerie > --- Acked-by: Bruce Richardson

[PATCH v5 0/3] add portable version of __builtin_add_overflow

2025-03-14 Thread Andre Muezerie
__builtin_add_overflow is gcc specific. There's a need for a portable version that can also be used with other compilers. v5: - Combined patches 1 with 5 and 2 with 3. v4: - Added define in ice_osdep.h to use portable version of __builtin_add_overflow when using MSVC. - Undid all changes from d

Re: [PATCH] dts: fix SPDX tag

2025-03-14 Thread Thomas Monjalon
14/03/2025 14:43, Thomas Monjalon: > The license in the SPDX tag was incomplete. > > Fixes: d77a4a27bd24 ("dts: remove node distinction") > > Signed-off-by: Thomas Monjalon Reviewed-by: Luca Vizzarro Applied, thanks.

Re: [PATCH] dts: fix SPDX tag

2025-03-14 Thread Luca Vizzarro
Reviewed-by: Luca Vizzarro

[PATCH] dts: fix SPDX tag

2025-03-14 Thread Thomas Monjalon
The license in the SPDX tag was incomplete. Fixes: d77a4a27bd24 ("dts: remove node distinction") Signed-off-by: Thomas Monjalon --- dts/framework/remote_session/dpdk.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dts/framework/remote_session/dpdk.py b/dts/framework/remo

[PATCH v2 7/7] dts: enable shell pooling

2025-03-14 Thread Luca Vizzarro
Enable the ShellPool class to be used in the test run, and let InteractiveShells register themselves to the pool upon shell startup. Moreover, to avoid the ShellPool to call InteractiveShell.close more than once if the shell was not unregistered correctly, add a way to prevent the method to be call

[PATCH v2 3/7] dts: add shells pool

2025-03-14 Thread Luca Vizzarro
Add a new class ShellPool which acts as a management component for InteractiveShells. It pools together all the currently active shells, which are meant to be registered to the pool upon start up. This way, DTS can control the shells and make sure that these are stopped and closed correctly when th

[PATCH v2 4/7] dts: revert back to a single InteractiveShell

2025-03-14 Thread Luca Vizzarro
Previously InteractiveShell was split into two classes to differentiate a shell which execution must be controlled in a tight scope through a context manager, from a more looser approach. With the addition of the shell pool this is no longer needed as the management of shells is now delegated to th

[PATCH v2 0/7] dts: shell improvements

2025-03-14 Thread Luca Vizzarro
Hi there, sending in a v2, which should also remove the RFC status from v1, as I believe these changes are now ready as they are. v2: - rebased - added further improvements - reworked shell registration based on the recent framework improvements, e.g. context - removed multi inheritance to simp

[PATCH v2 2/7] dts: add blocking dpdk app class

2025-03-14 Thread Luca Vizzarro
Add BlockingDPDKApp class. Some non-interactive applications are blocking and run until the user interrupts them. As their main intended usage is to be kept running in the background, this class exploits InteractiveShell to spawn a dedicated shell to keep the blocking application running, while det

[PATCH] raw/cnxk_gpio: switch to character based GPIO interface

2025-03-14 Thread Tomasz Duszynski
The direct passthrough interrupt mechanism, which allowed bypassing the kernel, was obscure and is no longer supported. So this driver won't work with latest SDK kernels. Additionally, the sysfs GPIO control interface has been deprecated by Linux kernel itself. That said, this change updates the P

Re: [PATCH v3 1/3] eal: add function rte_size_to_str

2025-03-14 Thread Mattias Rönnblom
On 2025-03-13 10:09, Bruce Richardson wrote: On Wed, Mar 12, 2025 at 12:28:32PM -0700, Andre Muezerie wrote: It's common to use %' in the printf format specifier to make large numbers more easily readable by having the thousands grouped. However, this grouping does not work on Windows. Therefore

Re: [PATCH] net/intel: remove unnecessary compiler flag for mingw

2025-03-14 Thread Bruce Richardson
On Thu, Mar 13, 2025 at 11:24:43AM -0700, Andre Muezerie wrote: > On Wed, Mar 12, 2025 at 03:54:58PM +, Bruce Richardson wrote: > > There was an issue with building DPDK using mingw v8.1[1], which > > required using the "-fno-asynchronous-unwind-tables" compiler flag when > > building using the

[PATCH v2] net/ntnic: fix incorrect initializations

2025-03-14 Thread Serhii Iliushyk
Compiling without enabled RTE_ASSERT leads to an error during initialization Fix incorrect assert conditions Fixes: ff04525d90d3 ("net/ntnic: replace assert with RTE assert") Signed-off-by: Serhii Iliushyk --- v2 * Remove ifdef wrapper --- drivers/net/ntnic/adapter/nt4ga_adapter.c| 16 +

[PATCH v2] net/ntnic: fix incorrect initializations

2025-03-14 Thread Serhii Iliushyk
Compiling without enabled RTE_ASSERT leads to an error during initialization Fix incorrect assert conditions Fixes: ff04525d90d3 ("net/ntnic: replace assert with RTE assert") Signed-off-by: Serhii Iliushyk --- v2 * Remove ifdef wrapper --- drivers/net/ntnic/adapter/nt4ga_adapter.c| 16 +

Re: [PATCH v4 3/5] doc/api: add portable version of __builtin_add_overflow

2025-03-14 Thread Bruce Richardson
On Thu, Mar 13, 2025 at 01:00:41PM -0700, Andre Muezerie wrote: > __builtin_add_overflow is gcc specific. There's a need for a portable > version that can also be used with other compilers. > > Signed-off-by: Andre Muezerie > --- > doc/api/doxy-api-index.md | 1 + > 1 file changed, 1 insertion(+

Re: [PATCH v4 1/5] maintainers: add portable version of __builtin_add_overflow

2025-03-14 Thread Bruce Richardson
On Thu, Mar 13, 2025 at 01:00:39PM -0700, Andre Muezerie wrote: > __builtin_add_overflow is gcc specific. There's a need for a portable > version that can also be used with other compilers. > > Signed-off-by: Andre Muezerie > --- > MAINTAINERS | 1 + > 1 file changed, 1 insertion(+) > > diff --