diff options
author | Danit Goldberg <danitg@mellanox.com> | 2019-12-19 15:47:50 +0200 |
---|---|---|
committer | Jason Gunthorpe <jgg@mellanox.com> | 2020-01-03 16:29:44 -0400 |
commit | 4d6e8a033f7c6665c7ca5c5cdcf66019baa4b7a2 (patch) | |
tree | 21bdeef17da47ac914254c4e348a76d3ee6c9299 /drivers/zorro | |
parent | 9f48db0d4a08624bb9ba847ea40c8abad753b396 (diff) |
RDMA/cm: Use RCU synchronization mechanism to protect cm_id_private xa_load()
The RCU mechanism is optimized for read-mostly scenarios and therefore
more suitable to protect the cm_id_private to decrease "cm.lock"
congestion.
This patch replaces the existing spinlock locking mechanism and kfree with
RCU mechanism in places where spinlock(cm.lock) protected xa_load
returning the cm_id_priv
In addition, delete the cm_get_id() function as there is no longer a
distinction if the caller already holds the cm_lock.
Remove an open coded version of cm_get_id().
Link: https://lore.kernel.org/r/20191219134750.413429-1-leon@kernel.org
Signed-off-by: Danit Goldberg <danitg@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Reviewed-by: Jason Gunthorpe <jgg@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to 'drivers/zorro')
0 files changed, 0 insertions, 0 deletions