]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
msg/async/rdma: avoid enqueue_dead_qp deadlock 33852/head
authorChunsong Feng <fengchunsong@huawei.com>
Mon, 17 Aug 2020 11:59:34 +0000 (19:59 +0800)
committerluo rixin <luorixin@huawei.com>
Sat, 29 Aug 2020 06:26:26 +0000 (14:26 +0800)
commit8a9412ee883704e8e35207f40c0bd03ae2578cfa
treef98590c67b667a37195607925476564756d1b315
parented90c0768b0c8cf09511e8971bba453e09e42697
msg/async/rdma: avoid enqueue_dead_qp deadlock

In RDMADispatcher::handle_async_event, when case
IBV_EVENT_QP_LAST_WQE_REACHED matched, enqueue_dead_qp wants the lock,
result in deadlock here. Change enqueue_dead_qp to lockless.

Fixes: https://tracker.ceph.com/issues/44298
Signed-off-by: Chunsong Feng <fengchunsong@huawei.com>
Signed-off-by: luorixin <luorixin@huawei.com>
src/msg/async/rdma/RDMAStack.cc
src/msg/async/rdma/RDMAStack.h