diff options
author | Jason Gunthorpe <[email protected]> | 2020-10-26 11:25:49 -0300 |
---|---|---|
committer | Jason Gunthorpe <[email protected]> | 2020-10-28 09:14:49 -0300 |
commit | 071ba4cc559de47160761b9500b72e8fa09d923d (patch) | |
tree | 0433f309f2aae8e868f09260cd1647671236af85 /tools/perf/scripts/python/export-to-sqlite.py | |
parent | 7d66a71488d7c14506ab81d6455c095992efca04 (diff) |
RDMA: Add rdma_connect_locked()
There are two flows for handling RDMA_CM_EVENT_ROUTE_RESOLVED, either the
handler triggers a completion and another thread does rdma_connect() or
the handler directly calls rdma_connect().
In all cases rdma_connect() needs to hold the handler_mutex, but when
handler's are invoked this is already held by the core code. This causes
ULPs using the 2nd method to deadlock.
Provide a rdma_connect_locked() and have all ULPs call it from their
handlers.
Link: https://lore.kernel.org/r/[email protected]
Reported-and-tested-by: Guoqing Jiang <[email protected]>
Fixes: 2a7cec538169 ("RDMA/cma: Fix locking for the RDMA_CM_CONNECT state")
Acked-by: Santosh Shilimkar <[email protected]>
Acked-by: Jack Wang <[email protected]>
Reviewed-by: Christoph Hellwig <[email protected]>
Reviewed-by: Max Gurtovoy <[email protected]>
Reviewed-by: Sagi Grimberg <[email protected]>
Signed-off-by: Jason Gunthorpe <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/export-to-sqlite.py')
0 files changed, 0 insertions, 0 deletions