summaryrefslogtreecommitdiffstats
path: root/include/rdma
diff options
context:
space:
mode:
authorJason Gunthorpe <jgg@mellanox.com>2019-07-31 04:18:41 -0400
committerDoug Ledford <dledford@redhat.com>2019-08-01 11:44:48 -0400
commit9cd5881719e9555cae300ec8b389eda3c8101339 (patch)
treecace05458bf51c0903ecaddede02f995f5df4261 /include/rdma
parent621e55ff5b8e0ab5d1063f0eae0ef3960bef8f6e (diff)
RDMA/devices: Remove the lock around remove_client_context
Due to the complexity of client->remove() callbacks it is desirable to not hold any locks while calling them. Remove the last one by tracking only the highest client ID and running backwards from there over the xarray. Since the only purpose of that lock was to protect the linked list, we can drop the lock. Signed-off-by: Jason Gunthorpe <jgg@mellanox.com> Signed-off-by: Leon Romanovsky <leonro@mellanox.com> Link: https://lore.kernel.org/r/20190731081841.32345-3-leon@kernel.org Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'include/rdma')
-rw-r--r--include/rdma/ib_verbs.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h
index 7b80ec822043..4f225175cb91 100644
--- a/include/rdma/ib_verbs.h
+++ b/include/rdma/ib_verbs.h
@@ -2650,7 +2650,6 @@ struct ib_client {
2650 2650
2651 refcount_t uses; 2651 refcount_t uses;
2652 struct completion uses_zero; 2652 struct completion uses_zero;
2653 struct list_head list;
2654 u32 client_id; 2653 u32 client_id;
2655 2654
2656 /* kverbs are not required by the client */ 2655 /* kverbs are not required by the client */