dev.dpdk.org archive mirror
 help / color / mirror / Atom feed
From: Andre Muezerie <andremue@linux.microsoft.com>
To: Gagandeep Singh <g.singh@nxp.com>,
	Hemant Agrawal <hemant.agrawal@nxp.com>,
	Sunil Uttarwar <sunilprakashrao.uttarwar@amd.com>,
	Jay Zhou <jianjay.zhou@huawei.com>
Cc: dev@dpdk.org, Andre Muezerie <andremue@linux.microsoft.com>
Subject: [PATCH 09/21] drivers/crypto: use portable variadic macros
Date: Tue, 10 Dec 2024 18:05:39 -0800	[thread overview]
Message-ID: <1733882751-29598-10-git-send-email-andremue@linux.microsoft.com> (raw)
In-Reply-To: <1733882751-29598-1-git-send-email-andremue@linux.microsoft.com>

1) Use portable variadic macros

Many places are using a GCC extension related to variadic macros,
where a name prepends the ellipsis. This results in a warning like
the one below when compiling the code with MSVC:

app\test-pmd\testpmd.h(1314): error C2608:
    invalid token '...' in macro parameter list

Variadic macros became a standard part of the C language with C99.
GCC, Clang and MSVC handle them properly.

The fix is to remove the prefix name (args... becomes ...) and use
__VA_ARGS__.

2) Add "do { } while (0)" to macros used to remove logging calls, to
ensure there's no code structure change when enabling/disabling
logging.

Signed-off-by: Andre Muezerie <andremue@linux.microsoft.com>
---
 drivers/crypto/caam_jr/caam_jr_log.h      | 28 +++++------
 drivers/crypto/ccp/ccp_pmd_private.h      |  4 +-
 drivers/crypto/dpaa2_sec/dpaa2_sec_logs.h | 28 +++++------
 drivers/crypto/dpaa_sec/dpaa_sec_log.h    | 28 +++++------
 drivers/crypto/virtio/virtio_logs.h       | 60 +++++++++++------------
 5 files changed, 74 insertions(+), 74 deletions(-)

diff --git a/drivers/crypto/caam_jr/caam_jr_log.h b/drivers/crypto/caam_jr/caam_jr_log.h
index 7c50119106..18de668e10 100644
--- a/drivers/crypto/caam_jr/caam_jr_log.h
+++ b/drivers/crypto/caam_jr/caam_jr_log.h
@@ -18,24 +18,24 @@ extern int caam_jr_logtype;
 
 #define PMD_INIT_FUNC_TRACE() CAAM_JR_DEBUG(" >>")
 
-#define CAAM_JR_INFO(fmt, args...) \
-	CAAM_JR_LOG(INFO, fmt, ## args)
-#define CAAM_JR_ERR(fmt, args...) \
-	CAAM_JR_LOG(ERR, fmt, ## args)
-#define CAAM_JR_WARN(fmt, args...) \
-	CAAM_JR_LOG(WARNING, fmt, ## args)
+#define CAAM_JR_INFO(fmt, ...) \
+	CAAM_JR_LOG(INFO, fmt, ## __VA_ARGS__)
+#define CAAM_JR_ERR(fmt, ...) \
+	CAAM_JR_LOG(ERR, fmt, ## __VA_ARGS__)
+#define CAAM_JR_WARN(fmt, ...) \
+	CAAM_JR_LOG(WARNING, fmt, ## __VA_ARGS__)
 
 /* DP Logs, toggled out at compile time if level lower than current level */
 #define CAAM_JR_DP_LOG(level, ...) \
 	RTE_LOG_DP_LINE(level, CAAM_JR, __VA_ARGS__)
 
-#define CAAM_JR_DP_DEBUG(fmt, args...) \
-	CAAM_JR_DP_LOG(DEBUG, fmt, ## args)
-#define CAAM_JR_DP_INFO(fmt, args...) \
-	CAAM_JR_DP_LOG(INFO, fmt, ## args)
-#define CAAM_JR_DP_WARN(fmt, args...) \
-	CAAM_JR_DP_LOG(WARNING, fmt, ## args)
-#define CAAM_JR_DP_ERR(fmt, args...) \
-	CAAM_JR_DP_LOG(ERR, fmt, ## args)
+#define CAAM_JR_DP_DEBUG(fmt, ...) \
+	CAAM_JR_DP_LOG(DEBUG, fmt, ## __VA_ARGS__)
+#define CAAM_JR_DP_INFO(fmt, ...) \
+	CAAM_JR_DP_LOG(INFO, fmt, ## __VA_ARGS__)
+#define CAAM_JR_DP_WARN(fmt, ...) \
+	CAAM_JR_DP_LOG(WARNING, fmt, ## __VA_ARGS__)
+#define CAAM_JR_DP_ERR(fmt, ...) \
+	CAAM_JR_DP_LOG(ERR, fmt, ## __VA_ARGS__)
 
 #endif /* _CAAM_JR_LOG_H_ */
diff --git a/drivers/crypto/ccp/ccp_pmd_private.h b/drivers/crypto/ccp/ccp_pmd_private.h
index 361a20fa3e..4795b88f9d 100644
--- a/drivers/crypto/ccp/ccp_pmd_private.h
+++ b/drivers/crypto/ccp/ccp_pmd_private.h
@@ -24,8 +24,8 @@ extern int crypto_ccp_logtype;
 	RTE_LOG_LINE_PREFIX(DEBUG, CRYPTO_CCP, "%s() line %u: ", \
 		__func__ RTE_LOG_COMMA __LINE__, __VA_ARGS__)
 #else
-#define CCP_LOG_INFO(...)
-#define CCP_LOG_DBG(...)
+#define CCP_LOG_INFO(...)	do { } while (0)
+#define CCP_LOG_DBG(...)	do { } while (0)
 #endif
 
 /**< Maximum queue pairs supported by CCP PMD */
diff --git a/drivers/crypto/dpaa2_sec/dpaa2_sec_logs.h b/drivers/crypto/dpaa2_sec/dpaa2_sec_logs.h
index 53a5ebc760..5f2a0bf8e1 100644
--- a/drivers/crypto/dpaa2_sec/dpaa2_sec_logs.h
+++ b/drivers/crypto/dpaa2_sec/dpaa2_sec_logs.h
@@ -19,25 +19,25 @@ extern int dpaa2_logtype_sec;
 
 #define PMD_INIT_FUNC_TRACE() DPAA2_SEC_DEBUG(">>")
 
-#define DPAA2_SEC_INFO(fmt, args...) \
-	DPAA2_SEC_LOG(INFO, fmt, ## args)
-#define DPAA2_SEC_ERR(fmt, args...) \
-	DPAA2_SEC_LOG(ERR, fmt, ## args)
-#define DPAA2_SEC_WARN(fmt, args...) \
-	DPAA2_SEC_LOG(WARNING, fmt, ## args)
+#define DPAA2_SEC_INFO(fmt, ...) \
+	DPAA2_SEC_LOG(INFO, fmt, ## __VA_ARGS__)
+#define DPAA2_SEC_ERR(fmt, ...) \
+	DPAA2_SEC_LOG(ERR, fmt, ## __VA_ARGS__)
+#define DPAA2_SEC_WARN(fmt, ...) \
+	DPAA2_SEC_LOG(WARNING, fmt, ## __VA_ARGS__)
 
 /* DP Logs, toggled out at compile time if level lower than current level */
 #define DPAA2_SEC_DP_LOG(level, ...) \
 	RTE_LOG_DP_LINE(level, DPAA2_SEC, __VA_ARGS__)
 
-#define DPAA2_SEC_DP_DEBUG(fmt, args...) \
-	DPAA2_SEC_DP_LOG(DEBUG, fmt, ## args)
-#define DPAA2_SEC_DP_INFO(fmt, args...) \
-	DPAA2_SEC_DP_LOG(INFO, fmt, ## args)
-#define DPAA2_SEC_DP_WARN(fmt, args...) \
-	DPAA2_SEC_DP_LOG(WARNING, fmt, ## args)
-#define DPAA2_SEC_DP_ERR(fmt, args...) \
-		DPAA2_SEC_DP_LOG(ERR, fmt, ## args)
+#define DPAA2_SEC_DP_DEBUG(fmt, ...) \
+	DPAA2_SEC_DP_LOG(DEBUG, fmt, ## __VA_ARGS__)
+#define DPAA2_SEC_DP_INFO(fmt, ...) \
+	DPAA2_SEC_DP_LOG(INFO, fmt, ## __VA_ARGS__)
+#define DPAA2_SEC_DP_WARN(fmt, ...) \
+	DPAA2_SEC_DP_LOG(WARNING, fmt, ## __VA_ARGS__)
+#define DPAA2_SEC_DP_ERR(fmt, ...) \
+		DPAA2_SEC_DP_LOG(ERR, fmt, ## __VA_ARGS__)
 
 
 #endif /* _DPAA2_SEC_LOGS_H_ */
diff --git a/drivers/crypto/dpaa_sec/dpaa_sec_log.h b/drivers/crypto/dpaa_sec/dpaa_sec_log.h
index 6ac02d07e1..0413bcd6d3 100644
--- a/drivers/crypto/dpaa_sec/dpaa_sec_log.h
+++ b/drivers/crypto/dpaa_sec/dpaa_sec_log.h
@@ -19,24 +19,24 @@ extern int dpaa_logtype_sec;
 
 #define PMD_INIT_FUNC_TRACE() DPAA_SEC_DEBUG(" >>")
 
-#define DPAA_SEC_INFO(fmt, args...) \
-	DPAA_SEC_LOG(INFO, fmt, ## args)
-#define DPAA_SEC_ERR(fmt, args...) \
-	DPAA_SEC_LOG(ERR, fmt, ## args)
-#define DPAA_SEC_WARN(fmt, args...) \
-	DPAA_SEC_LOG(WARNING, fmt, ## args)
+#define DPAA_SEC_INFO(fmt, ...) \
+	DPAA_SEC_LOG(INFO, fmt, ## __VA_ARGS__)
+#define DPAA_SEC_ERR(fmt, ...) \
+	DPAA_SEC_LOG(ERR, fmt, ## __VA_ARGS__)
+#define DPAA_SEC_WARN(fmt, ...) \
+	DPAA_SEC_LOG(WARNING, fmt, ## __VA_ARGS__)
 
 /* DP Logs, toggled out at compile time if level lower than current level */
 #define DPAA_SEC_DP_LOG(level, ...) \
 	RTE_LOG_DP_LINE(level, DPAA_SEC, __VA_ARGS__)
 
-#define DPAA_SEC_DP_DEBUG(fmt, args...) \
-	DPAA_SEC_DP_LOG(DEBUG, fmt, ## args)
-#define DPAA_SEC_DP_INFO(fmt, args...) \
-	DPAA_SEC_DP_LOG(INFO, fmt, ## args)
-#define DPAA_SEC_DP_WARN(fmt, args...) \
-	DPAA_SEC_DP_LOG(WARNING, fmt, ## args)
-#define DPAA_SEC_DP_ERR(fmt, args...) \
-	DPAA_SEC_DP_LOG(ERR, fmt, ## args)
+#define DPAA_SEC_DP_DEBUG(fmt, ...) \
+	DPAA_SEC_DP_LOG(DEBUG, fmt, ## __VA_ARGS__)
+#define DPAA_SEC_DP_INFO(fmt, ...) \
+	DPAA_SEC_DP_LOG(INFO, fmt, ## __VA_ARGS__)
+#define DPAA_SEC_DP_WARN(fmt, ...) \
+	DPAA_SEC_DP_LOG(WARNING, fmt, ## __VA_ARGS__)
+#define DPAA_SEC_DP_ERR(fmt, ...) \
+	DPAA_SEC_DP_LOG(ERR, fmt, ## __VA_ARGS__)
 
 #endif /* _DPAA_SEC_LOG_H_ */
diff --git a/drivers/crypto/virtio/virtio_logs.h b/drivers/crypto/virtio/virtio_logs.h
index a1afb90a98..988514919f 100644
--- a/drivers/crypto/virtio/virtio_logs.h
+++ b/drivers/crypto/virtio/virtio_logs.h
@@ -21,14 +21,14 @@ extern int virtio_crypto_logtype_init;
 #define VIRTIO_CRYPTO_INIT_LOG_IMPL(level, ...) \
 	RTE_LOG_LINE_PREFIX(level, VIRTIO_CRYPTO_INIT, "%s(): ", __func__, __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_INIT_LOG_INFO(fmt, args...) \
-	VIRTIO_CRYPTO_INIT_LOG_IMPL(INFO, fmt, ## args)
+#define VIRTIO_CRYPTO_INIT_LOG_INFO(fmt, ...) \
+	VIRTIO_CRYPTO_INIT_LOG_IMPL(INFO, fmt, ## __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_INIT_LOG_DBG(fmt, args...) \
-	VIRTIO_CRYPTO_INIT_LOG_IMPL(DEBUG, fmt, ## args)
+#define VIRTIO_CRYPTO_INIT_LOG_DBG(fmt, ...) \
+	VIRTIO_CRYPTO_INIT_LOG_IMPL(DEBUG, fmt, ## __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_INIT_LOG_ERR(fmt, args...) \
-	VIRTIO_CRYPTO_INIT_LOG_IMPL(ERR, fmt, ## args)
+#define VIRTIO_CRYPTO_INIT_LOG_ERR(fmt, ...) \
+	VIRTIO_CRYPTO_INIT_LOG_IMPL(ERR, fmt, ## __VA_ARGS__)
 
 extern int virtio_crypto_logtype_session;
 #define RTE_LOGTYPE_VIRTIO_CRYPTO_SESSION virtio_crypto_logtype_session
@@ -36,14 +36,14 @@ extern int virtio_crypto_logtype_session;
 #define VIRTIO_CRYPTO_SESSION_LOG_IMPL(level, ...) \
 	RTE_LOG_LINE_PREFIX(level, VIRTIO_CRYPTO_SESSION, "%s(): ", __func__, __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_SESSION_LOG_INFO(fmt, args...) \
-	VIRTIO_CRYPTO_SESSION_LOG_IMPL(INFO, fmt, ## args)
+#define VIRTIO_CRYPTO_SESSION_LOG_INFO(fmt, ...) \
+	VIRTIO_CRYPTO_SESSION_LOG_IMPL(INFO, fmt, ## __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_SESSION_LOG_DBG(fmt, args...) \
-	VIRTIO_CRYPTO_SESSION_LOG_IMPL(DEBUG, fmt, ## args)
+#define VIRTIO_CRYPTO_SESSION_LOG_DBG(fmt, ...) \
+	VIRTIO_CRYPTO_SESSION_LOG_IMPL(DEBUG, fmt, ## __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_SESSION_LOG_ERR(fmt, args...) \
-	VIRTIO_CRYPTO_SESSION_LOG_IMPL(ERR, fmt, ## args)
+#define VIRTIO_CRYPTO_SESSION_LOG_ERR(fmt, ...) \
+	VIRTIO_CRYPTO_SESSION_LOG_IMPL(ERR, fmt, ## __VA_ARGS__)
 
 extern int virtio_crypto_logtype_rx;
 #define RTE_LOGTYPE_VIRTIO_CRYPTO_RX virtio_crypto_logtype_rx
@@ -51,14 +51,14 @@ extern int virtio_crypto_logtype_rx;
 #define VIRTIO_CRYPTO_RX_LOG_IMPL(level, ...) \
 	RTE_LOG_LINE_PREFIX(level, VIRTIO_CRYPTO_RX, "%s(): ", __func__, __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_RX_LOG_INFO(fmt, args...) \
-	VIRTIO_CRYPTO_RX_LOG_IMPL(INFO, fmt, ## args)
+#define VIRTIO_CRYPTO_RX_LOG_INFO(fmt, ...) \
+	VIRTIO_CRYPTO_RX_LOG_IMPL(INFO, fmt, ## __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_RX_LOG_DBG(fmt, args...) \
-	VIRTIO_CRYPTO_RX_LOG_IMPL(DEBUG, fmt, ## args)
+#define VIRTIO_CRYPTO_RX_LOG_DBG(fmt, ...) \
+	VIRTIO_CRYPTO_RX_LOG_IMPL(DEBUG, fmt, ## __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_RX_LOG_ERR(fmt, args...) \
-	VIRTIO_CRYPTO_RX_LOG_IMPL(ERR, fmt, ## args)
+#define VIRTIO_CRYPTO_RX_LOG_ERR(fmt, ...) \
+	VIRTIO_CRYPTO_RX_LOG_IMPL(ERR, fmt, ## __VA_ARGS__)
 
 extern int virtio_crypto_logtype_tx;
 #define RTE_LOGTYPE_VIRTIO_CRYPTO_TX virtio_crypto_logtype_tx
@@ -66,14 +66,14 @@ extern int virtio_crypto_logtype_tx;
 #define VIRTIO_CRYPTO_TX_LOG_IMPL(level, ...) \
 	RTE_LOG_LINE_PREFIX(level, VIRTIO_CRYPTO_TX, "%s(): ", __func__, __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_TX_LOG_INFO(fmt, args...) \
-	VIRTIO_CRYPTO_TX_LOG_IMPL(INFO, fmt, ## args)
+#define VIRTIO_CRYPTO_TX_LOG_INFO(fmt, ...) \
+	VIRTIO_CRYPTO_TX_LOG_IMPL(INFO, fmt, ## __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_TX_LOG_DBG(fmt, args...) \
-	VIRTIO_CRYPTO_TX_LOG_IMPL(DEBUG, fmt, ## args)
+#define VIRTIO_CRYPTO_TX_LOG_DBG(fmt, ...) \
+	VIRTIO_CRYPTO_TX_LOG_IMPL(DEBUG, fmt, ## __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_TX_LOG_ERR(fmt, args...) \
-	VIRTIO_CRYPTO_TX_LOG_IMPL(ERR, fmt, ## args)
+#define VIRTIO_CRYPTO_TX_LOG_ERR(fmt, ...) \
+	VIRTIO_CRYPTO_TX_LOG_IMPL(ERR, fmt, ## __VA_ARGS__)
 
 extern int virtio_crypto_logtype_driver;
 #define RTE_LOGTYPE_VIRTIO_CRYPTO_DRIVER virtio_crypto_logtype_driver
@@ -81,13 +81,13 @@ extern int virtio_crypto_logtype_driver;
 #define VIRTIO_CRYPTO_DRV_LOG_IMPL(level, ...) \
 	RTE_LOG_LINE_PREFIX(level, VIRTIO_CRYPTO_DRIVER, "%s(): ", __func__, __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_DRV_LOG_INFO(fmt, args...) \
-	VIRTIO_CRYPTO_DRV_LOG_IMPL(INFO, fmt, ## args)
+#define VIRTIO_CRYPTO_DRV_LOG_INFO(fmt, ...) \
+	VIRTIO_CRYPTO_DRV_LOG_IMPL(INFO, fmt, ## __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_DRV_LOG_DBG(fmt, args...) \
-	VIRTIO_CRYPTO_DRV_LOG_IMPL(DEBUG, fmt, ## args)
+#define VIRTIO_CRYPTO_DRV_LOG_DBG(fmt, ...) \
+	VIRTIO_CRYPTO_DRV_LOG_IMPL(DEBUG, fmt, ## __VA_ARGS__)
 
-#define VIRTIO_CRYPTO_DRV_LOG_ERR(fmt, args...) \
-	VIRTIO_CRYPTO_DRV_LOG_IMPL(ERR, fmt, ## args)
+#define VIRTIO_CRYPTO_DRV_LOG_ERR(fmt, ...) \
+	VIRTIO_CRYPTO_DRV_LOG_IMPL(ERR, fmt, ## __VA_ARGS__)
 
 #endif /* _VIRTIO_LOGS_H_ */
-- 
2.47.0.vfs.0.3


  parent reply	other threads:[~2024-12-11  2:07 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-11  2:05 [PATCH 00/21] use portable variadic macros Andre Muezerie
2024-12-11  2:05 ` [PATCH 01/21] app/test-acl: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 02/21] app/test-eventdev: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 03/21] app/test-mldev: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 04/21] app/test-pmd: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 05/21] drivers/baseband: ensure code structure does not change Andre Muezerie
2024-12-11  2:05 ` [PATCH 06/21] drivers/bus: use portable variadic macros Andre Muezerie
2024-12-11  2:05 ` [PATCH 07/21] drivers/common: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 08/21] drivers/compress: " Andre Muezerie
2024-12-11  2:05 ` Andre Muezerie [this message]
2024-12-11  2:05 ` [PATCH 10/21] drivers/dma: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 11/21] drivers/event: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 12/21] drivers/mempool: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 13/21] drivers/net: " Andre Muezerie
2024-12-16  9:02   ` Andrew Rybchenko
2024-12-11  2:05 ` [PATCH 14/21] drivers/raw: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 15/21] drivers/vdpa: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 16/21] lib/log: ensure code structure does not change Andre Muezerie
2024-12-11  3:13   ` Stephen Hemminger
2024-12-11 16:16     ` Andre Muezerie
2024-12-11  2:05 ` [PATCH 17/21] lib/pipeline: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 18/21] lib/port: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 19/21] lib/power: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 20/21] lib/rcu: " Andre Muezerie
2024-12-11  2:05 ` [PATCH 21/21] lib/vhost: " Andre Muezerie
2024-12-11  3:14 ` [PATCH 00/21] use portable variadic macros Stephen Hemminger
2024-12-11 21:35   ` Andre Muezerie
2024-12-11 22:07 ` [PATCH v2 00/14] " Andre Muezerie
2024-12-11 22:07   ` [PATCH v2 01/14] app/test-acl: " Andre Muezerie
2024-12-11 22:07   ` [PATCH v2 02/14] app/test-eventdev: " Andre Muezerie
2024-12-11 22:07   ` [PATCH v2 03/14] app/test-mldev: " Andre Muezerie
2024-12-11 22:07   ` [PATCH v2 04/14] app/test-pmd: " Andre Muezerie
2024-12-11 22:07   ` [PATCH v2 05/14] drivers/bus: " Andre Muezerie
2024-12-23  8:43     ` David Marchand
2024-12-11 22:07   ` [PATCH v2 06/14] drivers/common: " Andre Muezerie
2024-12-11 22:07   ` [PATCH v2 07/14] drivers/compress: " Andre Muezerie
2024-12-11 22:07   ` [PATCH v2 08/14] drivers/crypto: " Andre Muezerie
2024-12-11 22:07   ` [PATCH v2 09/14] drivers/dma: " Andre Muezerie
2024-12-11 22:07   ` [PATCH v2 10/14] drivers/event: " Andre Muezerie
2024-12-11 22:07   ` [PATCH v2 11/14] drivers/mempool: " Andre Muezerie
2024-12-11 22:07   ` [PATCH v2 12/14] drivers/net: " Andre Muezerie
2024-12-11 22:07   ` [PATCH v2 13/14] drivers/raw: " Andre Muezerie
2024-12-23  8:45     ` David Marchand
2024-12-11 22:07   ` [PATCH v2 14/14] drivers/vdpa: " Andre Muezerie
2024-12-23  9:28   ` [PATCH v2 00/14] " David Marchand
2024-12-23 15:39     ` Andre Muezerie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1733882751-29598-10-git-send-email-andremue@linux.microsoft.com \
    --to=andremue@linux.microsoft.com \
    --cc=dev@dpdk.org \
    --cc=g.singh@nxp.com \
    --cc=hemant.agrawal@nxp.com \
    --cc=jianjay.zhou@huawei.com \
    --cc=sunilprakashrao.uttarwar@amd.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).