From: Andre Muezerie <andremue@linux.microsoft.com>
To: dev@dpdk.org
Cc: Andre Muezerie <andremue@linux.microsoft.com>
Subject: [PATCH v2 12/14] drivers/net: use portable variadic macros
Date: Wed, 11 Dec 2024 14:07:22 -0800 [thread overview]
Message-ID: <1733954844-24397-13-git-send-email-andremue@linux.microsoft.com> (raw)
In-Reply-To: <1733954844-24397-1-git-send-email-andremue@linux.microsoft.com>
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__.
Signed-off-by: Andre Muezerie <andremue@linux.microsoft.com>
---
drivers/net/ark/ark_logs.h | 4 +--
drivers/net/bnxt/tf_core/cfa_tcam_mgr.h | 12 ++++-----
drivers/net/bnxt/tf_core/tfp.h | 8 +++---
drivers/net/bnxt/tf_ulp/bnxt_tf_common.h | 4 +--
drivers/net/dpaa/dpaa_ethdev.h | 16 ++++++------
drivers/net/dpaa/fmlib/fm_ext.h | 4 +--
drivers/net/dpaa2/dpaa2_pmd_logs.h | 28 ++++++++++-----------
drivers/net/e1000/base/e1000_osdep.h | 10 ++++----
drivers/net/ena/base/ena_plat_dpdk.h | 14 +++++------
drivers/net/enetc/enetc_logs.h | 32 ++++++++++++------------
drivers/net/enetfec/enet_pmd_logs.h | 18 ++++++-------
drivers/net/enic/enic_compat.h | 16 ++++++------
drivers/net/fm10k/base/fm10k_osdep.h | 10 ++++----
drivers/net/hns3/hns3_logs.h | 20 +++++++--------
drivers/net/i40e/base/i40e_osdep.h | 2 +-
drivers/net/ice/base/ice_osdep.h | 4 +--
drivers/net/igc/base/igc_osdep.h | 10 ++++----
drivers/net/ipn3ke/ipn3ke_logs.h | 16 ++++++------
drivers/net/ixgbe/base/ixgbe_osdep.h | 30 +++++++++++-----------
drivers/net/ngbe/base/ngbe_osdep.h | 2 +-
drivers/net/ngbe/ngbe_logs.h | 2 +-
drivers/net/pfe/pfe_logs.h | 18 ++++++-------
drivers/net/qede/qede_ethdev.h | 4 +--
drivers/net/qede/qede_logs.h | 16 ++++++------
drivers/net/sfc/sfc_debug.h | 4 +--
drivers/net/txgbe/base/txgbe_osdep.h | 2 +-
drivers/net/txgbe/txgbe_logs.h | 2 +-
27 files changed, 154 insertions(+), 154 deletions(-)
diff --git a/drivers/net/ark/ark_logs.h b/drivers/net/ark/ark_logs.h
index ca46d86c99..fb0f3eee5f 100644
--- a/drivers/net/ark/ark_logs.h
+++ b/drivers/net/ark/ark_logs.h
@@ -20,8 +20,8 @@
extern int ark_logtype;
-#define ARK_PMD_LOG(level, fmt, args...) \
- rte_log(RTE_LOG_ ##level, ark_logtype, "ARK: " fmt, ## args)
+#define ARK_PMD_LOG(level, fmt, ...) \
+ rte_log(RTE_LOG_ ##level, ark_logtype, "ARK: " fmt, ## __VA_ARGS__)
/* Debug macro to enable core debug code */
diff --git a/drivers/net/bnxt/tf_core/cfa_tcam_mgr.h b/drivers/net/bnxt/tf_core/cfa_tcam_mgr.h
index 6ac1156fbf..5801bf89eb 100644
--- a/drivers/net/bnxt/tf_core/cfa_tcam_mgr.h
+++ b/drivers/net/bnxt/tf_core/cfa_tcam_mgr.h
@@ -25,13 +25,13 @@
#endif
/* Use TFP_DRV_LOG definition in tfp.h */
-#define CFA_TCAM_MGR_LOG(level, fmt, args...) \
- TFP_DRV_LOG(level, fmt, ## args)
-#define CFA_TCAM_MGR_LOG_DIR(level, dir, fmt, args...) \
- TFP_DRV_LOG(level, "%s: " fmt, tf_dir_2_str(dir), ## args)
-#define CFA_TCAM_MGR_LOG_DIR_TYPE(level, dir, type, fmt, args...) \
+#define CFA_TCAM_MGR_LOG(level, fmt, ...) \
+ TFP_DRV_LOG(level, fmt, ## __VA_ARGS__)
+#define CFA_TCAM_MGR_LOG_DIR(level, dir, fmt, ...) \
+ TFP_DRV_LOG(level, "%s: " fmt, tf_dir_2_str(dir), ## __VA_ARGS__)
+#define CFA_TCAM_MGR_LOG_DIR_TYPE(level, dir, type, fmt, ...) \
TFP_DRV_LOG(level, "%s: %s " fmt, tf_dir_2_str(dir), \
- cfa_tcam_mgr_tbl_2_str(type), ## args)
+ cfa_tcam_mgr_tbl_2_str(type), ## __VA_ARGS__)
#define CFA_TCAM_MGR_LOG_0(level, fmt) \
TFP_DRV_LOG(level, fmt)
diff --git a/drivers/net/bnxt/tf_core/tfp.h b/drivers/net/bnxt/tf_core/tfp.h
index 92f76004da..2103552d88 100644
--- a/drivers/net/bnxt/tf_core/tfp.h
+++ b/drivers/net/bnxt/tf_core/tfp.h
@@ -28,12 +28,12 @@ struct tfp_spinlock_parms {
rte_spinlock_t slock;
};
-#define TFP_DRV_LOG_RAW(level, fmt, args...) \
+#define TFP_DRV_LOG_RAW(level, fmt, ...) \
rte_log(RTE_LOG_ ## level, bnxt_logtype_driver, "%s(): " fmt, \
- __func__, ## args)
+ __func__, ## __VA_ARGS__)
-#define TFP_DRV_LOG(level, fmt, args...) \
- TFP_DRV_LOG_RAW(level, fmt, ## args)
+#define TFP_DRV_LOG(level, fmt, ...) \
+ TFP_DRV_LOG_RAW(level, fmt, ## __VA_ARGS__)
/**
* @file
diff --git a/drivers/net/bnxt/tf_ulp/bnxt_tf_common.h b/drivers/net/bnxt/tf_ulp/bnxt_tf_common.h
index 4d9a1a7790..7fc70a3603 100644
--- a/drivers/net/bnxt/tf_ulp/bnxt_tf_common.h
+++ b/drivers/net/bnxt/tf_ulp/bnxt_tf_common.h
@@ -15,9 +15,9 @@
RTE_LOG(lvl, BNXT, "%s(): " fmt, __func__, ## __VA_ARGS__)
#ifdef RTE_LIBRTE_BNXT_TRUFLOW_DEBUG
-#define BNXT_DRV_INF(fmt, args...) RTE_LOG(INFO, fmt, ## args)
+#define BNXT_DRV_INF(fmt, ...) RTE_LOG(INFO, fmt, ## __VA_ARGS__)
#else
-#define BNXT_DRV_INF(fmt, args...)
+#define BNXT_DRV_INF(fmt, ...)
#endif
#define BNXT_ULP_EM_FLOWS 8192
diff --git a/drivers/net/dpaa/dpaa_ethdev.h b/drivers/net/dpaa/dpaa_ethdev.h
index 00f4fde571..be9398004f 100644
--- a/drivers/net/dpaa/dpaa_ethdev.h
+++ b/drivers/net/dpaa/dpaa_ethdev.h
@@ -281,14 +281,14 @@ extern int dpaa_logtype_pmd;
#define PMD_INIT_FUNC_TRACE() DPAA_PMD_LOG(DEBUG, " >>")
-#define DPAA_PMD_DEBUG(fmt, args...) \
- DPAA_PMD_LOG(DEBUG, fmt, ## args)
-#define DPAA_PMD_ERR(fmt, args...) \
- DPAA_PMD_LOG(ERR, fmt, ## args)
-#define DPAA_PMD_INFO(fmt, args...) \
- DPAA_PMD_LOG(INFO, fmt, ## args)
-#define DPAA_PMD_WARN(fmt, args...) \
- DPAA_PMD_LOG(WARNING, fmt, ## args)
+#define DPAA_PMD_DEBUG(fmt, ...) \
+ DPAA_PMD_LOG(DEBUG, fmt, ## __VA_ARGS__)
+#define DPAA_PMD_ERR(fmt, ...) \
+ DPAA_PMD_LOG(ERR, fmt, ## __VA_ARGS__)
+#define DPAA_PMD_INFO(fmt, ...) \
+ DPAA_PMD_LOG(INFO, fmt, ## __VA_ARGS__)
+#define DPAA_PMD_WARN(fmt, ...) \
+ DPAA_PMD_LOG(WARNING, fmt, ## __VA_ARGS__)
/* DP Logs, toggled out at compile time if level lower than current level */
#define DPAA_DP_LOG(level, ...) \
diff --git a/drivers/net/dpaa/fmlib/fm_ext.h b/drivers/net/dpaa/fmlib/fm_ext.h
index 9a3193674e..7b8d85cc71 100644
--- a/drivers/net/dpaa/fmlib/fm_ext.h
+++ b/drivers/net/dpaa/fmlib/fm_ext.h
@@ -21,7 +21,7 @@
#define _fml_dbg(...) \
RTE_LOG_LINE_PREFIX(DEBUG, DPAA_PMD, "%s: ", __func__, __VA_ARGS__)
#else
- #define _fml_dbg(arg...)
+ #define _fml_dbg(...)
#endif
/*#define FM_IOCTL_DBG*/
@@ -30,7 +30,7 @@
#define _fm_ioctl_dbg(...) \
RTE_LOG_LINE_PREFIX(DEBUG, DPAA_PMD, "%s: ", __func__, __VA_ARGS__)
#else
- #define _fm_ioctl_dbg(arg...)
+ #define _fm_ioctl_dbg(...)
#endif
/*
diff --git a/drivers/net/dpaa2/dpaa2_pmd_logs.h b/drivers/net/dpaa2/dpaa2_pmd_logs.h
index a9317b27eb..28c9bed1ae 100644
--- a/drivers/net/dpaa2/dpaa2_pmd_logs.h
+++ b/drivers/net/dpaa2/dpaa2_pmd_logs.h
@@ -16,24 +16,24 @@ extern int dpaa2_logtype_pmd;
#define PMD_INIT_FUNC_TRACE() DPAA2_PMD_DEBUG(">>")
-#define DPAA2_PMD_CRIT(fmt, args...) \
- DPAA2_PMD_LOG(CRIT, fmt, ## args)
-#define DPAA2_PMD_INFO(fmt, args...) \
- DPAA2_PMD_LOG(INFO, fmt, ## args)
-#define DPAA2_PMD_ERR(fmt, args...) \
- DPAA2_PMD_LOG(ERR, fmt, ## args)
-#define DPAA2_PMD_WARN(fmt, args...) \
- DPAA2_PMD_LOG(WARNING, fmt, ## args)
+#define DPAA2_PMD_CRIT(fmt, ...) \
+ DPAA2_PMD_LOG(CRIT, fmt, ## __VA_ARGS__)
+#define DPAA2_PMD_INFO(fmt, ...) \
+ DPAA2_PMD_LOG(INFO, fmt, ## __VA_ARGS__)
+#define DPAA2_PMD_ERR(fmt, ...) \
+ DPAA2_PMD_LOG(ERR, fmt, ## __VA_ARGS__)
+#define DPAA2_PMD_WARN(fmt, ...) \
+ DPAA2_PMD_LOG(WARNING, fmt, ## __VA_ARGS__)
/* DP Logs, toggled out at compile time if level lower than current level */
#define DPAA2_PMD_DP_LOG(level, ...) \
RTE_LOG_DP_LINE(level, DPAA2_NET, __VA_ARGS__)
-#define DPAA2_PMD_DP_DEBUG(fmt, args...) \
- DPAA2_PMD_DP_LOG(DEBUG, fmt, ## args)
-#define DPAA2_PMD_DP_INFO(fmt, args...) \
- DPAA2_PMD_DP_LOG(INFO, fmt, ## args)
-#define DPAA2_PMD_DP_WARN(fmt, args...) \
- DPAA2_PMD_DP_LOG(WARNING, fmt, ## args)
+#define DPAA2_PMD_DP_DEBUG(fmt, ...) \
+ DPAA2_PMD_DP_LOG(DEBUG, fmt, ## __VA_ARGS__)
+#define DPAA2_PMD_DP_INFO(fmt, ...) \
+ DPAA2_PMD_DP_LOG(INFO, fmt, ## __VA_ARGS__)
+#define DPAA2_PMD_DP_WARN(fmt, ...) \
+ DPAA2_PMD_DP_LOG(WARNING, fmt, ## __VA_ARGS__)
#endif /* _DPAA2_PMD_LOGS_H_ */
diff --git a/drivers/net/e1000/base/e1000_osdep.h b/drivers/net/e1000/base/e1000_osdep.h
index 6b5d58950f..7cf36ed25a 100644
--- a/drivers/net/e1000/base/e1000_osdep.h
+++ b/drivers/net/e1000/base/e1000_osdep.h
@@ -28,11 +28,11 @@
#define DEBUGFUNC(F) DEBUGOUT(F "\n");
#define DEBUGOUT(S, ...) RTE_LOG(DEBUG, E1000_DRIVER, "%s(): " S, __func__, ## __VA_ARGS__)
-#define DEBUGOUT1(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT2(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT3(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT6(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT7(S, args...) DEBUGOUT(S, ##args)
+#define DEBUGOUT1(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT2(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT3(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT6(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT7(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
#ifndef UNREFERENCED_PARAMETER
#define UNREFERENCED_PARAMETER(_p)
diff --git a/drivers/net/ena/base/ena_plat_dpdk.h b/drivers/net/ena/base/ena_plat_dpdk.h
index 1121460470..fb5e6da08d 100644
--- a/drivers/net/ena/base/ena_plat_dpdk.h
+++ b/drivers/net/ena/base/ena_plat_dpdk.h
@@ -106,11 +106,11 @@ extern int ena_logtype_com;
#define GENMASK_ULL(h, l) (((~0ULL) - (1ULL << (l)) + 1) & \
(~0ULL >> (BITS_PER_LONG_LONG - 1 - (h))))
-#define ena_trc_log(dev, level, fmt, arg...) \
+#define ena_trc_log(dev, level, fmt, ...) \
( \
ENA_TOUCH(dev), \
rte_log(RTE_LOG_ ## level, ena_logtype_com, \
- "[ENA_COM: %s]" fmt, __func__, ##arg) \
+ "[ENA_COM: %s]" fmt, __func__, ##__VA_ARGS__) \
)
#if (defined RTE_ETHDEV_DEBUG_TX) || (defined RTE_ETHDEV_DEBUG_RX)
@@ -118,16 +118,16 @@ extern int ena_logtype_com;
#else
#define ena_trc_dbg(dev, format, ...)
#endif
-#define ena_trc_info(dev, format, arg...) ena_trc_log(dev, INFO, format, ##arg)
-#define ena_trc_warn(dev, format, arg...) ena_trc_log(dev, WARNING, format, ##arg)
-#define ena_trc_err(dev, format, arg...) ena_trc_log(dev, ERR, format, ##arg)
+#define ena_trc_info(dev, format, ...) ena_trc_log(dev, INFO, format, ##__VA_ARGS__)
+#define ena_trc_warn(dev, format, ...) ena_trc_log(dev, WARNING, format, ##__VA_ARGS__)
+#define ena_trc_err(dev, format, ...) ena_trc_log(dev, ERR, format, ##__VA_ARGS__)
-#define ENA_WARN(cond, dev, format, arg...) \
+#define ENA_WARN(cond, dev, format, ...) \
do { \
if (unlikely(cond)) { \
ena_trc_err(dev, \
"Warn failed on %s:%s:%d:" format, \
- __FILE__, __func__, __LINE__, ##arg); \
+ __FILE__, __func__, __LINE__, ##__VA_ARGS__); \
} \
} while (0)
diff --git a/drivers/net/enetc/enetc_logs.h b/drivers/net/enetc/enetc_logs.h
index 57bddcf683..e9855a41b4 100644
--- a/drivers/net/enetc/enetc_logs.h
+++ b/drivers/net/enetc/enetc_logs.h
@@ -16,26 +16,26 @@ extern int enetc_logtype_pmd;
#define PMD_INIT_FUNC_TRACE() ENETC_PMD_DEBUG(">>")
-#define ENETC_PMD_CRIT(fmt, args...) \
- ENETC_PMD_LOG(CRIT, fmt, ## args)
-#define ENETC_PMD_INFO(fmt, args...) \
- ENETC_PMD_LOG(INFO, fmt, ## args)
-#define ENETC_PMD_NOTICE(fmt, args...) \
- ENETC_PMD_LOG(NOTICE, fmt, ## args)
-#define ENETC_PMD_ERR(fmt, args...) \
- ENETC_PMD_LOG(ERR, fmt, ## args)
-#define ENETC_PMD_WARN(fmt, args...) \
- ENETC_PMD_LOG(WARNING, fmt, ## args)
+#define ENETC_PMD_CRIT(fmt, ...) \
+ ENETC_PMD_LOG(CRIT, fmt, ## __VA_ARGS__)
+#define ENETC_PMD_INFO(fmt, ...) \
+ ENETC_PMD_LOG(INFO, fmt, ## __VA_ARGS__)
+#define ENETC_PMD_NOTICE(fmt, ...) \
+ ENETC_PMD_LOG(NOTICE, fmt, ## __VA_ARGS__)
+#define ENETC_PMD_ERR(fmt, ...) \
+ ENETC_PMD_LOG(ERR, fmt, ## __VA_ARGS__)
+#define ENETC_PMD_WARN(fmt, ...) \
+ ENETC_PMD_LOG(WARNING, fmt, ## __VA_ARGS__)
/* DP Logs, toggled out at compile time if level lower than current level */
#define ENETC_PMD_DP_LOG(level, ...) \
RTE_LOG_DP_LINE(level, ENETC_NET, __VA_ARGS__)
-#define ENETC_PMD_DP_DEBUG(fmt, args...) \
- ENETC_PMD_DP_LOG(DEBUG, fmt, ## args)
-#define ENETC_PMD_DP_INFO(fmt, args...) \
- ENETC_PMD_DP_LOG(INFO, fmt, ## args)
-#define ENETC_PMD_DP_WARN(fmt, args...) \
- ENETC_PMD_DP_LOG(WARNING, fmt, ## args)
+#define ENETC_PMD_DP_DEBUG(fmt, ...) \
+ ENETC_PMD_DP_LOG(DEBUG, fmt, ## __VA_ARGS__)
+#define ENETC_PMD_DP_INFO(fmt, ...) \
+ ENETC_PMD_DP_LOG(INFO, fmt, ## __VA_ARGS__)
+#define ENETC_PMD_DP_WARN(fmt, ...) \
+ ENETC_PMD_DP_LOG(WARNING, fmt, ## __VA_ARGS__)
#endif /* _ENETC_LOGS_H_*/
diff --git a/drivers/net/enetfec/enet_pmd_logs.h b/drivers/net/enetfec/enet_pmd_logs.h
index 7580b5c8cc..65498f62f4 100644
--- a/drivers/net/enetfec/enet_pmd_logs.h
+++ b/drivers/net/enetfec/enet_pmd_logs.h
@@ -16,15 +16,15 @@ extern int enetfec_logtype_pmd;
#define PMD_INIT_FUNC_TRACE() ENET_PMD_LOG(DEBUG, " >>")
-#define ENETFEC_PMD_DEBUG(fmt, args...) \
- ENETFEC_PMD_LOG(DEBUG, fmt, ## args)
-#define ENETFEC_PMD_ERR(fmt, args...) \
- ENETFEC_PMD_LOG(ERR, fmt, ## args)
-#define ENETFEC_PMD_INFO(fmt, args...) \
- ENETFEC_PMD_LOG(INFO, fmt, ## args)
-
-#define ENETFEC_PMD_WARN(fmt, args...) \
- ENETFEC_PMD_LOG(WARNING, fmt, ## args)
+#define ENETFEC_PMD_DEBUG(fmt, ...) \
+ ENETFEC_PMD_LOG(DEBUG, fmt, ## __VA_ARGS__)
+#define ENETFEC_PMD_ERR(fmt, ...) \
+ ENETFEC_PMD_LOG(ERR, fmt, ## __VA_ARGS__)
+#define ENETFEC_PMD_INFO(fmt, ...) \
+ ENETFEC_PMD_LOG(INFO, fmt, ## __VA_ARGS__)
+
+#define ENETFEC_PMD_WARN(fmt, ...) \
+ ENETFEC_PMD_LOG(WARNING, fmt, ## __VA_ARGS__)
/* DP Logs, toggled out at compile time if level lower than current level */
#define ENETFEC_DP_LOG(level, ...) \
diff --git a/drivers/net/enic/enic_compat.h b/drivers/net/enic/enic_compat.h
index 6d766bcd14..7cff6831b9 100644
--- a/drivers/net/enic/enic_compat.h
+++ b/drivers/net/enic/enic_compat.h
@@ -18,8 +18,8 @@
#define __iomem
-#define pr_err(y, args...) dev_err(0, y, ##args)
-#define pr_warn(y, args...) dev_warning(0, y, ##args)
+#define pr_err(y, ...) dev_err(0, y, ##__VA_ARGS__)
+#define pr_warn(y, ...) dev_warning(0, y, ##__VA_ARGS__)
#define BUG() pr_err("BUG at %s:%d", __func__, __LINE__)
#define VNIC_ALIGN(x, a) __ALIGN_MASK(x, (typeof(x))(a)-1)
@@ -28,14 +28,14 @@
extern int enic_pmd_logtype;
#define RTE_LOGTYPE_ENIC_PMD enic_pmd_logtype
-#define dev_printk(level, fmt, args...) \
+#define dev_printk(level, fmt, ...) \
rte_log(RTE_LOG_ ## level, enic_pmd_logtype, \
- "PMD: rte_enic_pmd: " fmt, ##args)
+ "PMD: rte_enic_pmd: " fmt, ##__VA_ARGS__)
-#define dev_err(x, args...) dev_printk(ERR, args)
-#define dev_info(x, args...) dev_printk(INFO, args)
-#define dev_warning(x, args...) dev_printk(WARNING, args)
-#define dev_debug(x, args...) dev_printk(DEBUG, args)
+#define dev_err(x, ...) dev_printk(ERR, __VA_ARGS__)
+#define dev_info(x, ...) dev_printk(INFO, __VA_ARGS__)
+#define dev_warning(x, ...) dev_printk(WARNING, __VA_ARGS__)
+#define dev_debug(x, ...) dev_printk(DEBUG, __VA_ARGS__)
#define ENICPMD_LOG(level, ...) \
RTE_LOG_LINE_PREFIX(level, ENIC_PMD, "%s ", __func__, __VA_ARGS__)
diff --git a/drivers/net/fm10k/base/fm10k_osdep.h b/drivers/net/fm10k/base/fm10k_osdep.h
index d3e5528575..837010770a 100644
--- a/drivers/net/fm10k/base/fm10k_osdep.h
+++ b/drivers/net/fm10k/base/fm10k_osdep.h
@@ -25,11 +25,11 @@
#define STATIC static
#define DEBUGFUNC(F) DEBUGOUT(F "\n");
#define DEBUGOUT(S, ...) RTE_LOG(DEBUG, FM10K_DRIVER, "%s(): " S, __func__, ## __VA_ARGS__)
-#define DEBUGOUT1(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT2(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT3(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT6(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT7(S, args...) DEBUGOUT(S, ##args)
+#define DEBUGOUT1(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT2(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT3(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT6(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT7(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
#define FALSE 0
#define TRUE 1
diff --git a/drivers/net/hns3/hns3_logs.h b/drivers/net/hns3/hns3_logs.h
index d468c353fa..c2652cc17a 100644
--- a/drivers/net/hns3/hns3_logs.h
+++ b/drivers/net/hns3/hns3_logs.h
@@ -17,20 +17,20 @@ extern int hns3_logtype_driver;
RTE_LOG_LINE_PREFIX(level, HNS3_DRIVER, "%s %s(): ", \
(hw)->data->name RTE_LOG_COMMA __func__, __VA_ARGS__)
-#define hns3_err(hw, fmt, args...) \
- PMD_DRV_LOG(hw, ERR, fmt, ## args)
+#define hns3_err(hw, fmt, ...) \
+ PMD_DRV_LOG(hw, ERR, fmt, ## __VA_ARGS__)
-#define hns3_warn(hw, fmt, args...) \
- PMD_DRV_LOG(hw, WARNING, fmt, ## args)
+#define hns3_warn(hw, fmt, ...) \
+ PMD_DRV_LOG(hw, WARNING, fmt, ## __VA_ARGS__)
-#define hns3_notice(hw, fmt, args...) \
- PMD_DRV_LOG(hw, NOTICE, fmt, ## args)
+#define hns3_notice(hw, fmt, ...) \
+ PMD_DRV_LOG(hw, NOTICE, fmt, ## __VA_ARGS__)
-#define hns3_info(hw, fmt, args...) \
- PMD_DRV_LOG(hw, INFO, fmt, ## args)
+#define hns3_info(hw, fmt, ...) \
+ PMD_DRV_LOG(hw, INFO, fmt, ## __VA_ARGS__)
-#define hns3_dbg(hw, fmt, args...) \
- PMD_DRV_LOG(hw, DEBUG, fmt, ## args)
+#define hns3_dbg(hw, fmt, ...) \
+ PMD_DRV_LOG(hw, DEBUG, fmt, ## __VA_ARGS__)
#ifdef RTE_ETHDEV_DEBUG_RX
extern int hns3_logtype_rx;
diff --git a/drivers/net/i40e/base/i40e_osdep.h b/drivers/net/i40e/base/i40e_osdep.h
index 8960206d8b..302841dba8 100644
--- a/drivers/net/i40e/base/i40e_osdep.h
+++ b/drivers/net/i40e/base/i40e_osdep.h
@@ -34,7 +34,7 @@ typedef uint64_t u64;
typedef enum i40e_status_code i40e_status;
#define __iomem
-#define hw_dbg(hw, S, A...) do {} while (0)
+#define hw_dbg(hw, S, ...) do {} while (0)
#define upper_32_bits(n) ((u32)(((n) >> 16) >> 16))
#define lower_32_bits(n) ((u32)(n))
#define low_16_bits(x) ((x) & 0xFFFF)
diff --git a/drivers/net/ice/base/ice_osdep.h b/drivers/net/ice/base/ice_osdep.h
index 5f7347023f..64e4779878 100644
--- a/drivers/net/ice/base/ice_osdep.h
+++ b/drivers/net/ice/base/ice_osdep.h
@@ -154,8 +154,8 @@ do { \
##__VA_ARGS__); \
} while (0)
-#define ice_info(hw, fmt, args...) ice_debug(hw, ICE_DBG_ALL, fmt, ##args)
-#define ice_warn(hw, fmt, args...) ice_debug(hw, ICE_DBG_ALL, fmt, ##args)
+#define ice_info(hw, fmt, ...) ice_debug(hw, ICE_DBG_ALL, fmt, ##__VA_ARGS__)
+#define ice_warn(hw, fmt, ...) ice_debug(hw, ICE_DBG_ALL, fmt, ##__VA_ARGS__)
#define ice_debug_array(hw, type, rowsize, groupsize, buf, len) \
do { \
struct ice_hw *hw_l = hw; \
diff --git a/drivers/net/igc/base/igc_osdep.h b/drivers/net/igc/base/igc_osdep.h
index 4e479eb500..b938dfd2b5 100644
--- a/drivers/net/igc/base/igc_osdep.h
+++ b/drivers/net/igc/base/igc_osdep.h
@@ -28,11 +28,11 @@
#define DEBUGFUNC(F) DEBUGOUT(F "\n")
#define DEBUGOUT(S, ...) RTE_LOG(DEBUG, IGC_DRIVER, "%s(): " S, __func__, ## __VA_ARGS__)
-#define DEBUGOUT1(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT2(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT3(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT6(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT7(S, args...) DEBUGOUT(S, ##args)
+#define DEBUGOUT1(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT2(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT3(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT6(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT7(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
#define UNREFERENCED_PARAMETER(_p) (void)(_p)
#define UNREFERENCED_1PARAMETER(_p) (void)(_p)
diff --git a/drivers/net/ipn3ke/ipn3ke_logs.h b/drivers/net/ipn3ke/ipn3ke_logs.h
index 42dceeeab1..ff283b2b19 100644
--- a/drivers/net/ipn3ke/ipn3ke_logs.h
+++ b/drivers/net/ipn3ke/ipn3ke_logs.h
@@ -15,16 +15,16 @@ extern int ipn3ke_afu_logtype;
#define IPN3KE_AFU_PMD_FUNC_TRACE() IPN3KE_AFU_PMD_LOG(DEBUG, ">>")
-#define IPN3KE_AFU_PMD_DEBUG(fmt, args...) \
- IPN3KE_AFU_PMD_LOG(DEBUG, fmt, ## args)
+#define IPN3KE_AFU_PMD_DEBUG(fmt, ...) \
+ IPN3KE_AFU_PMD_LOG(DEBUG, fmt, ## __VA_ARGS__)
-#define IPN3KE_AFU_PMD_INFO(fmt, args...) \
- IPN3KE_AFU_PMD_LOG(INFO, fmt, ## args)
+#define IPN3KE_AFU_PMD_INFO(fmt, ...) \
+ IPN3KE_AFU_PMD_LOG(INFO, fmt, ## __VA_ARGS__)
-#define IPN3KE_AFU_PMD_ERR(fmt, args...) \
- IPN3KE_AFU_PMD_LOG(ERR, fmt, ## args)
+#define IPN3KE_AFU_PMD_ERR(fmt, ...) \
+ IPN3KE_AFU_PMD_LOG(ERR, fmt, ## __VA_ARGS__)
-#define IPN3KE_AFU_PMD_WARN(fmt, args...) \
- IPN3KE_AFU_PMD_LOG(WARNING, fmt, ## args)
+#define IPN3KE_AFU_PMD_WARN(fmt, ...) \
+ IPN3KE_AFU_PMD_LOG(WARNING, fmt, ## __VA_ARGS__)
#endif /* _IPN3KE_LOGS_H_ */
diff --git a/drivers/net/ixgbe/base/ixgbe_osdep.h b/drivers/net/ixgbe/base/ixgbe_osdep.h
index 502f386b56..30d952f047 100644
--- a/drivers/net/ixgbe/base/ixgbe_osdep.h
+++ b/drivers/net/ixgbe/base/ixgbe_osdep.h
@@ -34,15 +34,15 @@
#define DEBUGFUNC(F) DEBUGOUT(F "\n");
#define DEBUGOUT(S, ...) RTE_LOG(DEBUG, IXGBE_DRIVER, "%s(): " S, __func__, ## __VA_ARGS__)
-#define DEBUGOUT1(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT2(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT3(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT6(S, args...) DEBUGOUT(S, ##args)
-#define DEBUGOUT7(S, args...) DEBUGOUT(S, ##args)
+#define DEBUGOUT1(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT2(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT3(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT6(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define DEBUGOUT7(S, ...) DEBUGOUT(S, ##__VA_ARGS__)
-#define ERROR_REPORT1(e, S, args...) DEBUGOUT(S, ##args)
-#define ERROR_REPORT2(e, S, args...) DEBUGOUT(S, ##args)
-#define ERROR_REPORT3(e, S, args...) DEBUGOUT(S, ##args)
+#define ERROR_REPORT1(e, S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define ERROR_REPORT2(e, S, ...) DEBUGOUT(S, ##__VA_ARGS__)
+#define ERROR_REPORT3(e, S, ...) DEBUGOUT(S, ##__VA_ARGS__)
#define FALSE 0
#define TRUE 1
@@ -50,19 +50,19 @@
#define false 0
#define true 1
#ifndef RTE_EXEC_ENV_WINDOWS
-#define min(a,b) RTE_MIN(a,b)
+#define min(a, b) RTE_MIN(a, b)
#endif
-#define EWARN(hw, S, args...) DEBUGOUT1(S, ##args)
+#define EWARN(hw, S, ...) DEBUGOUT1(S, ##__VA_ARGS__)
/* Bunch of defines for shared code bogosity */
#ifndef UNREFERENCED_PARAMETER
-#define UNREFERENCED_PARAMETER(_p)
+#define UNREFERENCED_PARAMETER(_p)
#endif
-#define UNREFERENCED_1PARAMETER(_p)
+#define UNREFERENCED_1PARAMETER(_p)
#define UNREFERENCED_2PARAMETER(_p, _q)
-#define UNREFERENCED_3PARAMETER(_p, _q, _r)
-#define UNREFERENCED_4PARAMETER(_p, _q, _r, _s)
+#define UNREFERENCED_3PARAMETER(_p, _q, _r)
+#define UNREFERENCED_4PARAMETER(_p, _q, _r, _s)
#define UNREFERENCED_5PARAMETER(_p, _q, _r, _s, _t)
/* Shared code error reporting */
@@ -130,7 +130,7 @@ static inline uint32_t ixgbe_read_addr(volatile void* addr)
IXGBE_PCI_REG_ADDR((hw), (reg) + ((index) << 2))
/* Not implemented !! */
-#define IXGBE_READ_PCIE_WORD(hw, reg) 0
+#define IXGBE_READ_PCIE_WORD(hw, reg) 0
#define IXGBE_WRITE_PCIE_WORD(hw, reg, value) do { } while(0)
#define IXGBE_WRITE_FLUSH(a) IXGBE_READ_REG(a, IXGBE_STATUS)
diff --git a/drivers/net/ngbe/base/ngbe_osdep.h b/drivers/net/ngbe/base/ngbe_osdep.h
index 30598a240a..ca50455ab2 100644
--- a/drivers/net/ngbe/base/ngbe_osdep.h
+++ b/drivers/net/ngbe/base/ngbe_osdep.h
@@ -55,7 +55,7 @@
/* Bunch of defines for shared code bogosity */
static inline void UNREFERENCED(const char *a __rte_unused, ...) {}
-#define UNREFERENCED_PARAMETER(args...) UNREFERENCED("", ##args)
+#define UNREFERENCED_PARAMETER(...) UNREFERENCED("", ##__VA_ARGS__)
#define STATIC static
diff --git a/drivers/net/ngbe/ngbe_logs.h b/drivers/net/ngbe/ngbe_logs.h
index f6c1ee66d9..7abf979648 100644
--- a/drivers/net/ngbe/ngbe_logs.h
+++ b/drivers/net/ngbe/ngbe_logs.h
@@ -37,7 +37,7 @@ extern int ngbe_logtype_tx;
#define PMD_TX_LOG(...) do { } while (0)
#endif
-#define DEBUGOUT(fmt, args...) PMD_DRV_LOG(DEBUG, fmt, ##args)
+#define DEBUGOUT(fmt, ...) PMD_DRV_LOG(DEBUG, fmt, ##__VA_ARGS__)
#define PMD_INIT_FUNC_TRACE() PMD_DRV_LOG(DEBUG, ">>")
#endif /* _NGBE_LOGS_H_ */
diff --git a/drivers/net/pfe/pfe_logs.h b/drivers/net/pfe/pfe_logs.h
index d0b6943a26..1453e8284b 100644
--- a/drivers/net/pfe/pfe_logs.h
+++ b/drivers/net/pfe/pfe_logs.h
@@ -14,15 +14,15 @@ extern int pfe_logtype_pmd;
#define PMD_INIT_FUNC_TRACE() PFE_PMD_LOG(DEBUG, " >>")
-#define PFE_PMD_DEBUG(fmt, args...) \
- PFE_PMD_LOG(DEBUG, fmt, ## args)
-#define PFE_PMD_ERR(fmt, args...) \
- PFE_PMD_LOG(ERR, fmt, ## args)
-#define PFE_PMD_INFO(fmt, args...) \
- PFE_PMD_LOG(INFO, fmt, ## args)
-
-#define PFE_PMD_WARN(fmt, args...) \
- PFE_PMD_LOG(WARNING, fmt, ## args)
+#define PFE_PMD_DEBUG(fmt, ...) \
+ PFE_PMD_LOG(DEBUG, fmt, ## __VA_ARGS__)
+#define PFE_PMD_ERR(fmt, ...) \
+ PFE_PMD_LOG(ERR, fmt, ## __VA_ARGS__)
+#define PFE_PMD_INFO(fmt, ...) \
+ PFE_PMD_LOG(INFO, fmt, ## __VA_ARGS__)
+
+#define PFE_PMD_WARN(fmt, ...) \
+ PFE_PMD_LOG(WARNING, fmt, ## __VA_ARGS__)
/* DP Logs, toggled out at compile time if level lower than current level */
#define PFE_DP_LOG(level, ...) \
diff --git a/drivers/net/qede/qede_ethdev.h b/drivers/net/qede/qede_ethdev.h
index b781bcdcfd..80a59c46c8 100644
--- a/drivers/net/qede/qede_ethdev.h
+++ b/drivers/net/qede/qede_ethdev.h
@@ -39,8 +39,8 @@
#include "qede_if.h"
#include "qede_rxtx.h"
-#define qede_stringify1(x...) #x
-#define qede_stringify(x...) qede_stringify1(x)
+#define qede_stringify1(...) #__VA_ARGS__
+#define qede_stringify(...) qede_stringify1(__VA_ARGS__)
/* Driver versions */
#define QEDE_PMD_DRV_VER_STR_SIZE NAME_SIZE /* 128 */
diff --git a/drivers/net/qede/qede_logs.h b/drivers/net/qede/qede_logs.h
index f67052d106..afaef60984 100644
--- a/drivers/net/qede/qede_logs.h
+++ b/drivers/net/qede/qede_logs.h
@@ -51,27 +51,27 @@ do { \
} while (0)
extern int qede_logtype_init;
-#define PMD_INIT_LOG(level, edev, fmt, args...) \
+#define PMD_INIT_LOG(level, edev, fmt, ...) \
rte_log(RTE_LOG_ ## level, qede_logtype_init, \
"[qede_pmd: %s] %s() " fmt "\n", \
- (edev)->name, __func__, ##args)
+ (edev)->name, __func__, ## __VA_ARGS__)
#define PMD_INIT_FUNC_TRACE(edev) PMD_INIT_LOG(DEBUG, edev, " >>")
#ifdef RTE_LIBRTE_QEDE_DEBUG_TX
-#define PMD_TX_LOG(level, q, fmt, args...) \
+#define PMD_TX_LOG(level, q, fmt, ...) \
RTE_LOG(level, QEDE_DRIVER, "%s(): port=%u queue=%u " fmt "\n", \
- __func__, q->port_id, q->queue_id, ## args)
+ __func__, (q)->port_id, (q)->queue_id, ## __VA_ARGS__)
#else
-#define PMD_TX_LOG(level, fmt, args...) do { } while (0)
+#define PMD_TX_LOG(level, fmt, ...) do { } while (0)
#endif
#ifdef RTE_LIBRTE_QEDE_DEBUG_RX
-#define PMD_RX_LOG(level, q, fmt, args...) \
+#define PMD_RX_LOG(level, q, fmt, ...) \
RTE_LOG(level, QEDE_DRIVER, "%s(): port=%u queue=%u " fmt "\n", \
- __func__, q->port_id, q->queue_id, ## args)
+ __func__, (q)->port_id, (q)->queue_id, ## __VA_ARGS__)
#else
-#define PMD_RX_LOG(level, q, fmt, args...) do { } while (0)
+#define PMD_RX_LOG(level, q, fmt, ...) do { } while (0)
#endif
#endif /* _QEDE_LOGS_H_ */
diff --git a/drivers/net/sfc/sfc_debug.h b/drivers/net/sfc/sfc_debug.h
index f63fb02c83..7088a41a65 100644
--- a/drivers/net/sfc/sfc_debug.h
+++ b/drivers/net/sfc/sfc_debug.h
@@ -23,7 +23,7 @@
#endif
/* Log PMD message, automatically add prefix and \n */
-#define sfc_panic(sa, fmt, args...) \
+#define sfc_panic(sa, fmt, ...) \
do { \
const struct sfc_adapter_shared *_sas; \
\
@@ -32,7 +32,7 @@
" #%" PRIu16 ": " fmt "\n", \
_sas->pci_addr.domain, _sas->pci_addr.bus, \
_sas->pci_addr.devid, _sas->pci_addr.function,\
- _sas->port_id, ##args); \
+ _sas->port_id, ##__VA_ARGS__); \
} while (0)
#endif /* _SFC_DEBUG_H_ */
diff --git a/drivers/net/txgbe/base/txgbe_osdep.h b/drivers/net/txgbe/base/txgbe_osdep.h
index 91c8abf12e..a1477653e2 100644
--- a/drivers/net/txgbe/base/txgbe_osdep.h
+++ b/drivers/net/txgbe/base/txgbe_osdep.h
@@ -60,7 +60,7 @@ extern int txgbe_logtype_bp;
/* Bunch of defines for shared code bogosity */
static inline void UNREFERENCED(const char *a __rte_unused, ...) {}
-#define UNREFERENCED_PARAMETER(args...) UNREFERENCED("", ##args)
+#define UNREFERENCED_PARAMETER(...) UNREFERENCED("", ##__VA_ARGS__)
#define STATIC static
diff --git a/drivers/net/txgbe/txgbe_logs.h b/drivers/net/txgbe/txgbe_logs.h
index e6e570734c..3c9ace6daf 100644
--- a/drivers/net/txgbe/txgbe_logs.h
+++ b/drivers/net/txgbe/txgbe_logs.h
@@ -49,7 +49,7 @@ extern int txgbe_logtype_tx_free;
#define PMD_TX_FREE_LOG(...) do { } while (0)
#endif
-#define DEBUGOUT(fmt, args...) PMD_DRV_LOG(DEBUG, fmt, ##args)
+#define DEBUGOUT(fmt, ...) PMD_DRV_LOG(DEBUG, fmt, ##__VA_ARGS__)
#define PMD_INIT_FUNC_TRACE() PMD_DRV_LOG(DEBUG, ">>")
#endif /* _TXGBE_LOGS_H_ */
--
2.47.0.vfs.0.3
next prev parent reply other threads:[~2024-12-11 22:08 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 ` [PATCH 09/21] drivers/crypto: " Andre Muezerie
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 ` Andre Muezerie [this message]
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=1733954844-24397-13-git-send-email-andremue@linux.microsoft.com \
--to=andremue@linux.microsoft.com \
--cc=dev@dpdk.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.