diff options
author | Parav Pandit <parav@mellanox.com> | 2018-04-01 15:08:19 +0300 |
---|---|---|
committer | Jason Gunthorpe <jgg@mellanox.com> | 2018-04-04 06:33:47 +0300 |
commit | 0e1f9b924471c132dcf314476916e3c4bd4956b2 (patch) | |
tree | 85630799440f8e8bdfc667571b09b36a30c4396c /drivers/infiniband/core/device.c | |
parent | 72e1ff0fb7e09c34956e4b3f619481da4d9787c1 (diff) | |
download | linux-0e1f9b924471c132dcf314476916e3c4bd4956b2.tar.xz |
RDMA/providers: Simplify query_gid callback of RoCE providers
ib_query_gid() fetches the GID from the software cache maintained in
ib_core for RoCE ports.
Therefore, simplify the provider drivers for RoCE to treat query_gid()
callback as never called for RoCE, and only require non-RoCE devices to
implement it.
Signed-off-by: Parav Pandit <parav@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to 'drivers/infiniband/core/device.c')
-rw-r--r-- | drivers/infiniband/core/device.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/infiniband/core/device.c b/drivers/infiniband/core/device.c index dbe984faed65..5d79e8de31f5 100644 --- a/drivers/infiniband/core/device.c +++ b/drivers/infiniband/core/device.c @@ -103,7 +103,6 @@ static int ib_device_check_mandatory(struct ib_device *device) IB_MANDATORY_FUNC(query_device), IB_MANDATORY_FUNC(query_port), IB_MANDATORY_FUNC(query_pkey), - IB_MANDATORY_FUNC(query_gid), IB_MANDATORY_FUNC(alloc_pd), IB_MANDATORY_FUNC(dealloc_pd), IB_MANDATORY_FUNC(create_ah), @@ -884,6 +883,9 @@ int ib_query_gid(struct ib_device *device, if (attr) return -EINVAL; + if (!device->query_gid) + return -EOPNOTSUPP; + return device->query_gid(device, port_num, index, gid); } EXPORT_SYMBOL(ib_query_gid); |