Commit 5957cc55 authored by Shay Drory's avatar Shay Drory Committed by Saeed Mahameed

net/mlx5: Set all field of mlx5_irq before inserting it to the xarray

Currently irq->pool is set after the irq is insert to the xarray.
Set irq->pool before the irq is inserted to the xarray.

Fixes: 71e084e2 ("net/mlx5: Allocating a pool of MSI-X vectors for SFs")
Signed-off-by: default avatarShay Drory <shayd@nvidia.com>
Reviewed-by: default avatarParav Pandit <parav@nvidia.com>
Signed-off-by: default avatarSaeed Mahameed <saeedm@nvidia.com>
parent 3c8946e0
...@@ -214,6 +214,7 @@ static struct mlx5_irq *irq_request(struct mlx5_irq_pool *pool, int i) ...@@ -214,6 +214,7 @@ static struct mlx5_irq *irq_request(struct mlx5_irq_pool *pool, int i)
err = -ENOMEM; err = -ENOMEM;
goto err_cpumask; goto err_cpumask;
} }
irq->pool = pool;
kref_init(&irq->kref); kref_init(&irq->kref);
irq->index = i; irq->index = i;
err = xa_err(xa_store(&pool->irqs, irq->index, irq, GFP_KERNEL)); err = xa_err(xa_store(&pool->irqs, irq->index, irq, GFP_KERNEL));
...@@ -222,7 +223,6 @@ static struct mlx5_irq *irq_request(struct mlx5_irq_pool *pool, int i) ...@@ -222,7 +223,6 @@ static struct mlx5_irq *irq_request(struct mlx5_irq_pool *pool, int i)
irq->index, err); irq->index, err);
goto err_xa; goto err_xa;
} }
irq->pool = pool;
return irq; return irq;
err_xa: err_xa:
free_cpumask_var(irq->mask); free_cpumask_var(irq->mask);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment