IB/mlx5: Fix wrong error unwind

The destroy_workqueue on error unwind is missing, and the code jumps to
the wrong exit label.

Fixes: 813e90b1ae ("IB/mlx5: Add advise_mr() support")
Acked-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
This commit is contained in:
Jason Gunthorpe 2018-12-20 16:39:26 -07:00
parent e7c4d8e604
commit 623d154305
1 changed files with 5 additions and 3 deletions

View File

@ -5775,12 +5775,14 @@ int mlx5_ib_stage_init_init(struct mlx5_ib_dev *dev)
dev->advise_mr_wq = alloc_ordered_workqueue("mlx5_ib_advise_mr_wq", 0);
if (!dev->advise_mr_wq) {
err = -ENOMEM;
goto err_free_port;
goto err_mp;
}
err = init_srcu_struct(&dev->mr_srcu);
if (err)
goto err_free_port;
if (err) {
destroy_workqueue(dev->advise_mr_wq);
goto err_mp;
}
#endif
return 0;