forked from Minki/linux
RDMA: Make counters destroy symmetrical
Change counters to return failure like any other verbs destroy, however this flow shouldn't return error at all. Link: https://lore.kernel.org/r/20200907120921.476363-10-leon@kernel.org Signed-off-by: Leon Romanovsky <leonro@mellanox.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
This commit is contained in:
parent
add53535fb
commit
71ff3f6268
@ -46,7 +46,9 @@ static int uverbs_free_counters(struct ib_uobject *uobject,
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
counters->device->ops.destroy_counters(counters);
|
||||
ret = counters->device->ops.destroy_counters(counters);
|
||||
if (ret)
|
||||
return ret;
|
||||
kfree(counters);
|
||||
return 0;
|
||||
}
|
||||
|
@ -117,7 +117,7 @@ err_bound:
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void mlx5_ib_destroy_counters(struct ib_counters *counters)
|
||||
static int mlx5_ib_destroy_counters(struct ib_counters *counters)
|
||||
{
|
||||
struct mlx5_ib_mcounters *mcounters = to_mcounters(counters);
|
||||
|
||||
@ -125,6 +125,7 @@ static void mlx5_ib_destroy_counters(struct ib_counters *counters)
|
||||
if (mcounters->hw_cntrs_hndl)
|
||||
mlx5_fc_destroy(to_mdev(counters->device)->mdev,
|
||||
mcounters->hw_cntrs_hndl);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int mlx5_ib_create_counters(struct ib_counters *counters,
|
||||
|
@ -2498,7 +2498,7 @@ struct ib_device_ops {
|
||||
struct uverbs_attr_bundle *attrs);
|
||||
int (*create_counters)(struct ib_counters *counters,
|
||||
struct uverbs_attr_bundle *attrs);
|
||||
void (*destroy_counters)(struct ib_counters *counters);
|
||||
int (*destroy_counters)(struct ib_counters *counters);
|
||||
int (*read_counters)(struct ib_counters *counters,
|
||||
struct ib_counters_read_attr *counters_read_attr,
|
||||
struct uverbs_attr_bundle *attrs);
|
||||
|
Loading…
Reference in New Issue
Block a user