]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
msg/async: fix accept_conn not remove entry in conns when lazy delete
authorHaomai Wang <haomai@xsky.com>
Tue, 13 Jun 2017 02:16:47 +0000 (10:16 +0800)
committerAlexey Sheplyakov <asheplyakov@mirantis.com>
Fri, 16 Jun 2017 12:30:55 +0000 (16:30 +0400)
Signed-off-by: Haomai Wang <haomai@xsky.com>
(cherry picked from commit bf98babb3289a7714543ff3cbd3872d80f0dc196)

src/msg/async/AsyncMessenger.h

index d3bb2090f74dfbf9bf21b6b16edef5c0f51cf7b9..7e14cae88503fa697aa71695c5c8bc45b16e6ab6 100644 (file)
@@ -340,6 +340,8 @@ public:
       // If conn already in, we will return 0
       Mutex::Locker l(deleted_lock);
       if (deleted_conns.erase(existing)) {
+        existing->get_perf_counter()->dec(l_msgr_active_connections);
+        conns.erase(it);
       } else if (conn != existing) {
         return -1;
       }