Re: [PATCH 2/3] power: defer lcore variable allocation

2024-12-06 Thread Mattias Rönnblom
On 2024-12-05 18:57, David Marchand wrote: The lcore variable in this code unit is only used through rte_power_ethdev_pmgmt_queue_*() public symbols. Defer the unconditional lcore variable allocation in those symbols. Fixes: 130643319579 ("power: keep per-lcore state in lcore variable") Cc: sta

Re: [PATCH 3/3] eal/x86: defer power intrinsics variable allocation

2024-12-06 Thread Mattias Rönnblom
On 2024-12-05 18:57, David Marchand wrote: The lcore variable in this code unit is only used through rte_power_monitor*() public symbols. Defer the unconditional lcore variable allocation in those symbols. Fixes: 18b5049ab4fe ("eal/x86: keep power intrinsics state in lcore variable") Cc: sta...

RE: [PATCH v3 2/7] drivers/bus: eliminate dependency on non-portable __SIZEOF_LONG__

2024-12-06 Thread Konstantin Ananyev
> > Macro __SIZEOF_LONG__ is not standardized and MSVC does not define it. > Therefore the errors below are seen with MSVC: > > ../lib/mldev/mldev_utils_scalar.c(465): error C2065: > '__SIZEOF_LONG__': undeclared identifier > ../lib/mldev/mldev_utils_scalar.c(478): error C2051: > case

[PATCH v3 3/3] net/macb: fix logic error in macb_rxq_rearm function

2024-12-06 Thread Wencheng Li
Fixed an issue in the macb_rxq_rearm function where descriptors were incorrectly set when mbuf allocation failed, leading to abnormal behavior of the network card. Fixes: 1e3e9ebd1e37 ("net/macb: add NEON vectorized Rx/Tx") Cc: liwench...@phytium.com.cn Signed-off-by: Wencheng Li --- drivers/ne

[PATCH] net/sxe: add a basic directory structure and doc

2024-12-06 Thread Jie Liu
Add a basic directory structure and documentation for a new nic polling mode driver. Signed-off-by: Jie Liu --- MAINTAINERS | 6 app/test-pmd/meson.build| 3 ++ doc/guides/nics/features/sxe.ini| 10 ++ doc/guides/nics/features/sxe_vf

Re: GCP cloud : Virtio-PMD performance Issue

2024-12-06 Thread Maxime Coquelin
Hi Mukul, On 12/5/24 23:54, Mukul Sinha wrote: Thanks @maxime.coque...@redhat.com Have included dev@dpdk.org On Fri, Dec 6, 2024 at 2:11 AM Maxime Coquelin mailto:maxime.coque...@redhat.com>> wrote: Hi Mukul, DPDK upstream m

Re: [PATCH 1/3] random: defer seeding to EAL init

2024-12-06 Thread Mattias Rönnblom
On 2024-12-05 18:57, David Marchand wrote: The RNG is documented as being seeded as part of EAL init. /** * Seed the pseudo-random generator. * * The generator is automatically seeded by the EAL init with a timer * value. It may need to be re-seeded by the user with a real random * val

Re: [PATCH 0/3] Defer lcore variables allocation

2024-12-06 Thread Mattias Rönnblom
On 2024-12-05 18:57, David Marchand wrote: As I had reported in rc2, the lcore variables allocation have a noticeable impact on applications consuming DPDK, even when such applications does not use DPDK, or use features associated to some lcore variables. While the amount has been reduced in a r

[PATCH v3 2/3] net/macb: add NEON vectorized Rx/Tx

2024-12-06 Thread Wencheng Li
To optimize Rx/Tx burst process, add NEON vector instructions on arm architecture. Signed-off-by: Wencheng Li --- drivers/net/macb/macb_rxtx.c | 2 + drivers/net/macb/macb_rxtx_vec_neon.c | 672 ++ drivers/net/macb/meson.build | 4 + 3 files

[PATCH v2] net/mlx5: fix hypervisor detection in VLAN workaround

2024-12-06 Thread Viacheslav Ovsiienko
The mlx5 PMD provides a specific workaround for the VMware ESXi hypervisor, enabling on-demand routing configuration to virtual machines. This workaround activates when the device type is a Virtual Function and either an ESXi hypervisor is detected or the hypervisor type is unknown. For non-x86 ar

RE: [PATCH v3 2/7] drivers/bus: eliminate dependency on non-portable __SIZEOF_LONG__

2024-12-06 Thread Konstantin Ananyev
> > > Macro __SIZEOF_LONG__ is not standardized and MSVC does not define it. > > > Therefore the errors below are seen with MSVC: > > > > > > ../lib/mldev/mldev_utils_scalar.c(465): error C2065: > > > '__SIZEOF_LONG__': undeclared identifier > > > ../lib/mldev/mldev_utils_scalar.c(478): error

RE: [PATCH v3 2/7] drivers/bus: eliminate dependency on non-portable __SIZEOF_LONG__

2024-12-06 Thread Konstantin Ananyev
> -Original Message- > From: Konstantin Ananyev > Sent: Friday, December 6, 2024 4:41 PM > To: Andre Muezerie > Cc: dev@dpdk.org > Subject: RE: [PATCH v3 2/7] drivers/bus: eliminate dependency on non-portable > __SIZEOF_LONG__ > > > > > > Macro __SIZEOF_LONG__ is not standardized an

[PATCH 1/2] lib/dmadev: eliminate undefined behavior

2024-12-06 Thread Andre Muezerie
MSVC compiler issues warnings like the one below: lib\dmadev\rte_dmadev_trace_fp.h(36): warning C5101: use of preprocessor directive in function-like macro argument list is undefined behavior Indeed, looking at C99 section 6.10.3 Macro replacement, paragraph 11: "If there are sequences of

[PATCH 2/2] lib/dmadev: enable dmadev lib to be compiled with MSVC

2024-12-06 Thread Andre Muezerie
With the outstanding issues preventing dmadev from being compiled with MSVC being fixed by this series, the lib can be enabled to be compiled with MSVC. Signed-off-by: Andre Muezerie --- lib/dmadev/meson.build | 6 -- 1 file changed, 6 deletions(-) diff --git a/lib/dmadev/meson.build b/lib/

[PATCH 0/2] enable dmadev lib to be compiled with MSVC

2024-12-06 Thread Andre Muezerie
The first patch eliminates undefined behavior in the dmadev lib: lib\dmadev\rte_dmadev_trace_fp.h(36): warning C5101: use of preprocessor directive in function-like macro argument list is undefined behavior The second patch enables the dmadev library to be compiled with MSVC. Andre Mueze

Scheduled maintenance for git.dpdk.org

2024-12-06 Thread Ali Alnubani
Hello, This is to inform you about upcoming scheduled maintenance for one of the dpdk.org servers. The maintenance will start on Sunday at approximately 8:00 AM UTC and may last up to 2 hours. During the maintenance window, you may experience disruptions while accessing the following sites/ser

Re: [PATCH v3 2/7] drivers/bus: eliminate dependency on non-portable __SIZEOF_LONG__

2024-12-06 Thread Andre Muezerie
On Fri, Dec 06, 2024 at 04:41:16PM +, Konstantin Ananyev wrote: > > > > > Macro __SIZEOF_LONG__ is not standardized and MSVC does not define it. > > > > Therefore the errors below are seen with MSVC: > > > > > > > > ../lib/mldev/mldev_utils_scalar.c(465): error C2065: > > > > '__SIZEOF_LON

Re: [PATCH v3 2/7] drivers/bus: eliminate dependency on non-portable __SIZEOF_LONG__

2024-12-06 Thread Andre Muezerie
On Fri, Dec 06, 2024 at 12:22:42PM +, Konstantin Ananyev wrote: > > > > > > Macro __SIZEOF_LONG__ is not standardized and MSVC does not define it. > > Therefore the errors below are seen with MSVC: > > > > ../lib/mldev/mldev_utils_scalar.c(465): error C2065: > > '__SIZEOF_LONG__': undec

RE: [PATCH v16 1/4] lib: add generic support for reading PMU events

2024-12-06 Thread Konstantin Ananyev
> > Add support for programming PMU counters and reading their values > in runtime bypassing kernel completely. > > This is especially useful in cases where CPU cores are isolated > i.e run dedicated tasks. In such cases one cannot use standard > perf utility without sacrificing latency and pe

Re: [PATCH 0/3] Defer lcore variables allocation

2024-12-06 Thread Thomas Monjalon
06/12/2024 12:01, Mattias Rönnblom: > On 2024-12-05 18:57, David Marchand wrote: > In retrospect, maybe the offset between lcore variable instances could > have been encoded into the handle, and thus one could use > different-sized offset for different variables. Yes it would allow to allocate a

[PATCH v11 6/7] app/test: add unit tests for soring API

2024-12-06 Thread Konstantin Ananyev
Add both functional and stess test-cases for soring API. Stress test serves as both functional and performance test of soring enqueue/dequeue/acquire/release operations under high contention (for both over committed and non-over committed scenarios). Signed-off-by: Eimear Morrissey Signed-off-by:

[PATCH v11 4/7] ring: make dump function more verbose

2024-12-06 Thread Konstantin Ananyev
From: Eimear Morrissey The current rte_ring_dump function uses the generic rte_ring_headtail structure to access head/tail positions. This is incorrect for the RTS case where the head is stored in a different offset in the union of structs. Switching to a separate function for each sync type allo

[PATCH v11 5/7] ring/soring: introduce Staged Ordered Ring

2024-12-06 Thread Konstantin Ananyev
Staged-Ordered-Ring (SORING) provides a SW abstraction for 'ordered' queues with multiple processing 'stages'. It is based on conventional DPDK rte_ring, re-uses many of its concepts, and even substantial part of its code. It can be viewed as an 'extension' of rte_ring functionality. In particular,

[PATCH v11 2/7] ring: common functions for 'move head' ops

2024-12-06 Thread Konstantin Ananyev
Note upfront: that change doesn't introduce any functional or performance changes. It is just a code-reordering for: - code deduplication - ability in future to re-use the same code to introduce new functionality For each sync mode corresponding move_prod_head() and move_cons_head() are nearly i

[PATCH v11 3/7] ring: make copying functions generic

2024-12-06 Thread Konstantin Ananyev
Note upfront: that change doesn't introduce any functional or performance changes. It is just a code-reordering for: - improve code modularity and re-usability - ability in future to re-use the same code to introduce new functionality There is no real need for enqueue_elems()/dequeue_elems() to

[PATCH v11 0/7] Stage-Ordered API and other extensions for ring library

2024-12-06 Thread Konstantin Ananyev
Testing coverage (passed): x86_64, i686, PPC, ARM Would like to express my gratitude to all community members who helped with testing it on different platforms, in particular: David Christensen Cody Cheng Patrick Robb Phanendra Vukkisala Chengwen Feng v10 - v11 - rebased on top of 25.03-r

[PATCH v11 1/7] test/ring: fix failure with custom number of lcores

2024-12-06 Thread Konstantin Ananyev
ring_stress_autotest fails to initialize the ring when RTE_MAX_LCORE value is not a number of 2. There is a flaw in calculation required number of elements in the ring. Fix it by aligning number of elements to next power of 2. Fixes: bf28df24e915 ("test/ring: add contention stress test") Cc: sta..

[PATCH v11 7/7] test: add stress test suite

2024-12-06 Thread Konstantin Ananyev
Add a new test suite which purpose is to run 'stress' tests: main purpose is put a pressure to dpdk sync algorithms to flag their misbehaving/slowdown/etc. Right now it consists from just 2 test-cases: meson test --suite stress-tests --list DPDK:stress-tests / ring_stress_autotest DPDK:stress-tests