From 97a2729f9bb5fbae46cd93ebcaf540c7cfb64435 Mon Sep 17 00:00:00 2001 From: Casey Bodley Date: Wed, 5 Sep 2018 16:56:41 -0400 Subject: [PATCH] rgw: fix leak of curl handle on shutdown addresses a valgrind leak reported from curl_multi_add_handle(). requests that are still linked to the curl_multi handle need to be unlinked and finished with ECANCELED, rather than just finished Fixes: http://tracker.ceph.com/issues/35715 Signed-off-by: Casey Bodley (cherry picked from commit dd478483962188c1805f522deb7f7c7a33c5fadb) --- src/rgw/rgw_http_client.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/rgw/rgw_http_client.cc b/src/rgw/rgw_http_client.cc index e8522f511e256..e11deb7847bf4 100644 --- a/src/rgw/rgw_http_client.cc +++ b/src/rgw/rgw_http_client.cc @@ -1134,14 +1134,14 @@ void *RGWHTTPManager::reqs_thread_entry() RWLock::WLocker rl(reqs_lock); for (auto r : unregistered_reqs) { - _finish_request(r, -ECANCELED); + _unlink_request(r); } unregistered_reqs.clear(); auto all_reqs = std::move(reqs); for (auto iter : all_reqs) { - _finish_request(iter.second, -ECANCELED); + _unlink_request(iter.second); } reqs.clear(); -- 2.39.5