From: Roman Penyaev Date: Tue, 27 Aug 2019 09:12:01 +0000 (+0800) Subject: msg/async/rdma: remove redundant code X-Git-Tag: v15.1.0~1481^2~11 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=0736b46bf7ea966b905d6ebd19740b3ff6eb87de;p=ceph.git msg/async/rdma: remove redundant code 1. remove aync_handler 1). async_handler is never scheduled (which should be scheduled by center->dispatch_event_external). 2). async_hander wrapper handle_async_event, which will be called in RDMADispatcher::polling. So, all async_handler related code are removed. 2. fault won't run to_dead, so removed the commented code Signed-off-by: Roman Penyaev --- diff --git a/src/msg/async/rdma/RDMAConnectedSocketImpl.cc b/src/msg/async/rdma/RDMAConnectedSocketImpl.cc index 9f0cd70b317..b8695e756d5 100644 --- a/src/msg/async/rdma/RDMAConnectedSocketImpl.cc +++ b/src/msg/async/rdma/RDMAConnectedSocketImpl.cc @@ -554,10 +554,6 @@ void RDMAConnectedSocketImpl::close() void RDMAConnectedSocketImpl::fault() { ldout(cct, 1) << __func__ << " tcp fd " << tcp_fd << dendl; - /*if (qp) { - qp->to_dead(); - qp = NULL; - }*/ error = ECONNRESET; connected = 1; notify(); diff --git a/src/msg/async/rdma/RDMAStack.cc b/src/msg/async/rdma/RDMAStack.cc index 6c98d7be92f..5309e79b221 100644 --- a/src/msg/async/rdma/RDMAStack.cc +++ b/src/msg/async/rdma/RDMAStack.cc @@ -38,12 +38,10 @@ RDMADispatcher::~RDMADispatcher() ceph_assert(qp_conns.empty()); ceph_assert(num_qp_conn == 0); ceph_assert(dead_queue_pairs.empty()); - - delete async_handler; } RDMADispatcher::RDMADispatcher(CephContext* c, shared_ptr& ib) - : cct(c), ib(ib), async_handler(new C_handle_cq_async(this)) + : cct(c), ib(ib) { PerfCountersBuilder plb(cct, "AsyncMessenger::RDMADispatcher", l_msgr_rdma_dispatcher_first, l_msgr_rdma_dispatcher_last); diff --git a/src/msg/async/rdma/RDMAStack.h b/src/msg/async/rdma/RDMAStack.h index 5522e8a363b..ac9f5e27bde 100644 --- a/src/msg/async/rdma/RDMAStack.h +++ b/src/msg/async/rdma/RDMAStack.h @@ -44,7 +44,6 @@ class RDMADispatcher { Infiniband::CompletionQueue* tx_cq = nullptr; Infiniband::CompletionQueue* rx_cq = nullptr; Infiniband::CompletionChannel *tx_cc = nullptr, *rx_cc = nullptr; - EventCallbackRef async_handler; bool done = false; std::atomic num_qp_conn = {0}; // protect `qp_conns`, `dead_queue_pairs` @@ -79,16 +78,6 @@ class RDMADispatcher { std::list pending_workers; void enqueue_dead_qp(uint32_t qp); - class C_handle_cq_async : public EventCallback { - RDMADispatcher *dispatcher; - public: - explicit C_handle_cq_async(RDMADispatcher *w): dispatcher(w) {} - void do_request(uint64_t fd) { - // worker->handle_tx_event(); - dispatcher->handle_async_event(); - } - }; - public: PerfCounters *perf_logger;