From: Tal Shnaiderman <talshn@nvidia.com>
To: dev@dpdk.org
Cc: thomas@monjalon.net, matan@nvidia.com, rasland@nvidia.com,
ophirmu@nvidia.com
Subject: [dpdk-dev] [PATCH v2 08/33] net/mlx5: move static_assert calls to global scope
Date: Thu, 10 Dec 2020 17:06:23 +0200 [thread overview]
Message-ID: <20201210150648.8784-9-talshn@nvidia.com> (raw)
In-Reply-To: <20201210150648.8784-1-talshn@nvidia.com>
From: Ophir Munk <ophirmu@nvidia.com>
Some Windows compilers consider static_assert() as calls to another
function rather than a compiler directive which allows checking type
information at compile time. This only occurs if the static_assert call
appears inside another function scope. To solve it move the
static_assert calls to global scope in the files where they are used.
Signed-off-by: Ophir Munk <ophirmu@nvidia.com>
Acked-by: Matan Azrad <matan@nvidia.com>
---
drivers/net/mlx5/mlx5_rxtx.c | 98 ++++++++++++++++++++++----------------------
drivers/net/mlx5/mlx5_txpp.c | 5 ++-
2 files changed, 53 insertions(+), 50 deletions(-)
diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c
index d12d746c2f..65a1f997e9 100644
--- a/drivers/net/mlx5/mlx5_rxtx.c
+++ b/drivers/net/mlx5/mlx5_rxtx.c
@@ -79,6 +79,56 @@ static uint16_t mlx5_tx_burst_##func(void *txq, \
#define MLX5_TXOFF_INFO(func, olx) {mlx5_tx_burst_##func, olx},
+/* static asserts */
+static_assert(MLX5_CQE_STATUS_HW_OWN < 0, "Must be negative value");
+static_assert(MLX5_CQE_STATUS_SW_OWN < 0, "Must be negative value");
+static_assert(MLX5_ESEG_MIN_INLINE_SIZE ==
+ (sizeof(uint16_t) +
+ sizeof(rte_v128u32_t)),
+ "invalid Ethernet Segment data size");
+static_assert(MLX5_ESEG_MIN_INLINE_SIZE ==
+ (sizeof(uint16_t) +
+ sizeof(struct rte_vlan_hdr) +
+ 2 * RTE_ETHER_ADDR_LEN),
+ "invalid Ethernet Segment data size");
+static_assert(MLX5_ESEG_MIN_INLINE_SIZE ==
+ (sizeof(uint16_t) +
+ sizeof(rte_v128u32_t)),
+ "invalid Ethernet Segment data size");
+static_assert(MLX5_ESEG_MIN_INLINE_SIZE ==
+ (sizeof(uint16_t) +
+ sizeof(struct rte_vlan_hdr) +
+ 2 * RTE_ETHER_ADDR_LEN),
+ "invalid Ethernet Segment data size");
+static_assert(MLX5_ESEG_MIN_INLINE_SIZE ==
+ (sizeof(uint16_t) +
+ sizeof(rte_v128u32_t)),
+ "invalid Ethernet Segment data size");
+static_assert(MLX5_ESEG_MIN_INLINE_SIZE ==
+ (sizeof(uint16_t) +
+ sizeof(struct rte_vlan_hdr) +
+ 2 * RTE_ETHER_ADDR_LEN),
+ "invalid Ethernet Segment data size");
+static_assert(MLX5_DSEG_MIN_INLINE_SIZE ==
+ (2 * RTE_ETHER_ADDR_LEN),
+ "invalid Data Segment data size");
+static_assert(MLX5_EMPW_MIN_PACKETS >= 2, "invalid min size");
+static_assert(MLX5_EMPW_MIN_PACKETS >= 2, "invalid min size");
+static_assert((sizeof(struct rte_vlan_hdr) +
+ sizeof(struct rte_ether_hdr)) ==
+ MLX5_ESEG_MIN_INLINE_SIZE,
+ "invalid min inline data size");
+static_assert(MLX5_WQE_SIZE_MAX / MLX5_WSEG_SIZE <=
+ MLX5_DSEG_MAX, "invalid WQE max size");
+static_assert(MLX5_WQE_CSEG_SIZE == MLX5_WSEG_SIZE,
+ "invalid WQE Control Segment size");
+static_assert(MLX5_WQE_ESEG_SIZE == MLX5_WSEG_SIZE,
+ "invalid WQE Ethernet Segment size");
+static_assert(MLX5_WQE_DSEG_SIZE == MLX5_WSEG_SIZE,
+ "invalid WQE Data Segment size");
+static_assert(MLX5_WQE_SIZE == 4 * MLX5_WSEG_SIZE,
+ "invalid WQE size");
+
static __rte_always_inline uint32_t
rxq_cq_to_pkt_type(struct mlx5_rxq_data *rxq, volatile struct mlx5_cqe *cqe,
volatile struct mlx5_mini_cqe8 *mcqe);
@@ -2070,8 +2120,6 @@ mlx5_tx_handle_completion(struct mlx5_txq_data *__rte_restrict txq,
bool ring_doorbell = false;
int ret;
- static_assert(MLX5_CQE_STATUS_HW_OWN < 0, "Must be negative value");
- static_assert(MLX5_CQE_STATUS_SW_OWN < 0, "Must be negative value");
do {
volatile struct mlx5_cqe *cqe;
@@ -2381,15 +2429,6 @@ mlx5_tx_eseg_dmin(struct mlx5_txq_data *__rte_restrict txq __rte_unused,
es->metadata = MLX5_TXOFF_CONFIG(METADATA) ?
loc->mbuf->ol_flags & PKT_TX_DYNF_METADATA ?
*RTE_FLOW_DYNF_METADATA(loc->mbuf) : 0 : 0;
- static_assert(MLX5_ESEG_MIN_INLINE_SIZE ==
- (sizeof(uint16_t) +
- sizeof(rte_v128u32_t)),
- "invalid Ethernet Segment data size");
- static_assert(MLX5_ESEG_MIN_INLINE_SIZE ==
- (sizeof(uint16_t) +
- sizeof(struct rte_vlan_hdr) +
- 2 * RTE_ETHER_ADDR_LEN),
- "invalid Ethernet Segment data size");
psrc = rte_pktmbuf_mtod(loc->mbuf, uint8_t *);
es->inline_hdr_sz = RTE_BE16(MLX5_ESEG_MIN_INLINE_SIZE);
es->inline_data = *(unaligned_uint16_t *)psrc;
@@ -2474,15 +2513,6 @@ mlx5_tx_eseg_data(struct mlx5_txq_data *__rte_restrict txq,
es->metadata = MLX5_TXOFF_CONFIG(METADATA) ?
loc->mbuf->ol_flags & PKT_TX_DYNF_METADATA ?
*RTE_FLOW_DYNF_METADATA(loc->mbuf) : 0 : 0;
- static_assert(MLX5_ESEG_MIN_INLINE_SIZE ==
- (sizeof(uint16_t) +
- sizeof(rte_v128u32_t)),
- "invalid Ethernet Segment data size");
- static_assert(MLX5_ESEG_MIN_INLINE_SIZE ==
- (sizeof(uint16_t) +
- sizeof(struct rte_vlan_hdr) +
- 2 * RTE_ETHER_ADDR_LEN),
- "invalid Ethernet Segment data size");
psrc = rte_pktmbuf_mtod(loc->mbuf, uint8_t *);
es->inline_hdr_sz = rte_cpu_to_be_16(inlen);
es->inline_data = *(unaligned_uint16_t *)psrc;
@@ -2697,15 +2727,6 @@ mlx5_tx_eseg_mdat(struct mlx5_txq_data *__rte_restrict txq,
es->metadata = MLX5_TXOFF_CONFIG(METADATA) ?
loc->mbuf->ol_flags & PKT_TX_DYNF_METADATA ?
*RTE_FLOW_DYNF_METADATA(loc->mbuf) : 0 : 0;
- static_assert(MLX5_ESEG_MIN_INLINE_SIZE ==
- (sizeof(uint16_t) +
- sizeof(rte_v128u32_t)),
- "invalid Ethernet Segment data size");
- static_assert(MLX5_ESEG_MIN_INLINE_SIZE ==
- (sizeof(uint16_t) +
- sizeof(struct rte_vlan_hdr) +
- 2 * RTE_ETHER_ADDR_LEN),
- "invalid Ethernet Segment data size");
MLX5_ASSERT(inlen >= MLX5_ESEG_MIN_INLINE_SIZE);
pdst = (uint8_t *)&es->inline_data;
if (MLX5_TXOFF_CONFIG(VLAN) && vlan) {
@@ -2952,9 +2973,6 @@ mlx5_tx_dseg_vlan(struct mlx5_txq_data *__rte_restrict txq,
uint8_t *pdst;
MLX5_ASSERT(len > MLX5_ESEG_MIN_INLINE_SIZE);
- static_assert(MLX5_DSEG_MIN_INLINE_SIZE ==
- (2 * RTE_ETHER_ADDR_LEN),
- "invalid Data Segment data size");
if (!MLX5_TXOFF_CONFIG(MPW)) {
/* Store the descriptor byte counter for eMPW sessions. */
dseg->bcount = rte_cpu_to_be_32
@@ -4070,7 +4088,6 @@ mlx5_tx_burst_empw_simple(struct mlx5_txq_data *__rte_restrict txq,
MLX5_ASSERT(MLX5_TXOFF_CONFIG(EMPW));
MLX5_ASSERT(loc->elts_free && loc->wqe_free);
MLX5_ASSERT(pkts_n > loc->pkts_sent);
- static_assert(MLX5_EMPW_MIN_PACKETS >= 2, "invalid min size");
pkts += loc->pkts_sent + 1;
pkts_n -= loc->pkts_sent;
for (;;) {
@@ -4247,7 +4264,6 @@ mlx5_tx_burst_empw_inline(struct mlx5_txq_data *__rte_restrict txq,
MLX5_ASSERT(MLX5_TXOFF_CONFIG(EMPW));
MLX5_ASSERT(loc->elts_free && loc->wqe_free);
MLX5_ASSERT(pkts_n > loc->pkts_sent);
- static_assert(MLX5_EMPW_MIN_PACKETS >= 2, "invalid min size");
pkts += loc->pkts_sent + 1;
pkts_n -= loc->pkts_sent;
for (;;) {
@@ -4561,10 +4577,6 @@ mlx5_tx_burst_single_send(struct mlx5_txq_data *__rte_restrict txq,
loc->mbuf->ol_flags & PKT_TX_VLAN_PKT) {
vlan = sizeof(struct rte_vlan_hdr);
inlen += vlan;
- static_assert((sizeof(struct rte_vlan_hdr) +
- sizeof(struct rte_ether_hdr)) ==
- MLX5_ESEG_MIN_INLINE_SIZE,
- "invalid min inline data size");
}
/*
* If inlining is enabled at configuration time
@@ -5567,16 +5579,6 @@ mlx5_select_tx_function(struct rte_eth_dev *dev)
uint64_t tx_offloads = dev->data->dev_conf.txmode.offloads;
unsigned int diff = 0, olx = 0, i, m;
- static_assert(MLX5_WQE_SIZE_MAX / MLX5_WSEG_SIZE <=
- MLX5_DSEG_MAX, "invalid WQE max size");
- static_assert(MLX5_WQE_CSEG_SIZE == MLX5_WSEG_SIZE,
- "invalid WQE Control Segment size");
- static_assert(MLX5_WQE_ESEG_SIZE == MLX5_WSEG_SIZE,
- "invalid WQE Ethernet Segment size");
- static_assert(MLX5_WQE_DSEG_SIZE == MLX5_WSEG_SIZE,
- "invalid WQE Data Segment size");
- static_assert(MLX5_WQE_SIZE == 4 * MLX5_WSEG_SIZE,
- "invalid WQE size");
MLX5_ASSERT(priv);
if (tx_offloads & DEV_TX_OFFLOAD_MULTI_SEGS) {
/* We should support Multi-Segment Packets. */
diff --git a/drivers/net/mlx5/mlx5_txpp.c b/drivers/net/mlx5/mlx5_txpp.c
index a1ec294942..d61e43e55d 100644
--- a/drivers/net/mlx5/mlx5_txpp.c
+++ b/drivers/net/mlx5/mlx5_txpp.c
@@ -18,6 +18,9 @@
#include "mlx5_rxtx.h"
#include "mlx5_common_os.h"
+static_assert(sizeof(struct mlx5_cqe_ts) == sizeof(rte_int128_t),
+ "Wrong timestamp CQE part size");
+
static const char * const mlx5_txpp_stat_names[] = {
"tx_pp_missed_interrupt_errors", /* Missed service interrupt. */
"tx_pp_rearm_queue_errors", /* Rearm Queue errors. */
@@ -741,8 +744,6 @@ mlx5_txpp_update_timestamp(struct mlx5_dev_ctx_shared *sh)
uint64_t ts;
uint16_t ci;
- static_assert(sizeof(struct mlx5_cqe_ts) == sizeof(rte_int128_t),
- "Wrong timestamp CQE part size");
mlx5_atomic_read_cqe((rte_int128_t *)&cqe->timestamp, &to.u128);
if (to.cts.op_own >> 4) {
DRV_LOG(DEBUG, "Clock Queue error sync lost.");
--
2.16.1.windows.4
next prev parent reply other threads:[~2020-12-10 15:10 UTC|newest]
Thread overview: 235+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-27 23:22 [dpdk-dev] [PATCH v1 00/72] mlx5 Windows support - part #5 Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 01/72] mlx5: fix relaxed ordering DevX flow Ophir Munk
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 00/33] mlx5 Windows support - part #5 Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 01/33] net/mlx5: fix folding constant array error Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 00/32] mlx5 Windows support - part #5 Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 01/32] net/mlx5: fix folding constant array error Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 00/32] mlx5 Windows support - part #5 Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 01/32] net/mlx5: fix folding constant array error Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 00/32] mlx5 Windows support - part #5 Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 01/32] net/mlx5: fix folding constant array error Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 02/32] net/mlx5/linux: extend device attributes getter Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 03/32] net/mlx5: remove Linux files from Windows compilation Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 04/32] net/mlx5: fix freeing packet pacing Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 05/32] net/mlx5: replace Linux sleep with rte sleep Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 06/32] net/mlx5: define mprq functions as static inline Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 07/32] net/mlx5: do not define static_assert in Windows Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 08/32] net/mlx5: move static_assert calls to global scope Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 09/32] net/mlx5: wrap glue alloc/dealloc PD with OS calls Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 10/32] net/mlx5: wrap glue reg/dereg UMEM " Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 11/32] net/mlx5: fix adding destroy flow action wrapper Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 12/32] common/mlx5: add definition HAVE_INFINIBAND_VERBS_H Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 13/32] common/mlx5/linux: handle memory allocations with alignment Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 14/32] common/mlx5/windows: " Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 15/32] common/mlx5/linux: wrap event channel APIs with OS calls Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 16/32] common/mlx5: add Windows exports file Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 17/32] common/mlx5: extend DevX query hca attributes command Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 18/32] common/mlx5: add DevX alloc PD command Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 19/32] common/mlx5/windows: add glue functions APIs Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 20/32] mlx5/windows: add mlx5 meson file Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 21/32] mlx5/windows: add initialization routine for external lib Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 22/32] mlx5/windows: generate file mlx5_autoconf.h Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 23/32] common/mlx5/windows: extend PRM match_param_bits struct Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 24/32] common/mlx5/windows: add getter functions Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 25/32] common/mlx5/windows: add OS alloc/dealloc pd Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 26/32] common/mlx5/windows: add OS umem reg/dereg API Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 27/32] net/mlx5: update MR prototypes for DevX Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 28/32] common/mlx5/windows: add OS reg/dereg MR Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 29/32] net/mlx5/windows: implement device attribute getter Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 30/32] net/mlx5/windows: add mlx5_os.c stubs Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 31/32] net/mlx5/windows: implement mlx5 mac addr add Tal Shnaiderman
2020-12-28 9:54 ` [dpdk-dev] [PATCH v5 32/32] net/mlx5: refactor eth dev ops for Windows Tal Shnaiderman
2020-12-30 18:16 ` [dpdk-dev] [PATCH v5 00/32] mlx5 Windows support - part #5 Raslan Darawsheh
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 02/32] net/mlx5/linux: extend device attributes getter Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 03/32] net/mlx5: remove Linux files from Windows compilation Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 04/32] net/mlx5: fix freeing packet pacing Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 05/32] net/mlx5: replace Linux sleep with rte sleep Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 06/32] net/mlx5: define mprq functions as static inline Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 07/32] net/mlx5: do not define static_assert in Windows Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 08/32] net/mlx5: move static_assert calls to global scope Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 09/32] net/mlx5: wrap glue alloc/dealloc PD with OS calls Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 10/32] net/mlx5: wrap glue reg/dereg UMEM " Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 11/32] net/mlx5: fix adding destroy flow action wrapper Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 12/32] common/mlx5: add definition HAVE_INFINIBAND_VERBS_H Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 13/32] common/mlx5/linux: handle memory allocations with alignment Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 14/32] common/mlx5/windows: " Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 15/32] common/mlx5/linux: wrap event channel APIs with OS calls Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 16/32] common/mlx5: add Windows exports file Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 17/32] common/mlx5: extend DevX query hca attributes command Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 18/32] common/mlx5: add DevX alloc PD command Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 19/32] common/mlx5/windows: add glue functions APIs Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 20/32] mlx5/windows: add mlx5 meson file Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 21/32] mlx5/windows: add initialization routine for external lib Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 22/32] mlx5/windows: generate file mlx5_autoconf.h Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 23/32] common/mlx5/windows: extend PRM match_param_bits struct Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 24/32] common/mlx5/windows: add getter functions Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 25/32] common/mlx5/windows: add OS alloc/dealloc pd Tal Shnaiderman
2020-12-13 20:49 ` [dpdk-dev] [PATCH v4 26/32] common/mlx5/windows: add OS umem reg/dereg API Tal Shnaiderman
2020-12-13 20:50 ` [dpdk-dev] [PATCH v4 27/32] net/mlx5: update MR prototypes for DevX Tal Shnaiderman
2020-12-13 20:50 ` [dpdk-dev] [PATCH v4 28/32] common/mlx5/windows: add OS reg/dereg MR Tal Shnaiderman
2020-12-13 20:50 ` [dpdk-dev] [PATCH v4 29/32] net/mlx5/windows: implement device attribute getter Tal Shnaiderman
2020-12-13 20:50 ` [dpdk-dev] [PATCH v4 30/32] net/mlx5/windows: add mlx5_os.c stubs Tal Shnaiderman
2020-12-13 20:50 ` [dpdk-dev] [PATCH v4 31/32] net/mlx5/windows: implement mlx5 mac addr add Tal Shnaiderman
2020-12-13 20:50 ` [dpdk-dev] [PATCH v4 32/32] net/mlx5: refactor eth dev ops for Windows Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 02/32] net/mlx5/linux: extend device attributes getter Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 03/32] net/mlx5: remove Linux files from Windows compilation Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 04/32] net/mlx5: fix freeing packet pacing Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 05/32] net/mlx5: replace Linux sleep with rte sleep Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 06/32] net/mlx5: define mprq functions as static inline Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 07/32] net/mlx5: do not define static_assert in Windows Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 08/32] net/mlx5: move static_assert calls to global scope Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 09/32] net/mlx5: wrap glue alloc/dealloc PD with OS calls Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 10/32] net/mlx5: wrap glue reg/dereg UMEM " Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 11/32] net/mlx5: fix adding destroy flow action wrapper Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 12/32] common/mlx5: add definition HAVE_INFINIBAND_VERBS_H Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 13/32] common/mlx5/linux: handle memory allocations with alignment Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 14/32] common/mlx5/windows: " Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 15/32] common/mlx5/linux: wrap event channel APIs with OS calls Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 16/32] common/mlx5: add Windows exports file Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 17/32] common/mlx5: extend DevX query hca attributes command Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 18/32] common/mlx5: add DevX alloc PD command Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 19/32] common/mlx5/windows: add glue functions APIs Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 20/32] mlx5/windows: add mlx5 meson file Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 21/32] mlx5/windows: add initialization routine for external lib Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 22/32] mlx5/windows: generate file mlx5_autoconf.h Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 23/32] common/mlx5/windows: extend PRM match_param_bits struct Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 24/32] common/mlx5/windows: add getter functions Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 25/32] common/mlx5/windows: add OS alloc/dealloc pd Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 26/32] common/mlx5/windows: add OS umem reg/dereg API Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 27/32] net/mlx5: update MR prototypes for DevX Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 28/32] common/mlx5/windows: add OS reg/dereg MR Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 29/32] net/mlx5/windows: implement device attribute getter Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 30/32] net/mlx5/windows: add mlx5_os.c stubs Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 31/32] net/mlx5/windows: implement mlx5 mac addr add Tal Shnaiderman
2020-12-13 10:20 ` [dpdk-dev] [PATCH v3 32/32] net/mlx5: refactor eth dev ops for Windows Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 02/33] net/mlx5/linux: extend device attributes getter Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 03/33] net/mlx5: remove Linux files from Windows compilation Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 04/33] net/mlx5: fix freeing packet pacing Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 05/33] net/mlx5: replace Linux sleep with rte sleep Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 06/33] net/mlx5: define mprq functions as static inline Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 07/33] net/mlx5: do not define static_assert in Windows Tal Shnaiderman
2020-12-10 15:06 ` Tal Shnaiderman [this message]
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 09/33] net/mlx5: wrap glue alloc/dealloc PD with OS calls Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 10/33] net/mlx5: wrap glue reg/dereg UMEM " Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 11/33] net/mlx5: fix adding destroy flow action wrapper Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 12/33] common/mlx5: add definition HAVE_INFINIBAND_VERBS_H Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 13/33] common/mlx5/linux: handle memory allocations with alignment Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 14/33] common/mlx5/windows: " Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 15/33] common/mlx5/linux: wrap event channel APIs with OS calls Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 16/33] common/mlx5: add Windows exports file Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 17/33] common/mlx5: extend DevX query hca attributes command Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 18/33] common/mlx5: add DevX alloc PD command Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 19/33] common/mlx5/windows: add glue functions APIs Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 20/33] mlx5/windows: add mlx5 meson file Tal Shnaiderman
2020-12-11 23:42 ` Dmitry Kozlyuk
2020-12-12 2:34 ` Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 21/33] mlx5/windows: add initialization routine for external lib Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 22/33] mlx5/windows: generate file mlx5_autoconf.h Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 23/33] common/mlx5/windows: extend PRM match_param_bits struct Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 24/33] common/mlx5/windows: add getter functions Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 25/33] common/mlx5/windows: add OS alloc/dealloc pd Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 26/33] common/mlx5/windows: add OS umem reg/dereg API Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 27/33] net/mlx5: update MR prototypes for DevX Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 28/33] common/mlx5/windows: add OS reg/dereg MR Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 29/33] drivers/common: enable Windows common mlx5 compilation Tal Shnaiderman
2021-01-03 8:00 ` [dpdk-dev] [PATCH v3] " Tal Shnaiderman
2021-01-11 20:52 ` Thomas Monjalon
2021-01-12 12:58 ` [dpdk-dev] [PATCH v4] " Tal Shnaiderman
2021-01-13 22:07 ` Thomas Monjalon
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 30/33] net/mlx5/windows: implement device attribute getter Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 31/33] net/mlx5/windows: add mlx5_os.c stubs Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 32/33] net/mlx5/windows: implement mlx5 mac addr add Tal Shnaiderman
2020-12-10 15:06 ` [dpdk-dev] [PATCH v2 33/33] net/mlx5: refactor eth dev ops for Windows Tal Shnaiderman
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 02/72] net/mlx5: fix flow sample definitions Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 03/72] net/mlx5: fix folding constant array error Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 04/72] net/mlx5/linux: extend device attributes getter Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 05/72] net/mlx5: remove Linux files from Windows compilation Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 06/72] net/mlx5: fix freeing packet pacing Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 07/72] net/mlx5: replace Linux sleep with rte sleep Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 08/72] net/mlx5: define mprq functions as static inline Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 09/72] net/mlx5: do not define static_assert in Windows Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 10/72] net/mlx5: move static_assert calls to global scope Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 11/72] net/mlx5: wrap glue alloc/dealloc PD with OS calls Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 12/72] net/mlx5: wrap glue reg/dereg UMEM " Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 13/72] net/mlx5: fix adding destroy flow action wrapper Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 14/72] common/mlx5: add definition HAVE_INFINIBAND_VERBS_H Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 15/72] common/mlx5/linux: handle memory allocations with alignment Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 16/72] common/mlx5/windows: " Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 17/72] common/mlx5/linux: wrap event channel APIs with OS calls Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 18/72] common/mlx5: add Windows exports file Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 19/72] common/mlx5: extend DevX query hca attributes command Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 20/72] common/mlx5: add DevX alloc PD command Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 21/72] common/mlx5/windows: add glue functions APIs Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 22/72] mlx5/windows: add mlx5 meson file Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 23/72] mlx5/windows: add initialization routine for external lib Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 24/72] mlx5/windows: generate file mlx5_autoconf.h Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 25/72] common/mlx5/windows: extend PRM match_param_bits struct Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 26/72] common/mlx5/windows: add getter functions Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 27/72] common/mlx5/windows: add OS alloc/dealloc pd Ophir Munk
2020-11-11 0:11 ` Narcisa Ana Maria Vasile
2020-11-14 21:51 ` Tal Shnaiderman
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 28/72] common/mlx5/windows: add OS umem reg/dereg API Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 29/72] net/mlx5: update MR prototypes for DevX Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 30/72] common/mlx5/windows: add OS reg/dereg MR Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 31/72] drivers/common: enable Windows common mlx5 compilation Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 32/72] net/mlx5/windows: implement device attribute getter Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 33/72] net/mlx5/windows: add mlx5_os.c stubs Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 34/72] net/mlx5/windows: implement mlx5 mac addr add Ophir Munk
2020-11-11 0:08 ` Narcisa Ana Maria Vasile
2020-11-14 21:49 ` Tal Shnaiderman
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 35/72] net/mlx5: refactor eth dev ops for Windows Ophir Munk
2020-10-27 23:22 ` [dpdk-dev] [PATCH v1 36/72] common/mlx5/windows: add missing DV and IBV definitions Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 37/72] mlx5/windows: add mlx5_os header file under net Ophir Munk
2020-10-28 7:18 ` Thomas Monjalon
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 38/72] net/mlx5/windows: add pthread initializer definition Ophir Munk
2020-10-28 7:21 ` Thomas Monjalon
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 39/72] net/mlx5/windows: define epoll API to do nothing Ophir Munk
2020-10-28 7:22 ` Thomas Monjalon
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 40/72] net/mlx5/windows: define errno ETOOMANYREFS Ophir Munk
2020-10-28 7:23 ` Thomas Monjalon
2020-10-28 14:40 ` Tal Shnaiderman
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 41/72] common/mlx5: add rte compatibility header file Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 42/72] common/mlx5/windows: add DevX UAR getters Ophir Munk
2020-11-11 0:07 ` Narcisa Ana Maria Vasile
2020-11-14 21:41 ` Tal Shnaiderman
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 43/72] common/mlx5/windows: wrap event channel APIs with OS calls Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 44/72] net/mlx5/windows: add memory region callbacks Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 45/72] net/mlx5/windows: add stubs for MP requests Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 46/72] net/mlx5/windows: support get mac Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 47/72] net/mlx5/windows: add ethdev stub operations Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 48/72] net/mlx5/windows: support link update Ophir Munk
2020-11-11 0:06 ` Narcisa Ana Maria Vasile
2020-11-14 21:35 ` Tal Shnaiderman
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 49/72] net/mlx5/windows: support read clock Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 50/72] net/mlx5/windows: support get mtu Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 51/72] net/mlx5/windows: support get interface name Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 52/72] net/mlx5/windows: support is removed Ophir Munk
2020-10-28 7:26 ` Thomas Monjalon
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 53/72] net/mlx5/windws: add VLAN stubs Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 54/72] net/mlx5: exclude rte_intr_callback_register call Ophir Munk
2020-10-28 7:29 ` Thomas Monjalon
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 55/72] net/mlx5/windows: support get pdn Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 56/72] net/mlx5/windows: support open device Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 57/72] net/mlx5/windows: initial probing implementation Ophir Munk
2020-11-11 0:02 ` Narcisa Ana Maria Vasile
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 58/72] net/mlx5/windws: spawn eth devices Ophir Munk
2020-11-10 23:48 ` Narcisa Ana Maria Vasile
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 59/72] net/mlx5/windows: support VF PCI address Ophir Munk
2020-11-11 0:04 ` Narcisa Ana Maria Vasile
2020-11-14 21:23 ` Tal Shnaiderman
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 60/72] net/mlx5/linux: wrap adjust flow priority with OS calls Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 61/72] net/mlx5/linux: add OS default miss flow action Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 62/72] net/mlx5/linux: fix add OS dest_devx_tir action Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 63/72] drivers/net: enable Windows net/mlx5 compilation Ophir Munk
2020-10-28 7:31 ` Thomas Monjalon
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 64/72] net/mlx5/windows: introduce flow support Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 65/72] net/mlx5/windows: create flow matcher object Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 66/72] net/mlx5/windows: create flow action dest TIR object Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 67/72] net/mlx5/windows: create flow rule Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 68/72] net/mlx5: use HAVE_INFINIBAND_VERBS_H in shared code Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 69/72] net/mlx5: fix separating eth_dev_ops per OS Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 70/72] common/mlx5: fix Windows warnings on missing enum Ophir Munk
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 71/72] net/mlx5: fix Windows warnings on get_if_name Ophir Munk
2020-10-28 7:34 ` Thomas Monjalon
2020-10-27 23:23 ` [dpdk-dev] [PATCH v1 72/72] mlx5: build pmd only with the clang compiler Ophir Munk
2020-10-28 7:35 ` Thomas Monjalon
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=20201210150648.8784-9-talshn@nvidia.com \
--to=talshn@nvidia.com \
--cc=dev@dpdk.org \
--cc=matan@nvidia.com \
--cc=ophirmu@nvidia.com \
--cc=rasland@nvidia.com \
--cc=thomas@monjalon.net \
/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).