]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
librbd: execute flush completion outside of cache_lock
authorJason Dillaman <dillaman@redhat.com>
Thu, 30 Apr 2015 19:34:43 +0000 (15:34 -0400)
committerJason Dillaman <dillaman@redhat.com>
Tue, 28 Jul 2015 20:35:20 +0000 (16:35 -0400)
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit 5f157f20980de7e9a05fb933fb57efdc759da78b)

src/librbd/ImageCtx.cc

index 6092963e9f13be7ddf61799680ef2fbe17c09641..47133e91705223d39bdb1425a7e3cb87a7a1cb92 100644 (file)
@@ -736,7 +736,8 @@ public:
                  << unclean << " bytes remain" << dendl;
       r = -EBUSY;
     }
-    on_finish->complete(r);
+
+    op_work_queue->queue(on_finish, r);
   }
 
   void ImageCtx::clear_nonexistence_cache() {