IB/mlx5: Add mutex destroy call to cap_mask_mutex mutex
authorParav Pandit <parav@nvidia.com>
Wed, 13 Jan 2021 12:17:01 +0000 (14:17 +0200)
committerJason Gunthorpe <jgg@nvidia.com>
Wed, 20 Jan 2021 00:14:14 +0000 (20:14 -0400)
mutex_destroy() call for device's cap_mask_mutex mutex is missing, let's
add it to annotate destruction.

Fixes: e126ba97dba9 ("mlx5: Add driver for Mellanox Connect-IB adapters")
Link: https://lore.kernel.org/r/20210113121703.559778-4-leon@kernel.org
Signed-off-by: Parav Pandit <parav@nvidia.com>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/mlx5/main.c

index d26f3f3..4747cc1 100644 (file)
@@ -3929,7 +3929,7 @@ static void mlx5_ib_stage_init_cleanup(struct mlx5_ib_dev *dev)
        mlx5_ib_cleanup_multiport_master(dev);
        WARN_ON(!xa_empty(&dev->odp_mkeys));
        cleanup_srcu_struct(&dev->odp_srcu);
-
+       mutex_destroy(&dev->cap_mask_mutex);
        WARN_ON(!xa_empty(&dev->sig_mrs));
        WARN_ON(!bitmap_empty(dev->dm.memic_alloc_pages, MLX5_MAX_MEMIC_PAGES));
 }
@@ -3980,6 +3980,10 @@ static int mlx5_ib_stage_init_init(struct mlx5_ib_dev *dev)
        dev->ib_dev.dev.parent          = mdev->device;
        dev->ib_dev.lag_flags           = RDMA_LAG_FLAGS_HASH_ALL_SLAVES;
 
+       err = init_srcu_struct(&dev->odp_srcu);
+       if (err)
+               goto err_mp;
+
        mutex_init(&dev->cap_mask_mutex);
        INIT_LIST_HEAD(&dev->qp_list);
        spin_lock_init(&dev->reset_flow_resource_lock);
@@ -3989,11 +3993,6 @@ static int mlx5_ib_stage_init_init(struct mlx5_ib_dev *dev)
 
        spin_lock_init(&dev->dm.lock);
        dev->dm.dev = mdev;
-
-       err = init_srcu_struct(&dev->odp_srcu);
-       if (err)
-               goto err_mp;
-
        return 0;
 
 err_mp: