From 27761a209dcd52c73adef4e959e1fcad91a4430a Mon Sep 17 00:00:00 2001 From: Jason Dillaman Date: Tue, 7 Apr 2020 12:13:46 -0400 Subject: [PATCH] rbd-mirror: fixed race condition with snapshot sync and shutdown Signed-off-by: Jason Dillaman (cherry picked from commit 8a18a7fc71944c55e7a5fa47e55572546b4088db) --- src/tools/rbd_mirror/image_replayer/snapshot/Replayer.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/tools/rbd_mirror/image_replayer/snapshot/Replayer.cc b/src/tools/rbd_mirror/image_replayer/snapshot/Replayer.cc index 9844f27dd327b..52ab795aaa86e 100644 --- a/src/tools/rbd_mirror/image_replayer/snapshot/Replayer.cc +++ b/src/tools/rbd_mirror/image_replayer/snapshot/Replayer.cc @@ -784,6 +784,10 @@ void Replayer::request_sync() { dout(10) << dendl; std::unique_lock locker{m_lock}; + if (is_replay_interrupted(&locker)) { + return; + } + auto ctx = create_async_context_callback( m_threads->work_queue, create_context_callback< Replayer, &Replayer::handle_request_sync>(this)); -- 2.39.5