]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
librbd: drain op work queue after shutting down journal
authorJason Dillaman <dillaman@redhat.com>
Fri, 14 Aug 2015 20:23:13 +0000 (16:23 -0400)
committerJason Dillaman <dillaman@redhat.com>
Thu, 19 Nov 2015 01:34:37 +0000 (20:34 -0500)
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
src/librbd/internal.cc

index e296068d0011ea99e7e63f7ec7d71736f9d9bacc..59dce0a6e99ebf11c87a2e6530baa861618f0aa8 100644 (file)
@@ -2846,8 +2846,6 @@ int invoke_async_request(ImageCtx *ictx, const std::string& request_type,
       }
     }
 
-    ictx->op_work_queue->drain();
-
     if (ictx->copyup_finisher != NULL) {
       ictx->copyup_finisher->wait_for_empty();
       ictx->copyup_finisher->stop();
@@ -2860,6 +2858,8 @@ int invoke_async_request(ImageCtx *ictx, const std::string& request_type,
       }
     }
 
+    ictx->op_work_queue->drain();
+
     if (ictx->parent) {
       RWLock::WLocker parent_locker(ictx->parent_lock);
       int close_r = close_parent(ictx);