Re: [PATCH 1/3] net/hns3: fix simple Tx path incorrect free the mbuf

2025-01-08 Thread huangdengdui
On 2025/1/9 0:57, Stephen Hemminger wrote: > On Wed, 8 Jan 2025 10:40:43 +0800 > Jie Hai wrote: > >> On 2024/12/31 1:55, Stephen Hemminger wrote: >>> On Mon, 30 Dec 2024 14:54:03 +0800 >>> Jie Hai wrote: >>> From: Jie Hai To: , , , , , Chengwen Feng , "Wei Hu (Xavie

RE: [EXTERNAL] Re: [PATCH] net/tap: fix compilation issues if HAVE_TCA_FLOWER is missing

2025-01-08 Thread Tomasz Duszynski
>> From: Tomasz Duszynski >> To: , Stephen Hemminger , >"Pascal Mazon" >> CC: , Tomasz Duszynski >> Subject: [PATCH] net/tap: fix compilation issues if HAVE_TCA_FLOWER is >> missing >> Date: Wed, 8 Jan 2025 13:10:11 +0100 >> X-Mailer: git-send-email 2.34.1 >> >> If HAVE_TCA_FLOWER is undefined

[PATCH 15/15] net/ngbe: add some ops which PF has implemented

2025-01-08 Thread Zaiyu Wang
Some RXTX operations like queue setup and release, packet type get, and Tx done cleanup have been supported on PF device. There are ops functions directly added. Signed-off-by: Zaiyu Wang --- doc/guides/nics/features/ngbe_vf.ini | 3 +++ drivers/net/ngbe/ngbe_ethdev_vf.c| 5 + 2 files ch

[PATCH 13/15] net/ngbe: add multicast MAC filter ops for VF device

2025-01-08 Thread Zaiyu Wang
Add support to update multicast MAC filter. Signed-off-by: Zaiyu Wang --- doc/guides/nics/features/ngbe_vf.ini | 1 + drivers/net/ngbe/base/ngbe_vf.c | 81 drivers/net/ngbe/base/ngbe_vf.h | 3 ++ 3 files changed, 85 insertions(+) diff --git a/doc/guides/

[PATCH 14/15] net/ngbe: add dump registers ops for VF device

2025-01-08 Thread Zaiyu Wang
Add support to dump registers for VF device. Currently we only support a small number of registers. More registers will be added as needed. Signed-off-by: Zaiyu Wang --- doc/guides/nics/features/ngbe_vf.ini | 1 + drivers/net/ngbe/ngbe_ethdev_vf.c| 73 2 files c

[PATCH 12/15] net/ngbe: add start/stop/reset/close ops for VF device

2025-01-08 Thread Zaiyu Wang
Add the complete configuration process for start/stop/reset/close ops, so that applications can enable the device correctly. Signed-off-by: Zaiyu Wang --- drivers/net/ngbe/ngbe_ethdev_vf.c | 170 +- 1 file changed, 169 insertions(+), 1 deletion(-) diff --git a/driver

[PATCH 10/15] net/ngbe: add link update ops for VF device

2025-01-08 Thread Zaiyu Wang
Add support to check link feature for VF device, including link speed, duplex mode and link state. Signed-off-by: Zaiyu Wang --- doc/guides/nics/features/ngbe_vf.ini | 1 + drivers/net/ngbe/base/ngbe_vf.c | 96 drivers/net/ngbe/base/ngbe_vf.h | 2 + drive

[PATCH 08/15] net/ngbe: add vlan related ops for VF device

2025-01-08 Thread Zaiyu Wang
Add support for VLAN filter, offload and strip set feature. Signed-off-by: Zaiyu Wang --- doc/guides/nics/features/ngbe_vf.ini | 1 + drivers/net/ngbe/base/ngbe_vf.c | 32 +++- drivers/net/ngbe/base/ngbe_vf.h | 2 + drivers/net/ngbe/ngbe_ethdev_vf.c| 113 ++

[PATCH 11/15] net/ngbe: add stats and xstats ops for VF device

2025-01-08 Thread Zaiyu Wang
Add support to get stats and extended stats by reading hardware registers Signed-off-by: Zaiyu Wang --- doc/guides/nics/features/ngbe_vf.ini | 2 + drivers/net/ngbe/base/ngbe_vf.h | 32 +++ drivers/net/ngbe/ngbe_ethdev_vf.c| 137 +++ 3 files changed, 171 i

[PATCH 09/15] net/ngbe: add interrupt support for VF device

2025-01-08 Thread Zaiyu Wang
Add VF device interrupt handler, support to enable and disable RX queue interrupt, and configure misx interrupt. Signed-off-by: Zaiyu Wang --- doc/guides/nics/features/ngbe_vf.ini | 1 + drivers/net/ngbe/ngbe_ethdev_vf.c| 225 +++ 2 files changed, 226 insertions(+)

[PATCH 06/15] net/ngbe: add add/remove/set mac addr ops for VF device

2025-01-08 Thread Zaiyu Wang
Generate a random MAC address if none was assigned by PF during the initialization of VF device. And support to add and remove MAC address. --- doc/guides/nics/features/ngbe_vf.ini | 1 + drivers/net/ngbe/base/ngbe_type.h| 1 + drivers/net/ngbe/base/ngbe_vf.c | 82 +++ dr

[PATCH 07/15] net/ngbe: add datapath init code for VF device

2025-01-08 Thread Zaiyu Wang
Add support for datapath init, including RX and TX unit init. Signed-off-by: Zaiyu Wang --- doc/guides/nics/features/ngbe_vf.ini | 6 + drivers/net/ngbe/ngbe_ethdev.h | 6 + drivers/net/ngbe/ngbe_ethdev_vf.c| 63 drivers/net/ngbe/ngbe_rxtx.c | 210

[PATCH 05/15] net/ngbe: add set MTU ops for VF device

2025-01-08 Thread Zaiyu Wang
Support to update MTU for VF device. Signed-off-by: Zaiyu Wang --- doc/guides/nics/features/ngbe_vf.ini | 1 + drivers/net/ngbe/base/ngbe_type.h| 1 + drivers/net/ngbe/base/ngbe_vf.c | 24 +++ drivers/net/ngbe/base/ngbe_vf.h | 1 + drivers/net/ngbe/ngbe_ethdev_vf

[PATCH 04/15] net/ngbe: add promiscuous and allmulticast ops for VF device

2025-01-08 Thread Zaiyu Wang
Support to enable and disable promiscuous and allmulticast mode on VF device. Signed-off-by: Zaiyu Wang --- doc/guides/nics/features/ngbe_vf.ini | 2 + drivers/net/ngbe/base/ngbe_type.h| 1 + drivers/net/ngbe/base/ngbe_vf.c | 39 +++ drivers/net/ngbe/base/ngbe_vf.h | 1 +

[PATCH 03/15] net/ngbe: add hardware configuration code for VF device

2025-01-08 Thread Zaiyu Wang
Add basic hardware configure flow and device information statement. Signed-off-by: Zaiyu Wang --- doc/guides/nics/features/ngbe_vf.ini | 7 + drivers/net/ngbe/base/ngbe_mbx.h | 2 + drivers/net/ngbe/base/ngbe_type.h| 5 + drivers/net/ngbe/base/ngbe_vf.c | 235 +

[PATCH 02/15] net/ngbe: add support for PF-VF mailbox interface

2025-01-08 Thread Zaiyu Wang
Add basic code to serve the communication between VF and PF devices. Signed-off-by: Zaiyu Wang --- drivers/net/ngbe/base/ngbe_mbx.c | 338 ++ drivers/net/ngbe/base/ngbe_mbx.h | 29 +++ drivers/net/ngbe/base/ngbe_type.h | 7 + drivers/net/ngbe/base/ngbe_vf.c |

[PATCH 01/15] net/ngbe: add ethdev probe and remove for VF device

2025-01-08 Thread Zaiyu Wang
Introduce virtual function driver in ngbe PMD, add simple init and uninit function to probe and remove the device. With this single patch, app/dpdk-testpmd can launch/quit normally and recognize the VF device. Signed-off-by: Zaiyu Wang --- doc/guides/nics/features/ngbe_vf.ini | 11 ++ drivers/

[PATCH 00/15] net/ngbe: add VF driver support

2025-01-08 Thread Zaiyu Wang
This patch adds support to VF device for ngbe PMD Zaiyu Wang (15): net/ngbe: add ethdev probe and remove for VF device net/ngbe: add support for PF-VF mailbox interface net/ngbe: add hardware configuration code for VF device net/ngbe: add promiscuous and allmulticast ops for VF device ne

Re: [PATCH v8 27/29] lib/net: replace packed attributes

2025-01-08 Thread Andre Muezerie
On Wed, Jan 08, 2025 at 01:01:23PM +0100, David Marchand wrote: > On Tue, Dec 31, 2024 at 7:40 PM Andre Muezerie > wrote: > > diff --git a/lib/net/rte_ip6.h b/lib/net/rte_ip6.h > > index 992ab5ee1f..92558a124a 100644 > > --- a/lib/net/rte_ip6.h > > +++ b/lib/net/rte_ip6.h > > @@ -358,7 +358,7 @@ e

[PATCH v10 28/30] lib/pipeline: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 25/30] lib/eal: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 17/30] drivers/vdpa: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 23/30] examples/ptpclient: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 22/30] examples/l3fwd: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 26/30] lib/ipsec: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 27/30] lib/net: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 15/30] drivers/raw: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 30/30] eal/include: deprecate macro __rte_packed

2025-01-08 Thread Andre Muezerie
Macro __rte_packed was marked as deprecated. Signed-off-by: Andre Muezerie --- lib/eal/include/rte_common.h | 13 + 1 file changed, 13 insertions(+) diff --git a/lib/eal/include/rte_common.h b/lib/eal/include/rte_common.h index d72f8590bd..40592f71b1 100644 --- a/lib/eal/include/rte

[PATCH v10 24/30] examples/vhost_blk: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 29/30] lib/vhost: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 16/30] drivers/regex: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 20/30] examples/ipsec_secgw: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 12/30] drivers/event: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 11/30] drivers/dma: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 19/30] examples/ip-pipeline: remove packed attributes

2025-01-08 Thread Andre Muezerie
Removed packed attributes from structs that are naturally packed already, or don't require packing. Signed-off-by: Andre Muezerie --- examples/ip_pipeline/cli.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/examples/ip_pipeline/cli.c b/examples/ip_pipeline/cli.c

[PATCH v10 10/30] drivers/crypto: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 18/30] examples/common: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 21/30] examples/l3fwd-power: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 13/30] drivers/mempool: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 05/30] doc/guides: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 07/30] drivers/bus: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 08/30] drivers/common: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 06/30] drivers/baseband: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 09/30] drivers/compress: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 00/30] fix packing of structs when building with MSVC

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Different alternatives were considered: 1) Have a macro __RTE_PACKED(decl) to which the struct/union is passed and the macro would define the struct/union with the appropriate packing attribute for the compiler in use. Advantages: * Can be pl

[PATCH v10 04/30] app/test: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v10 01/30] devtools: check packed attributes

2025-01-08 Thread Andre Muezerie
Ensure __rte_packed_begin and __rte_packed_end show up in pairs when checking patches. Signed-off-by: Andre Muezerie Acked-by: Tyler Retzlaff --- devtools/checkpatches.sh | 43 1 file changed, 43 insertions(+) diff --git a/devtools/checkpatches.sh b/dev

[PATCH v10 02/30] eal/include: add new packing macros

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Add macro __rte_packed_begin which can be used to push existing pack value and set packing to 1-byte. Add macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compiler w

[PATCH v10 03/30] app/test-pmd: remove unnecessary packed attributes

2025-01-08 Thread Andre Muezerie
Removed __rte_packed attribute from structure that is naturally packed already. Signed-off-by: Andre Muezerie --- app/test-pmd/csumonly.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/test-pmd/csumonly.c b/app/test-pmd/csumonly.c index 2246c22e8e..d77a140641 100644 ---

[PATCH v9 30/30] eal/include: deprecate macro __rte_packed

2025-01-08 Thread Andre Muezerie
Macro __rte_packed was marked as deprecated. Signed-off-by: Andre Muezerie --- lib/eal/include/rte_common.h | 13 + 1 file changed, 13 insertions(+) diff --git a/lib/eal/include/rte_common.h b/lib/eal/include/rte_common.h index d72f8590bd..40592f71b1 100644 --- a/lib/eal/include/rte

[PATCH v9 06/30] drivers/baseband: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

Re: [PATCH v8 02/29] eal/include: add new packing macros

2025-01-08 Thread Andre Muezerie
On Wed, Jan 08, 2025 at 12:05:10PM +0100, David Marchand wrote: > On Tue, Dec 31, 2024 at 7:38 PM Andre Muezerie > wrote: > > diff --git a/lib/eal/include/rte_common.h b/lib/eal/include/rte_common.h > > index 4d299f2b36..40592f71b1 100644 > > --- a/lib/eal/include/rte_common.h > > +++ b/lib/eal/in

[PATCH v9 20/30] examples/ipsec_secgw: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 23/30] examples/ptpclient: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 24/30] examples/vhost_blk: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 26/30] lib/ipsec: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 27/30] lib/net: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 22/30] examples/l3fwd: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 15/30] drivers/raw: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 28/30] lib/pipeline: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 25/30] lib/eal: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 29/30] lib/vhost: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 21/30] examples/l3fwd-power: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 18/30] examples/common: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 16/30] drivers/regex: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 17/30] drivers/vdpa: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 19/30] examples/ip-pipeline: remove packed attributes

2025-01-08 Thread Andre Muezerie
Removed packed attributes from structs that are naturally packed already, or don't require packing. Signed-off-by: Andre Muezerie --- examples/ip_pipeline/cli.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/examples/ip_pipeline/cli.c b/examples/ip_pipeline/cli.c

[PATCH v9 07/30] drivers/bus: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 12/30] drivers/event: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 11/30] drivers/dma: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 13/30] drivers/mempool: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 10/30] drivers/crypto: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 09/30] drivers/compress: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 08/30] drivers/common: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 05/30] doc/guides: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 04/30] app/test: replace packed attributes

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compile

[PATCH v9 01/30] devtools: check packed attributes

2025-01-08 Thread Andre Muezerie
Ensure __rte_packed_begin and __rte_packed_end show up in pairs when checking patches. Signed-off-by: Andre Muezerie Acked-by: Tyler Retzlaff --- devtools/checkpatches.sh | 43 1 file changed, 43 insertions(+) diff --git a/devtools/checkpatches.sh b/dev

[PATCH v9 03/30] app/test-pmd: remove unnecessary packed attributes

2025-01-08 Thread Andre Muezerie
Removed __rte_packed attribute from structure that is naturally packed already. Signed-off-by: Andre Muezerie --- app/test-pmd/csumonly.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/test-pmd/csumonly.c b/app/test-pmd/csumonly.c index 2246c22e8e..d77a140641 100644 ---

[PATCH v9 02/30] eal/include: add new packing macros

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Add macro __rte_packed_begin which can be used to push existing pack value and set packing to 1-byte. Add macro __rte_packed_end to restore the pack value prior to the push. Macro __rte_packed_end is deliberately utilized to trigger a MSVC compiler w

[PATCH v9 00/30] fix packing of structs when building with MSVC

2025-01-08 Thread Andre Muezerie
MSVC struct packing is not compatible with GCC. Different alternatives were considered: 1) Have a macro __RTE_PACKED(decl) to which the struct/union is passed and the macro would define the struct/union with the appropriate packing attribute for the compiler in use. Advantages: * Can be pl

Re: [PATCH] app/testpmd: add ipv6 extension header parse

2025-01-08 Thread Stephen Hemminger
On Wed, 8 Jan 2025 10:46:32 +0800 Jie Hai wrote: > From: Jie Hai > To: , , , Aman Singh > > CC: , , , > > Subject: [PATCH] app/testpmd: add ipv6 extension header parse > Date: Wed, 8 Jan 2025 10:46:32 +0800 > X-Mailer: git-send-email 2.22.0 > > This patch support parse ipv6 extension head

Re: [PATCH 1/3] net/hns3: fix simple Tx path incorrect free the mbuf

2025-01-08 Thread Stephen Hemminger
On Wed, 8 Jan 2025 10:40:43 +0800 Jie Hai wrote: > On 2024/12/31 1:55, Stephen Hemminger wrote: > > On Mon, 30 Dec 2024 14:54:03 +0800 > > Jie Hai wrote: > > > >> From: Jie Hai > >> To: , , , > >> , , Chengwen > >> Feng , "Wei Hu (Xavier)" > >> , Huisong Li > >> CC: , > >> Subject: [

RE: [PATCH v2] ring: add the second version of the RTS interface

2025-01-08 Thread Konstantin Ananyev
Hi, > The timing of the update of the RTS enqueues/dequeues tail is > limited to the last enqueues/dequeues, which reduces concurrency, > so the RTS interface of the V2 version is added, which makes the tail > of the enqueues/dequeues not limited to the last enqueues/dequeues > and thus enables

Re: [PATCH] net/tap: fix compilation issues if HAVE_TCA_FLOWER is missing

2025-01-08 Thread Stephen Hemminger
On Wed, 8 Jan 2025 13:10:11 +0100 Tomasz Duszynski wrote: > From: Tomasz Duszynski > To: , Stephen Hemminger , > "Pascal Mazon" > CC: , Tomasz Duszynski > Subject: [PATCH] net/tap: fix compilation issues if HAVE_TCA_FLOWER is missing > Date: Wed, 8 Jan 2025 13:10:11 +0100 > X-Mailer:

Re: [PATCH v2] net/memif: Fix memif-rx buffer linking

2025-01-08 Thread Stephen Hemminger
On Tue, 7 Jan 2025 10:22:10 -0800 Mike Bly wrote: > Cc: sta...@dpdk.org, jgraj...@cisco.com > Subject: [PATCH v2] net/memif: Fix memif-rx buffer linking > Date: Tue, 7 Jan 2025 10:22:10 -0800 > > Moving where dst_off is set in memif-rx function. It should be > initialized for each new dpdk-mbuf,

RE: [PATCH] examples/l3fwd: optimize packet prefetch

2025-01-08 Thread Konstantin Ananyev
> > The prefetch window depending on the hardware platform. The current prefetch > policy may not be applicable to all platforms. In most cases, the number of > packets received by Rx burst is small (64 is used in most performance > reports). > In L3fwd, the maximum value cannot exceed 512. Th

RE: [PATCH v13 00/21] remove use of VLAs for Windows

2025-01-08 Thread Konstantin Ananyev
> As per guidance technical board meeting 2024/04/17. This series > removes the use of VLAs from code built for Windows for all 3 > toolchains. If there are additional opportunities to convert VLAs > to regular C arrays please provide the details for incorporation > into the series. > > MSVC doe

RE: [PATCH] test/crypto: check for RSA capability

2025-01-08 Thread Akhil Goyal
> > Subject: [PATCH] test/crypto: check for RSA capability > > > > In RSA crypto tests, check if it is supported by PMD before > > executing it. > > > > Signed-off-by: Gowrishankar Muthukrishnan > > --- > Acked-by: Akhil Goyal Applied to dpdk-next-crypto Thanks.

RE: [PATCH] crypto/virtio: fix dataqueues iteration

2025-01-08 Thread Akhil Goyal
> > Subject: [PATCH] crypto/virtio: fix dataqueues iteration > > > > Fix dataqueues iteration using nb_queue_pairs info available in > > device data instead of max dataqueues as dataqueue count might > > have been changed in device configuration. > > > > Fixes: 6f0175ff53e0 ("crypto/virtio: support

RE: [EXTERNAL] [PATCH v2] cryptodev: not close device when secondary exit

2025-01-08 Thread Akhil Goyal
> The secordary process should not close the crypto device when > it exits because the primary process still manage the device. > There is no reason with occurring error log below when > secordary process exits without any operation on the crypto > device while primary process starts the device. >

[PATCH 2/2] common/idpf: enable AVX2 for single queue Tx

2025-01-08 Thread Shaiq Wani
In case some CPUs don't support AVX512. Enable AVX2 for them to get better per-core performance. Signed-off-by: Shaiq Wani --- doc/guides/rel_notes/release_25_03.rst | 3 + drivers/common/idpf/idpf_common_device.h| 1 + drivers/common/idpf/idpf_common_rxtx.h | 4 + drivers/co

[PATCH 1/2] common/idpf: enable AVX2 for single queue Rx

2025-01-08 Thread Shaiq Wani
In case some CPUs don't support AVX512. Enable AVX2 for them to get better per-core performance. Signed-off-by: Shaiq Wani --- drivers/common/idpf/idpf_common_device.h| 1 + drivers/common/idpf/idpf_common_rxtx.h | 4 + drivers/common/idpf/idpf_common_rxtx_avx2.c | 590 +

[PATCH 0/2] enable AVX2 for IDPF single queue

2025-01-08 Thread Shaiq Wani
In case some CPUs don't support AVX512. Enable AVX2 for them to get better per-core performance. Shaiq Wani (2): common/idpf: enable AVX2 for single queue Rx common/idpf: enable AVX2 for single queue Tx doc/guides/rel_notes/release_25_03.rst | 3 + drivers/common/idpf/idpf_common_devi

[PATCH] crypto/virtio: return proper error in session fail

2025-01-08 Thread Rajesh Mudimadugula
Return relevant error code when crypto session configure fails. Signed-off-by: Rajesh Mudimadugula --- drivers/crypto/virtio/virtio_cryptodev.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/crypto/virtio/virtio_cryptodev.c b/drivers/crypto/virtio/virtio_cryptodev

[PATCH] net/tap: fix compilation issues if HAVE_TCA_FLOWER is missing

2025-01-08 Thread Tomasz Duszynski
If HAVE_TCA_FLOWER is undefined compilation errors / warnings may appear. This addresses following spotted issues: ../drivers/net/tap/rte_eth_tap.c:2113:1: error: label ‘disable_rte_flow’ defined but not used [-Werror=unused-label] ../drivers/net/tap/rte_eth_tap.c:1908:26: error: unused parameter

Re: [PATCH v8 27/29] lib/net: replace packed attributes

2025-01-08 Thread David Marchand
On Tue, Dec 31, 2024 at 7:40 PM Andre Muezerie wrote: > diff --git a/lib/net/rte_ip6.h b/lib/net/rte_ip6.h > index 992ab5ee1f..92558a124a 100644 > --- a/lib/net/rte_ip6.h > +++ b/lib/net/rte_ip6.h > @@ -358,7 +358,7 @@ enum rte_ipv6_mc_scope { > RTE_IPV6_MC_SCOPE_ORGLOCAL = 0x08, >

Re: [PATCH v8 02/29] eal/include: add new packing macros

2025-01-08 Thread David Marchand
On Tue, Dec 31, 2024 at 7:38 PM Andre Muezerie wrote: > diff --git a/lib/eal/include/rte_common.h b/lib/eal/include/rte_common.h > index 4d299f2b36..40592f71b1 100644 > --- a/lib/eal/include/rte_common.h > +++ b/lib/eal/include/rte_common.h > @@ -99,13 +99,32 @@ typedef uint32_t unaligned_uint32_t

Re: [PATCH v8 14/29] drivers/net: replace packed attributes

2025-01-08 Thread David Marchand
On Tue, Dec 31, 2024 at 7:40 PM Andre Muezerie wrote: > > MSVC struct packing is not compatible with GCC. Replace macro > __rte_packed with __rte_packed_begin to push existing pack value > and set packing to 1-byte and macro __rte_packed_end to restore > the pack value prior to the push. > > Macro

RE: [EXTERNAL] Re: [PATCH v2] cryptodev: fix C++ include

2025-01-08 Thread Akhil Goyal
> On 2024-12-19 14:30, Thomas Monjalon wrote: > > Some cryptodev functions were not included in an extern "C" block. > > > > There are 2 blocks, the second one being fast path inline functions, > > preceded with an include of the required rte_cryptodev_core.h file. > > > > Fixes: 719834a6849e ("use

RE: [PATCH] crypto/openssl: fix CMAC auth context update

2025-01-08 Thread Akhil Goyal
> > This patch removes an unnecessary cleanup of the shared CMAC context at > > the end of the CMAC authentication function, which causes subsequent calls > > to it to fail. > > > > Fixes: 17d5bc6135af ("crypto/openssl: make per-QP auth context clones") > > Cc: sta...@dpdk.org > > > > Signed-off-by

  1   2   >