From 9cb0b180bc8a12ea2ebb0d7e32279b696ddd127e Mon Sep 17 00:00:00 2001 From: Ricardo Dias Date: Fri, 13 May 2016 16:44:53 +0100 Subject: [PATCH] rbd-mirror: Unregister clients from non-primary images journal A non-primary image may have registered clients on its journal (for instance a primary image that was later demoted). We must unregister the clients when disabling image mirroring with the force option. Signed-off-by: Ricardo Dias --- src/librbd/internal.cc | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/librbd/internal.cc b/src/librbd/internal.cc index 9aaeaaf8b085..47e0f701da02 100644 --- a/src/librbd/internal.cc +++ b/src/librbd/internal.cc @@ -335,10 +335,6 @@ int mirror_image_disable_internal(ImageCtx *ictx, bool force, return r; } - if (!is_primary) { - goto remove_mirroring_image; - } - r = MirroringWatcher<>::notify_image_updated( ictx->md_ctx, cls::rbd::MIRROR_IMAGE_STATE_DISABLING, ictx->id, mirror_image_internal.global_image_id); @@ -397,7 +393,6 @@ int mirror_image_disable_internal(ImageCtx *ictx, bool force, } } -remove_mirroring_image: if (remove) { r = cls_client::mirror_image_remove(&ictx->md_ctx, ictx->id); if (r < 0) { -- 2.47.3