From: Prasanna Kumar Kalever Date: Fri, 14 Mar 2025 08:56:12 +0000 (+0530) Subject: librbd/api: address C_SaferCond object leak X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=48215a8f5797684b4520390ba69953141c30aa37;p=ceph.git librbd/api: address C_SaferCond object leak Credits to Ilya Dryomov for the fix. Signed-off-by: Prasanna Kumar Kalever --- diff --git a/src/librbd/api/Mirror.cc b/src/librbd/api/Mirror.cc index 73f7fa9bb4b1e..8de1b59821a25 100644 --- a/src/librbd/api/Mirror.cc +++ b/src/librbd/api/Mirror.cc @@ -2519,8 +2519,8 @@ int prepare_group_images(IoCtx& group_ioctx, ImageCtx *ictx = (*image_ctxs)[i]; std::shared_lock owner_lock{ictx->owner_lock}; - on_finish = new C_SaferCond; if (ictx->exclusive_lock != nullptr) { + on_finish = new C_SaferCond; ictx->exclusive_lock->acquire_lock(on_finish); on_finishes[i] = on_finish; }