[PATCH net-next] net/mlx5: HWS, check the correct variable in hws_send_ring_alloc_sq()

Dan Carpenter posted 1 patch 2 months, 2 weeks ago
.../net/ethernet/mellanox/mlx5/core/steering/hws/mlx5hws_send.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH net-next] net/mlx5: HWS, check the correct variable in hws_send_ring_alloc_sq()
Posted by Dan Carpenter 2 months, 2 weeks ago
There is a copy and paste bug so this code checks "sq->dep_wqe" where
"sq->wr_priv" was intended.  It could result in a NULL pointer
dereference.

Fixes: 2ca62599aa0b ("net/mlx5: HWS, added send engine and context handling")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
---
 .../net/ethernet/mellanox/mlx5/core/steering/hws/mlx5hws_send.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/mlx5hws_send.c b/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/mlx5hws_send.c
index fb97a15c041a..a1adbb48735c 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/mlx5hws_send.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/mlx5hws_send.c
@@ -584,7 +584,7 @@ static int hws_send_ring_alloc_sq(struct mlx5_core_dev *mdev,
 	}
 
 	sq->wr_priv = kzalloc(sizeof(*sq->wr_priv) * buf_sz, GFP_KERNEL);
-	if (!sq->dep_wqe) {
+	if (!sq->wr_priv) {
 		err = -ENOMEM;
 		goto free_dep_wqe;
 	}
-- 
2.45.2
Re: [PATCH net-next] net/mlx5: HWS, check the correct variable in hws_send_ring_alloc_sq()
Posted by Simon Horman 2 months, 2 weeks ago
On Sat, Sep 14, 2024 at 12:58:26PM +0300, Dan Carpenter wrote:
> There is a copy and paste bug so this code checks "sq->dep_wqe" where
> "sq->wr_priv" was intended.  It could result in a NULL pointer
> dereference.
> 
> Fixes: 2ca62599aa0b ("net/mlx5: HWS, added send engine and context handling")
> Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>

Reviewed-by: Simon Horman <horms@kernel.org>