]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rbd-mirror: fix long termination due to 30sec wait in Mirror::run loop 8185/head
authorMykola Golub <mgolub@mirantis.com>
Sat, 19 Mar 2016 13:43:58 +0000 (15:43 +0200)
committerMykola Golub <mgolub@mirantis.com>
Sat, 19 Mar 2016 13:43:58 +0000 (15:43 +0200)
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
src/tools/rbd_mirror/Mirror.cc

index c5c38bec36a1d12bb89951ac8da40742075bbfbb..2ce0177aa7c86e33dd6c8e2c8ad15e795efacc49 100644 (file)
@@ -40,6 +40,10 @@ Mirror::Mirror(CephContext *cct, const std::vector<const char*> &args) :
 void Mirror::handle_signal(int signum)
 {
   m_stopping.set(1);
+  {
+    Mutex::Locker l(m_lock);
+    m_cond.Signal();
+  }
 }
 
 int Mirror::init()