[dpdk-dev] [PATCH] net/mlx5: fix Tx when first segment size is too	short
    Nelio Laranjeiro 
    nelio.laranjeiro at 6wind.com
       
    Wed Mar 29 09:32:10 CEST 2017
    
    
  
First segment size must be 18 bytes, packets not respecting this are
silently not sent by the NIC but counted as sent by the PMD.
The only way to figure out is compiling the PMD in debug mode.
Cc: stable at dpdk.org
Fixes: 6579c27c11a5 ("net/mlx5: remove gather loop on segments")
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro at 6wind.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil at 6wind.com>
Acked-by: Yongseok Koh <yskoh at mellanox.com>
---
 drivers/net/mlx5/mlx5_rxtx.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c
index 823aac8..e2e8a22 100644
--- a/drivers/net/mlx5/mlx5_rxtx.c
+++ b/drivers/net/mlx5/mlx5_rxtx.c
@@ -485,7 +485,8 @@ mlx5_tx_burst(void *dpdk_txq, struct rte_mbuf **pkts, uint16_t pkts_n)
 #ifdef MLX5_PMD_SOFT_COUNTERS
 		total_length = length;
 #endif
-		assert(length >= MLX5_WQE_DWORD_SIZE);
+		if (length < (MLX5_WQE_DWORD_SIZE + 2))
+			break;
 		/* Update element. */
 		(*txq->elts)[elts_head] = buf;
 		elts_head = (elts_head + 1) & (elts_n - 1);
-- 
2.1.4
    
    
More information about the dev
mailing list