From: Mark Bloch Date: Thu, 28 Mar 2019 13:27:36 +0000 (+0200) Subject: RDMA/mlx5: Use correct size for device resources X-Git-Tag: Ubuntu-5.2.0-15.16~1982^2~78 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=5d8f6a0e92070c938f121258841ac36072d17cc3;p=mirror_ubuntu-eoan-kernel.git RDMA/mlx5: Use correct size for device resources On allocation we use the array size and on destruction num_ports, use the array size of destruction as well, in this context the array corresponds to the native/actual ports on the NIC so no need to adjust this logic for representors. Signed-off-by: Mark Bloch Signed-off-by: Leon Romanovsky Signed-off-by: Jason Gunthorpe --- diff --git a/drivers/infiniband/hw/mlx5/main.c b/drivers/infiniband/hw/mlx5/main.c index 0d86b5266960..007ba3f05787 100644 --- a/drivers/infiniband/hw/mlx5/main.c +++ b/drivers/infiniband/hw/mlx5/main.c @@ -4866,8 +4866,6 @@ error0: static void destroy_dev_resources(struct mlx5_ib_resources *devr) { - struct mlx5_ib_dev *dev = - container_of(devr, struct mlx5_ib_dev, devr); int port; mlx5_ib_destroy_srq(devr->s1, NULL); @@ -4881,7 +4879,7 @@ static void destroy_dev_resources(struct mlx5_ib_resources *devr) kfree(devr->p0); /* Make sure no change P_Key work items are still executing */ - for (port = 0; port < dev->num_ports; ++port) + for (port = 0; port < ARRAY_SIZE(devr->ports); ++port) cancel_work_sync(&devr->ports[port].pkey_change_work); }