diff --git a/src/librbd/operation/RenameRequest.cc b/src/librbd/operation/RenameRequest.cc index a4dbf1e5235..1e837472948 100644 --- a/src/librbd/operation/RenameRequest.cc +++ b/src/librbd/operation/RenameRequest.cc @@ -64,7 +64,7 @@ bool RenameRequest::should_complete(int r) { CephContext *cct = image_ctx.cct; ldout(cct, 5) << this << " " << __func__ << ": state=" << m_state << ", " << "r=" << r << dendl; - r = filter_state_return_code(r); + r = filter_return_code(r); if (r < 0) { if (r == -EEXIST) { ldout(cct, 1) << "image already exists" << dendl; @@ -100,7 +100,7 @@ bool RenameRequest::should_complete(int r) { } template -int RenameRequest::filter_state_return_code(int r) { +int RenameRequest::filter_return_code(int r) const { I &image_ctx = this->m_image_ctx; CephContext *cct = image_ctx.cct; diff --git a/src/librbd/operation/RenameRequest.h b/src/librbd/operation/RenameRequest.h index 46a8dbcdfee..6534d36c098 100644 --- a/src/librbd/operation/RenameRequest.h +++ b/src/librbd/operation/RenameRequest.h @@ -57,6 +57,7 @@ public: protected: void send_op() override; bool should_complete(int r) override; + int filter_return_code(int r) const override; journal::Event create_event(uint64_t op_tid) const override { return journal::RenameEvent(op_tid, m_dest_name); @@ -72,8 +73,6 @@ private: bufferlist m_header_bl; - int filter_state_return_code(int r); - void send_read_source_header(); void send_write_destination_header(); void send_update_directory(); diff --git a/src/test/librbd/test_librbd.cc b/src/test/librbd/test_librbd.cc index 574bf2724f5..addf74563cf 100644 --- a/src/test/librbd/test_librbd.cc +++ b/src/test/librbd/test_librbd.cc @@ -4555,7 +4555,7 @@ TEST_F(TestLibRBD, RebuildObjectMapViaLockOwner) TEST_F(TestLibRBD, RenameViaLockOwner) { - REQUIRE_FEATURE(RBD_FEATURE_LAYERING | RBD_FEATURE_EXCLUSIVE_LOCK); + REQUIRE_FEATURE(RBD_FEATURE_JOURNALING); librados::IoCtx ioctx; ASSERT_EQ(0, _rados.ioctx_create(m_pool_name.c_str(), ioctx)); @@ -4587,7 +4587,7 @@ TEST_F(TestLibRBD, RenameViaLockOwner) TEST_F(TestLibRBD, SnapCreateViaLockOwner) { - REQUIRE_FEATURE(RBD_FEATURE_LAYERING | RBD_FEATURE_EXCLUSIVE_LOCK); + REQUIRE_FEATURE(RBD_FEATURE_EXCLUSIVE_LOCK); librados::IoCtx ioctx; ASSERT_EQ(0, _rados.ioctx_create(m_pool_name.c_str(), ioctx)); @@ -4631,7 +4631,7 @@ TEST_F(TestLibRBD, SnapCreateViaLockOwner) TEST_F(TestLibRBD, SnapRemoveViaLockOwner) { - REQUIRE_FEATURE(RBD_FEATURE_LAYERING | RBD_FEATURE_EXCLUSIVE_LOCK); + REQUIRE_FEATURE(RBD_FEATURE_FAST_DIFF); librados::IoCtx ioctx; ASSERT_EQ(0, _rados.ioctx_create(m_pool_name.c_str(), ioctx));