Linux RDMA and InfiniBand development
 help / color / mirror / Atom feed
* [PATCH rdma-rc] RDMA/mlx4: Read pkey table length instead of hardcoded value
@ 2020-08-23  6:17 Leon Romanovsky
  2020-08-23 11:27 ` jackm
  0 siblings, 1 reply; 4+ messages in thread
From: Leon Romanovsky @ 2020-08-23  6:17 UTC (permalink / raw)
  To: Doug Ledford, Jason Gunthorpe
  Cc: Mark Bloch, Eli Cohen, Jack Morgenstein, linux-rdma,
	Maor Gottlieb, Roland Dreier, Yishai Hadas

From: Mark Bloch <markb@mellanox.com>

The driver shouldn't assume that a pkey table is available, this
can happen if RoCE isn't supported by the device.

Use the pkey table length reported by the device. This together with the
cited commit from Jack caused a regression where mlx4 devices without
RoCE aren't created.

Cc: <stable@vger.kernel.org>
Cc: Long Li <longli@microsoft.com>
Fixes: 1901b91f9982 ("IB/core: Fix potential NULL pointer dereference in pkey cache")
Fixes: fa417f7b520e ("IB/mlx4: Add support for IBoE")
Signed-off-by: Mark Bloch <markb@mellanox.com>
Reviewed-by: Maor Gottlieb <maorg@nvidia.com>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
---
 drivers/infiniband/hw/mlx4/main.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/infiniband/hw/mlx4/main.c b/drivers/infiniband/hw/mlx4/main.c
index 5e7910a517da..bd4f975e7f9a 100644
--- a/drivers/infiniband/hw/mlx4/main.c
+++ b/drivers/infiniband/hw/mlx4/main.c
@@ -784,7 +784,8 @@ static int eth_link_query_port(struct ib_device *ibdev, u8 port,
 	props->ip_gids = true;
 	props->gid_tbl_len	= mdev->dev->caps.gid_table_len[port];
 	props->max_msg_sz	= mdev->dev->caps.max_msg_sz;
-	props->pkey_tbl_len	= 1;
+	if (mdev->dev->caps.pkey_table_len[port])
+		props->pkey_tbl_len = 1;
 	props->max_mtu		= IB_MTU_4096;
 	props->max_vl_num	= 2;
 	props->state		= IB_PORT_DOWN;
-- 
2.26.2


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-08-23 14:06 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-08-23  6:17 [PATCH rdma-rc] RDMA/mlx4: Read pkey table length instead of hardcoded value Leon Romanovsky
2020-08-23 11:27 ` jackm
2020-08-23 12:33   ` Leon Romanovsky
2020-08-23 14:06     ` jackm

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox