Minutes of Technical Board meeting 20-March-2024

2024-03-27 Thread Stephen Hemminger
Members Attending = Aaron Conole Bruce Richardson Hemant Agrawal Jerin Jacob Kevin Traynor Konstantin Ananyev Maxime Coquelin Morten Brørup Stephen Hemminger (chair) Thomas Monjalon NOTE The technical board meetings are on every second Wednesday at 3 pm UTC. Meetings are publi

[PATCH v17 15/15] log: colorize log output

2024-03-27 Thread Stephen Hemminger
Like dmesg, colorize the log output (unless redirected to file). Timestamp is green, the subsystem is in yellow and the message is red if urgent, boldface if an error, and normal for info and debug messages. Signed-off-by: Stephen Hemminger --- app/test/test_eal_flags.c | 24 doc

[PATCH v17 14/15] log: add support for systemd journal

2024-03-27 Thread Stephen Hemminger
If DPDK application is being run as a systemd service, then it can use the journal protocol which allows putting more information in the log such as priority and other information. The use of journal protocol is automatically detected and handled. Rather than having a dependency on libsystemd, ju

[PATCH v17 13/15] log: add optional support of syslog

2024-03-27 Thread Stephen Hemminger
Log to syslog only if option is specified. And if syslog is used then normally only log to syslog, don't duplicate output. Also enables syslog support on FreeBSD. Signed-off-by: Stephen Hemminger --- app/test/test_eal_flags.c | 5 +- doc/guides/linux_gsg/linux_eal_parameter

[PATCH v17 12/15] log: add timestamp option

2024-03-27 Thread Stephen Hemminger
When debugging driver or startup issues, it is useful to have a timestamp on each message printed. The messages in syslog already have a timestamp, but often syslog is not available during testing. There are multiple timestamp formats similar to Linux dmesg. The default is time relative since star

[PATCH v17 11/15] log: add hook for printing log messages

2024-03-27 Thread Stephen Hemminger
This is useful for when decorating log output for console or journal. Provide basic version in this patch. Signed-off-by: Stephen Hemminger --- lib/log/log.c | 17 - 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/lib/log/log.c b/lib/log/log.c index f597da2e39..acd4

[PATCH v17 10/15] log: drop syslog support, and make code common

2024-03-27 Thread Stephen Hemminger
This patch makes the log setup code common across all platforms. Drops syslog support for now, will come back in later patch. Signed-off-by: Stephen Hemminger --- app/test/test_eal_flags.c | 11 ++- lib/eal/common/eal_common_options.c | 3 - lib/log/log.c | 2

[PATCH v17 09/15] eal: initialize log before everything else

2024-03-27 Thread Stephen Hemminger
In order for all log messages (including CPU mismatch) to come out through the logging library, it must be initialized as early in rte_eal_init() as possible on all platforms. Where it was done before was likely historical based on the support of non-OS isolated CPU's which required a shared memor

[PATCH v17 08/15] log: move handling of syslog facility out of eal

2024-03-27 Thread Stephen Hemminger
The syslog facility property is better handled in lib/log rather than in eal. This also allows for changes to what syslog flag means in later steps. Signed-off-by: Stephen Hemminger --- lib/eal/common/eal_common_options.c | 51 ++--- lib/eal/freebsd/eal.c |

[PATCH v17 07/15] eal: change rte_exit() output to match rte_log()

2024-03-27 Thread Stephen Hemminger
The rte_exit() output format confuses the timestamp and coloring options. Change it to use be a single line with proper prefix. Before: [ 0.006481] EAL: Error - exiting with code: 1 Cause: [ 0.006489] Cannot init EAL: Permission denied After: [ 0.006238] EAL: Error - exiting with co

[PATCH v17 06/15] eal: do not duplicate rte_init_alert() messages

2024-03-27 Thread Stephen Hemminger
The message already goes through logging, and does not need to be printed on stderr. Message level should be ALERT to match function name. Signed-off-by: Stephen Hemminger --- lib/eal/freebsd/eal.c | 3 +-- lib/eal/linux/eal.c | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --g

[PATCH v17 05/15] eal: make eal_log_level_parse common

2024-03-27 Thread Stephen Hemminger
The code to parse for log-level option should be same on all OS variants. Signed-off-by: Stephen Hemminger --- lib/eal/common/eal_common_options.c | 46 + lib/eal/common/eal_options.h| 1 + lib/eal/freebsd/eal.c | 42 --

[PATCH v17 04/15] windows: common wrapper for vasprintf and asprintf

2024-03-27 Thread Stephen Hemminger
Replace the windows version of asprintf() that was only usable in eal. With a more generic one that supports both vasprintf() and asprintf(). This also eliminates duplicate code. Fixes: 8f4de2dba9b9 ("bus/pci: fill bus specific information") Fixes: 9ec521006db0 ("eal/windows: hide asprintf shim")

[PATCH v17 03/15] windows: add os shim for localtime_r

2024-03-27 Thread Stephen Hemminger
Windows does not have localtime_r but it does have a similar function that can be used instead. Signed-off-by: Stephen Hemminger --- lib/eal/windows/include/rte_os_shim.h | 10 ++ 1 file changed, 10 insertions(+) diff --git a/lib/eal/windows/include/rte_os_shim.h b/lib/eal/windows/incl

[PATCH v17 02/15] windows: make getopt functions have const properties

2024-03-27 Thread Stephen Hemminger
Having different prototypes on different platforms can lead to lots of unnecessary workarounds. Looks like the version of getopt used from windows was based on an older out of date version from FreeBSD. This patch changes getopt, getopt_long, etc to have the same const attributes as Linux and Fre

[PATCH v17 01/15] maintainers: add for log library

2024-03-27 Thread Stephen Hemminger
"You touch it you own it" Add myself as maintainer for log library. Signed-off-by: Stephen Hemminger --- MAINTAINERS | 1 + 1 file changed, 1 insertion(+) diff --git a/MAINTAINERS b/MAINTAINERS index 7abb3aee49..54c28a601d 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -180,6 +180,7 @@ F: app/te

[PATCH v17 00/15] Logging unification and improvements

2024-03-27 Thread Stephen Hemminger
Improvements and unification of logging library (for 24.07 release). This version works on all platforms: Linux, Windows and FreeBSD. This is update to rework patch set. It adds several new features to the console log output. * Putting a timestamp on console output which is useful for analy

[PATCH v2 15/15] examples: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing when building with MSVC. Remove __rte_packed where it appears natural alignment without packing would produce the same layout or the struct is internal. Signed-off-by: Tyler Retzlaff --- examples/common/neon/port_group.h |

[PATCH v2 11/15] net/mlx5: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing when building with MSVC. Signed-off-by: Tyler Retzlaff --- drivers/net/mlx5/hws/mlx5dr.h | 1 + drivers/net/mlx5/mlx5.h | 1 + drivers/net/mlx5/mlx5_flow.h| 5 + drivers/net/mlx5/mlx5_hws_cnt.h | 1 + drive

[PATCH v2 14/15] app/test: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing when building with MSVC. Signed-off-by: Tyler Retzlaff --- app/test/test_efd.c| 1 + app/test/test_hash.c | 1 + app/test/test_member.c | 1 + 3 files changed, 3 insertions(+) diff --git a/app/test/test_efd.c b/app/te

[PATCH v2 09/15] net/iavf: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing when building with MSVC. Remove __rte_packed where it appears natural alignment without packing would produce the same layout or the struct is internal. Signed-off-by: Tyler Retzlaff --- drivers/net/iavf/iavf_ipsec_crypto.h

[PATCH v2 08/15] net/i40e: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing when building with MSVC. Signed-off-by: Tyler Retzlaff --- drivers/net/i40e/base/i40e_osdep.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/i40e/base/i40e_osdep.h b/drivers/net/i40e/base/i40e_osdep.h ind

[PATCH v2 13/15] app/testpmd: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing when building with MSVC. Remove __rte_packed where it appears natural alignment without packing would produce the same layout or the struct is internal. Signed-off-by: Tyler Retzlaff --- app/test-pmd/csumonly.c | 2 +- 1 fi

[PATCH v2 12/15] net/octeon_ep: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing when building with MSVC. Signed-off-by: Tyler Retzlaff --- drivers/net/octeon_ep/otx_ep_mbox.h | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/octeon_ep/otx_ep_mbox.h b/drivers/net/octeon_ep/otx_ep_mbox.h in

[PATCH v2 06/15] common/mlx5: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing when building with MSVC. Signed-off-by: Tyler Retzlaff --- drivers/common/mlx5/mlx5_common_mr.h| 4 drivers/common/mlx5/mlx5_common_utils.h | 1 + drivers/common/mlx5/mlx5_prm.h | 28 +

[PATCH v2 10/15] net/ice: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing when building with MSVC. Signed-off-by: Tyler Retzlaff --- drivers/net/ice/base/ice_osdep.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/ice/base/ice_osdep.h b/drivers/net/ice/base/ice_osdep.h index 0e14

[PATCH v2 07/15] dma/ioat: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing when building with MSVC. Signed-off-by: Tyler Retzlaff --- drivers/dma/ioat/ioat_hw_defs.h | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/dma/ioat/ioat_hw_defs.h b/drivers/dma/ioat/ioat_hw_defs.h index dc3493a..

[PATCH v2 05/15] common/idpf: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing when building with MSVC. Signed-off-by: Tyler Retzlaff --- drivers/common/idpf/base/idpf_osdep.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/common/idpf/base/idpf_osdep.h b/drivers/common/idpf/base/idpf_os

[PATCH v2 04/15] common/iavf: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing when building with MSVC. Signed-off-by: Tyler Retzlaff --- drivers/common/iavf/iavf_osdep.h| 2 ++ drivers/common/iavf/virtchnl_inline_ipsec.h | 11 +++ 2 files changed, 13 insertions(+) diff --git a/dr

[PATCH v2 03/15] net: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing when building with MSVC. Signed-off-by: Tyler Retzlaff --- lib/net/rte_arp.h | 2 ++ lib/net/rte_dtls.h | 1 + lib/net/rte_esp.h | 2 ++ lib/net/rte_ether.h| 1 + lib/net/rte_geneve.h | 1 + lib/net/rte_g

[PATCH v2 02/15] eal: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
Add __rte_msvc_pack to all __rte_packed structs to cause packing when building with MSVC. Remove __rte_packed where it appears natural alignment without packing would produce the same layout or the struct is internal. Signed-off-by: Tyler Retzlaff --- lib/eal/common/eal_private.h | 2 +- l

[PATCH v2 01/15] eal: provide pack start macro for MSVC

2024-03-27 Thread Tyler Retzlaff
MSVC struct packing is not compatible with GCC provide a macro that can be used to push existing pack value and sets packing to 1-byte. The existing __rte_packed macro is then used to restore the pack value prior to the push. Instead of providing macros exclusively for MSVC and for GCC the existin

[PATCH v2 00/15] fix packing of structs when building with MSVC

2024-03-27 Thread Tyler Retzlaff
MSVC struct packing is not compatible with GCC provide a macro that can be used to push existing pack value and sets packing to 1-byte. The existing __rte_packed macro is then used to restore the pack value prior to the push. Instead of providing macros exclusively for MSVC and for GCC the existin

Re: [PATCH 07/15] dma/ioat: pack structures when building with MSVC

2024-03-27 Thread Tyler Retzlaff
On Thu, Mar 21, 2024 at 04:13:32PM +, Bruce Richardson wrote: > On Wed, Mar 20, 2024 at 02:06:03PM -0700, Tyler Retzlaff wrote: > > Add __rte_msvc_pushpack(1) to all __rte_packed structs to cause packing > > when building with MSVC. > > > > Signed-off-by: Tyler Retzlaff > > --- > > drivers/d

[PATCH v3 45/45] app/test-bbdev: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- app/test-bbdev/test_bbdev_perf.c | 183 +++ 1 file changed, 110 insertions(+), 7

[PATCH v3 44/45] app/test-compress-perf: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- app/test-compress-perf/comp_perf_test_common.h | 2 +- app/test-compress-perf/comp_perf_test_cyclecount.c | 4

[PATCH v3 43/45] app/test-crypto-perf: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- app/test-crypto-perf/cperf_test_latency.c| 6 +++--- app/test-crypto-perf/cperf_test_pmd_cyclecount.c | 10

[PATCH v3 42/45] app/test-eventdev: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- app/test-eventdev/test_order_atq.c| 4 ++-- app/test-eventdev/test_order_common.c | 5 +++-- app/test-eventdev/t

[PATCH v3 41/45] app/test: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- app/test/test_bpf.c| 46 - app/test/test_distributor.c| 114 +++

[PATCH v3 40/45] app/dumpcap: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- app/dumpcap/main.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/app/dumpcap/main

[PATCH v3 38/45] bus/vmbus: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/bus/vmbus/rte_vmbus_reg.h | 2 +- drivers/bus/vmbus/vmbus_channel.c | 8 2 files changed, 5 inserti

[PATCH v3 39/45] examples: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- examples/bbdev_app/main.c | 13 + examples/l2fwd-event/l2fwd_common.h

[PATCH v3 37/45] common/cpt: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/common/cpt/cpt_common.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/common/c

[PATCH v3 36/45] crypto/ccp: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/crypto/ccp/ccp_dev.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/cry

[PATCH v3 35/45] dma/idxd: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/dma/idxd/idxd_internal.h | 2 +- drivers/dma/idxd/idxd_pci.c | 9 + 2 files changed, 6 insertio

[PATCH v3 34/45] event/dlb2: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/event/dlb2/dlb2.c| 34 +- drivers/event/dlb2/dlb2_priv.h | 15

[PATCH v3 33/45] net/null: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/null/rte_eth_null.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dri

[PATCH v3 32/45] net/txgbe: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/txgbe/txgbe_ethdev.c| 12 +++- drivers/net/txgbe/txgbe_ethdev.h| 2 +- drivers/net/txgb

[PATCH v3 31/45] baseband/acc: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/baseband/acc/rte_acc100_pmd.c | 36 +-- drivers/baseband/acc/rte_vrb_pmd.c| 46 +

[PATCH v3 30/45] common/iavf: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/common/iavf/iavf_impl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/comm

[PATCH v3 29/45] common/idpf: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/common/idpf/idpf_common_device.h | 6 +++--- drivers/common/idpf/idpf_common_rxtx.c| 14 ++

[PATCH v3 28/45] common/mlx5: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/common/mlx5/linux/mlx5_nl.c | 5 +-- drivers/common/mlx5/mlx5_common.h | 2 +- drivers/common/ml

[PATCH v3 27/45] crypto/octeontx: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/crypto/octeontx/otx_cryptodev_ops.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/

[PATCH v3 26/45] dma/skeleton: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/dma/skeleton/skeleton_dmadev.c | 5 +++-- drivers/dma/skeleton/skeleton_dmadev.h | 2 +- 2 files changed, 4

[PATCH v3 25/45] event/dsw: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger Reviewed-by: Mattias Rönnblom --- drivers/event/dsw/dsw_evdev.h | 6 +++--- drivers/event/dsw/dsw_event.c | 47 +

[PATCH v3 24/45] event/octeontx: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/event/octeontx/timvf_evdev.h | 8 drivers/event/octeontx/timvf_worker.h | 36 +---

[PATCH v3 23/45] event/opdl: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/event/opdl/opdl_ring.c | 80 +- 1 file changed, 40 insertions(+), 40

[PATCH v3 22/45] raw/ifpga: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/raw/ifpga/ifpga_rawdev.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/driver

[PATCH v3 21/45] vdpa/mlx5: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/vdpa/mlx5/mlx5_vdpa.c | 24 +- drivers/vdpa/mlx5/mlx5_vdpa.h | 14 +-

[PATCH v3 20/45] net/ring: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/ring/rte_eth_ring.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/

[PATCH v3 19/45] net/qede: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/qede/base/bcm_osal.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/n

[PATCH v3 18/45] net/idpf: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/idpf/idpf_ethdev.c | 7 --- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/ne

[PATCH v3 17/45] net/hinic: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/hinic/hinic_pmd_rx.c | 2 +- drivers/net/hinic/hinic_pmd_rx.h | 2 +- 2 files changed, 2 insertions(+),

[PATCH v3 16/45] net/virtio: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/virtio/virtio_ring.h | 4 +-- drivers/net/virtio/virtio_user/virtio_user_dev.c | 12 +++

[PATCH v3 15/45] net/thunderx: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/thunderx/nicvf_rxtx.c | 9 + drivers/net/thunderx/nicvf_struct.h | 4 ++-- 2 files changed, 7

[PATCH v3 14/45] net/memif: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/memif/memif.h | 4 ++-- drivers/net/memif/rte_eth_memif.c | 50 +++-

[PATCH v3 12/45] net/cxgbe: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/cxgbe/clip_tbl.c | 12 ++-- drivers/net/cxgbe/clip_tbl.h | 2 +- drivers/net/cxgbe/cxgbe_ma

[PATCH v3 13/45] net/gve: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/gve/base/gve_osdep.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net

[PATCH v3 11/45] net/octeontx: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/octeontx/octeontx_ethdev.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/d

[PATCH v3 09/45] net/af_xdp: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/af_xdp/rte_eth_af_xdp.c | 20 +++- 1 file changed, 11 insertions(+), 9 deletions(-) dif

[PATCH v3 10/45] net/octeon_ep: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/octeon_ep/cnxk_ep_rx.h| 5 +++-- drivers/net/octeon_ep/cnxk_ep_tx.c| 5 +++-- drivers/net/octeon

[PATCH v3 08/45] net/cpfl: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/cpfl/cpfl_ethdev.c | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/n

[PATCH v3 07/45] net/bnxt: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/bnxt/bnxt_cpr.h | 4 ++-- drivers/net/bnxt/bnxt_rxq.h | 2 +- drivers/net/bnxt/bnx

[PATCH v3 06/45] net/hns3: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/hns3/hns3_cmd.c | 18 ++-- drivers/net/hns3/hns3_dcb.c | 2 +- drivers/net/hns3/hns

[PATCH v3 05/45] net/i40e: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/i40e/i40e_ethdev.c| 4 ++-- drivers/net/i40e/i40e_rxtx.c | 6 +++--- drivers/net/i40e/i

[PATCH v3 03/45] net/iavf: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/iavf/iavf.h | 16 drivers/net/iavf/iavf_rxtx.c | 4 ++-- driver

[PATCH v3 04/45] net/ice: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/ice/base/ice_osdep.h | 4 ++-- drivers/net/ice/ice_dcf.c| 6 +++--- drivers/net/ice/ice_dcf.h

[PATCH v3 01/45] net/mlx5: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/mlx5/linux/mlx5_ethdev_os.c | 6 +- drivers/net/mlx5/linux/mlx5_verbs.c | 9 ++- drivers/net/mlx

[PATCH v3 02/45] net/ixgbe: use rte stdatomic API

2024-03-27 Thread Tyler Retzlaff
Replace the use of gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx optional rte stdatomic API. Signed-off-by: Tyler Retzlaff Acked-by: Stephen Hemminger --- drivers/net/ixgbe/ixgbe_ethdev.c | 14 -- drivers/net/ixgbe/ixgbe_ethdev.h | 2 +- drivers/net/ixgbe/ix

[PATCH v3 00/45] use stdatomic API

2024-03-27 Thread Tyler Retzlaff
This series converts all non-generic built atomics to use the rte_atomic macros that allow optional enablement of standard C11 atomics. Use of generic atomics for non-scalar types are not converted in this change and will be evaluated as a part of a separate series. Note if this series ends up re

Re: [PATCH v1] net/ice: updated 24.03 recommended matching list

2024-03-27 Thread Thomas Monjalon
27/03/2024 09:21, Mcnamara, John: > > > Subject: [PATCH v1] net/ice: updated 24.03 recommended matching list > > > Acked-by: John McNamara Applied and squashed with i40e one.

Re: [PATCH v1] net/i40e: updated 24.03 recommended matching list

2024-03-27 Thread Thomas Monjalon
27/03/2024 09:21, Mcnamara, John: > > > Subject: [PATCH v1] net/i40e: updated 24.03 recommended matching list > > Acked-by: John McNamara Applied and squashed with ice one.

Re: [PATCH] doc: clarify ipsec-secgw documentation on TSO

2024-03-27 Thread Thomas Monjalon
27/03/2024 12:10, Mcnamara, John: > > From: Medvedkin, Vladimir > > Updated ipsec-secgw user guide to reflect that ipsec-secgw only supports > > TSO for TCP/IP at this time. > > Acked-by: John McNamara Applied, thanks.

Re: [PATCH v7 3/4] security: remove rte marker fields

2024-03-27 Thread Tyler Retzlaff
On Tue, Mar 26, 2024 at 11:28:21AM +0100, Morten Brørup wrote: > > From: Tyler Retzlaff [mailto:roret...@linux.microsoft.com] > > Sent: Wednesday, 20 March 2024 23.02 > > > > RTE_MARKER typedefs are a GCC extension unsupported by MSVC. Remove > > RTE_MARKER fields from rte_mbuf struct. > > > > Ma

[PATCH v8 3/4] security: remove rte marker fields

2024-03-27 Thread Tyler Retzlaff
RTE_MARKER typedefs are a GCC extension unsupported by MSVC. Remove RTE_MARKER fields from rte_mbuf struct. Maintain alignment of fields after removed cacheline1 marker by placing C11 alignas(RTE_CACHE_LINE_MIN_SIZE). Signed-off-by: Tyler Retzlaff Reviewed-by: Morten Brørup --- doc/guides/rel_

[PATCH v8 4/4] cryptodev: remove rte marker fields

2024-03-27 Thread Tyler Retzlaff
RTE_MARKER typedefs are a GCC extension unsupported by MSVC. Remove RTE_MARKER fields from rte_mbuf struct. Maintain alignment of fields after removed cacheline1 marker by placing C11 alignas(RTE_CACHE_LINE_MIN_SIZE). Signed-off-by: Tyler Retzlaff Reviewed-by: Morten Brørup --- doc/guides/rel_

[PATCH v8 2/4] mbuf: remove rte marker fields

2024-03-27 Thread Tyler Retzlaff
RTE_MARKER typedefs are a GCC extension unsupported by MSVC. Remove RTE_MARKER fields from rte_mbuf struct. Maintain alignment of fields after removed cacheline1 marker by placing C11 alignas(RTE_CACHE_LINE_MIN_SIZE). Provide new rearm_data and rx_descriptor_fields1 fields in anonymous unions as

[PATCH v8 0/4] remove use of RTE_MARKER fields in libraries

2024-03-27 Thread Tyler Retzlaff
As per techboard meeting 2024/03/20 adopt hybrid proposal of adapting descriptor fields and removing cachline fields. RTE_MARKER typedefs are a GCC extension unsupported by MSVC. Remove RTE_MARKER fields. For cacheline{0,1} fields remove fields entirely and use inline functions to prefetch. Prov

[PATCH v8 1/4] net/i40e: use inline prefetch function

2024-03-27 Thread Tyler Retzlaff
Don't directly access the cacheline1 field in rte_mbuf struct for prefetch instead just use rte_mbuf_prefetch_part2() to prefetch. Signed-off-by: Tyler Retzlaff Reviewed-by: Morten Brørup --- drivers/net/i40e/i40e_rxtx_vec_avx512.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --g

RE: [PATCH v7 1/4] net/i40e: use inline prefetch function

2024-03-27 Thread Morten Brørup
> From: Tyler Retzlaff [mailto:roret...@linux.microsoft.com] > Sent: Wednesday, 27 March 2024 19.15 > > On Tue, Mar 26, 2024 at 11:16:10AM +0100, Morten Brørup wrote: > > > From: Tyler Retzlaff [mailto:roret...@linux.microsoft.com] > > > Sent: Wednesday, 20 March 2024 23.02 > > > > > > Don't direc

[PATCH] net/ice: fix vlan stripping in double VLAN mode

2024-03-27 Thread Vladimir Medvedkin
The ICE hardware can operate in two modes - single vlan mode or double vlan mode. Depending on the operating mode the hardware handles vlan header with single vlan tag differently. When double vlan enabled, a packet with a single VLAN is treated as a packet with outer VLAN only. Otherwise, a single

Re: [PATCH v7 1/4] net/i40e: use inline prefetch function

2024-03-27 Thread Tyler Retzlaff
On Tue, Mar 26, 2024 at 11:16:10AM +0100, Morten Brørup wrote: > > From: Tyler Retzlaff [mailto:roret...@linux.microsoft.com] > > Sent: Wednesday, 20 March 2024 23.02 > > > > Don't directly access the cacheline1 field in rte_mbuf struct for > > prefetch instead just use rte_mbuf_prefetch_part2() t

Re: [PATCH v16 03/15] windows: add os shim for localtime_r

2024-03-27 Thread Stephen Hemminger
On Wed, 27 Mar 2024 09:56:59 -0700 Tyler Retzlaff wrote: > On Wed, Mar 27, 2024 at 09:45:21AM -0700, Stephen Hemminger wrote: > > Windows does not have localtime_r but it does have a similar > > function that can be used instead. > > > > Signed-off-by: Stephen Hemminger > > --- > > lib/eal/win

Re: [PATCH v16 09/15] eal: initialize log before everything else

2024-03-27 Thread Tyler Retzlaff
On Wed, Mar 27, 2024 at 09:45:27AM -0700, Stephen Hemminger wrote: > In order for all log messages (including CPU mismatch) to > come out through the logging library, it must be initialized > as early in rte_eal_init() as possible on all platforms. > > Where it was done before was likely historica

Re: [PATCH v16 07/15] eal: change rte_exit() output to match rte_log()

2024-03-27 Thread Tyler Retzlaff
On Wed, Mar 27, 2024 at 09:45:25AM -0700, Stephen Hemminger wrote: > The rte_exit() output format confuses the timestamp and coloring > options. Change it to use be a single line with proper prefix. > > Before: > [ 0.006481] EAL: Error - exiting with code: 1 > Cause: [ 0.006489] Cannot i

Re: [PATCH v16 06/15] eal: do not duplicate rte_init_alert() messages

2024-03-27 Thread Tyler Retzlaff
On Wed, Mar 27, 2024 at 09:45:24AM -0700, Stephen Hemminger wrote: > The message already goes through logging, and does not need > to be printed on stderr. Message level should be ALERT > to match function name. > > Signed-off-by: Stephen Hemminger > --- Acked-by: Tyler Retzlaff

Re: [PATCH v16 05/15] eal: make eal_log_level_parse common

2024-03-27 Thread Tyler Retzlaff
On Wed, Mar 27, 2024 at 09:45:23AM -0700, Stephen Hemminger wrote: > The code to parse for log-level option should be same on > all OS variants. > > Signed-off-by: Stephen Hemminger > --- Acked-by: Tyler Retzlaff

Re: [PATCH v16 04/15] windows: common wrapper for vasprintf and asprintf

2024-03-27 Thread Tyler Retzlaff
On Wed, Mar 27, 2024 at 09:45:22AM -0700, Stephen Hemminger wrote: > Replace the windows version of asprintf() that was only usable > in eal. With a more generic one that supports both vasprintf() > and asprintf(). This also eliminates duplicate code. > > Fixes: 8f4de2dba9b9 ("bus/pci: fill bus s

Re: [PATCH v16 03/15] windows: add os shim for localtime_r

2024-03-27 Thread Tyler Retzlaff
On Wed, Mar 27, 2024 at 09:45:21AM -0700, Stephen Hemminger wrote: > Windows does not have localtime_r but it does have a similar > function that can be used instead. > > Signed-off-by: Stephen Hemminger > --- > lib/eal/windows/include/rte_os_shim.h | 10 ++ > 1 file changed, 10 insertio

Re: [PATCH v16 01/15] maintainers: add for log library

2024-03-27 Thread Tyler Retzlaff
On Wed, Mar 27, 2024 at 09:45:19AM -0700, Stephen Hemminger wrote: > "You touch it you own it" > Add myself as maintainer for log library. > > Signed-off-by: Stephen Hemminger > --- Acked-by: Tyler Retzlaff

  1   2   >