[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210712122625.1147-3-anand.a.khoje@oracle.com>
Date: Mon, 12 Jul 2021 17:56:24 +0530
From: Anand Khoje <anand.a.khoje@...cle.com>
To: linux-rdma@...r.kernel.org, linux-kernel@...r.kernel.org
Cc: dledford@...hat.com, jgg@...pe.ca, haakon.bugge@...cle.com,
leon@...nel.org
Subject: [PATCH v8 for-next 2/3] IB/core: Shifting initialization of device->cache_lock
The lock cache_lock of struct ib_device is initialized in function
ib_cache_setup_one(). This is much later than the device initialization
in _ib_alloc_device().
This change shifts initialization of cache_lock in _ib_alloc_device().
Suggested-by: Haakon Bugge <haakon.bugge@...cle.com>
Signed-off-by: Anand Khoje <anand.a.khoje@...cle.com>
---
drivers/infiniband/core/cache.c | 2 --
drivers/infiniband/core/device.c | 2 ++
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/infiniband/core/cache.c b/drivers/infiniband/core/cache.c
index 929399e..0c98dd3 100644
--- a/drivers/infiniband/core/cache.c
+++ b/drivers/infiniband/core/cache.c
@@ -1621,8 +1621,6 @@ int ib_cache_setup_one(struct ib_device *device)
u32 p;
int err;
- rwlock_init(&device->cache_lock);
-
err = gid_table_setup_one(device);
if (err)
return err;
diff --git a/drivers/infiniband/core/device.c b/drivers/infiniband/core/device.c
index fa20b18..ba0ad72 100644
--- a/drivers/infiniband/core/device.c
+++ b/drivers/infiniband/core/device.c
@@ -607,6 +607,8 @@ struct ib_device *_ib_alloc_device(size_t size)
for (i = 0; i < ARRAY_SIZE(device->cq_pools); i++)
INIT_LIST_HEAD(&device->cq_pools[i]);
+ rwlock_init(&device->cache_lock);
+
device->uverbs_cmd_mask =
BIT_ULL(IB_USER_VERBS_CMD_ALLOC_MW) |
BIT_ULL(IB_USER_VERBS_CMD_ALLOC_PD) |
--
1.8.3.1
Powered by blists - more mailing lists