[dpdk-stable] [PATCH] net/mlx5: fix validation of hash Rx queue pointer
    Dekel Peled 
    dekelp at nvidia.com
       
    Wed Feb  3 11:09:09 CET 2021
    
    
  
Implementation of mlx5_hrxq_get() tries to get pointer to a hrxq
object, by reusing an existing hrxq, or creating a new one.
There is no check of the obtained pointer, so using it might result
in error.
This patch adds check of the pointer before using it, and return 0
if the pointer is NULL to indicate error.
Fixes: e1592b6c4dea ("net/mlx5: make Rx queue thread safe")
Cc: stable at dpdk.org
Signed-off-by: Dekel Peled <dekelp at nvidia.com>
Acked-by: Matan Azrad <matan at nvidia.com>
---
 drivers/net/mlx5/mlx5_rxq.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/mlx5/mlx5_rxq.c b/drivers/net/mlx5/mlx5_rxq.c
index 92e3a792e1..8f9ee97f7a 100644
--- a/drivers/net/mlx5/mlx5_rxq.c
+++ b/drivers/net/mlx5/mlx5_rxq.c
@@ -2353,7 +2353,9 @@ uint32_t mlx5_hrxq_get(struct rte_eth_dev *dev,
 			return 0;
 		hrxq = container_of(entry, typeof(*hrxq), entry);
 	}
-	return hrxq->idx;
+	if (hrxq)
+		return hrxq->idx;
+	return 0;
 }
 
 /**
-- 
2.25.1
    
    
More information about the stable
mailing list