IB/core: Refer to RoCE port property instead of GID table property
authorParav Pandit <parav@mellanox.com>
Wed, 21 Mar 2018 15:16:36 +0000 (17:16 +0200)
committerJason Gunthorpe <jgg@mellanox.com>
Thu, 22 Mar 2018 18:42:49 +0000 (12:42 -0600)
ib_query_gid() in commit [1] refers to RoCE GID table capability of
the HCA using rdma_cap_roce_gid_table().
ib_core maintains the GID table cache regardless of the HCA provider
drivers capability to maintain RoCE GID table.
Therefore, whether to return a GID table entry from the software cache or
from HCA should be done based on whether the port is RoCE or not.

[1] commit 03db3a2d81e6 ("IB/core: Add RoCE GID table management")

Reviewed-by: Mark Bloch <markb@mellanox.com>
Signed-off-by: Parav Pandit <parav@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/core/device.c

index 0ab99e6..ba0e34b 100644 (file)
@@ -878,7 +878,7 @@ int ib_query_gid(struct ib_device *device,
                 u8 port_num, int index, union ib_gid *gid,
                 struct ib_gid_attr *attr)
 {
-       if (rdma_cap_roce_gid_table(device, port_num))
+       if (rdma_protocol_roce(device, port_num))
                return ib_get_cached_gid(device, port_num, index, gid, attr);
 
        if (attr)