aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/core
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 14:34:38 -0600
commit273993509f05623934dda14a56237738149b2906 (patch)
treebb6f53fa632a97018c44b3d937a9bc0e71cf2652 /drivers/infiniband/core
parentRDMA/core: Follow correct unregister order between sysfs and cgroup (diff)
downloadlinux-dev-273993509f05623934dda14a56237738149b2906.tar.xz
linux-dev-273993509f05623934dda14a56237738149b2906.zip
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>
Diffstat (limited to 'drivers/infiniband/core')
-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);