summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorParav Pandit <parav@mellanox.com>2018-09-06 10:58:57 +0300
committerJason Gunthorpe <jgg@mellanox.com>2018-09-06 23:34:38 +0300
commit273993509f05623934dda14a56237738149b2906 (patch)
treebb6f53fa632a97018c44b3d937a9bc0e71cf2652
parentc715a39541bb399eb03d728a996b224d90ce1336 (diff)
downloadlinux-273993509f05623934dda14a56237738149b2906.tar.xz
RDMA/core: Assign device ifindex before publishing the device
Even though device->ifindex is assigned before adding the device in the list which is read by netlink flow, it is better to assign rdma device index before publishing the device in the system to users and clients. Signed-off-by: Parav Pandit <parav@mellanox.com> Reviewed-by: Daniel Jurgens <danielj@mellanox.com> Signed-off-by: Leon Romanovsky <leonro@mellanox.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
-rw-r--r--drivers/infiniband/core/device.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/infiniband/core/device.c b/drivers/infiniband/core/device.c
index e1155067954b..5a680a88aa87 100644
--- a/drivers/infiniband/core/device.c
+++ b/drivers/infiniband/core/device.c
@@ -525,6 +525,8 @@ int ib_register_device(struct ib_device *device,
goto port_cleanup;
}
+ device->index = __dev_new_index();
+
ret = ib_device_register_rdmacg(device);
if (ret) {
pr_warn("Couldn't register device with rdma cgroup\n");
@@ -551,7 +553,6 @@ int ib_register_device(struct ib_device *device,
if (!add_client_context(device, client) && client->add)
client->add(device);
- device->index = __dev_new_index();
down_write(&lists_rwsem);
list_add_tail(&device->core_list, &device_list);
up_write(&lists_rwsem);