mirror of
https://github.com/ceph/ceph
synced 2024-12-18 17:37:38 +00:00
msg/async/rdma: move active_queue_pairs perf counter dec to polling
removing dead qp's is actually done at polling. if polling is busy then dead qp will not be removed and active_queue_pair counter is not correct. issue: 992513 Change-Id: I825e813ce0632fd01f6d29adc87e0e33a2bc13d9 Signed-off-by: DanielBar-On <danielbo@mellanox.com>
This commit is contained in:
parent
2bcd9d7dde
commit
b364d24a57
@ -42,7 +42,6 @@ RDMAConnectedSocketImpl::RDMAConnectedSocketImpl(CephContext *cct, Infiniband* i
|
||||
RDMAConnectedSocketImpl::~RDMAConnectedSocketImpl()
|
||||
{
|
||||
ldout(cct, 20) << __func__ << " destruct." << dendl;
|
||||
dispatcher->perf_logger->dec(l_msgr_rdma_active_queue_pair);
|
||||
cleanup();
|
||||
worker->remove_pending_conn(this);
|
||||
dispatcher->erase_qpn(my_msg.qpn);
|
||||
|
@ -146,6 +146,7 @@ void RDMADispatcher::polling()
|
||||
while (!dead_queue_pairs.empty()) {
|
||||
ldout(cct, 10) << __func__ << " finally delete qp=" << dead_queue_pairs.back() << dendl;
|
||||
delete dead_queue_pairs.back();
|
||||
perf_logger->dec(l_msgr_rdma_active_queue_pair);
|
||||
dead_queue_pairs.pop_back();
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user