From: Samuel Just Date: Wed, 19 Jun 2024 04:10:34 +0000 (-0700) Subject: crimson/.../object_context: drop recovery_read_marker X-Git-Tag: v20.0.0~1674^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=c1b7435d6c3a598ee13dd57ba8b83014c4cca893;p=ceph.git crimson/.../object_context: drop recovery_read_marker This doesn't seem to serve a purpose with current crimson. classic uses ObjectState::recovery_read_marker to indicate that backfill should be requeued upon wakeup, but that hasn't been necessary so far in crimson. We can reintroduce this if it becomes useful. Signed-off-by: Samuel Just --- diff --git a/src/crimson/osd/object_context.h b/src/crimson/osd/object_context.h index 7a31cc11fe88..292ef4d4bde7 100644 --- a/src/crimson/osd/object_context.h +++ b/src/crimson/osd/object_context.h @@ -63,7 +63,6 @@ class ObjectContext : public ceph::common::intrusive_lru_base< { private: tri_mutex lock; - bool recovery_read_marker = false; public: ObjectState obs; @@ -117,9 +116,6 @@ public: template void interrupt(Exception ex) { lock.abort(std::move(ex)); - if (recovery_read_marker) { - drop_recovery_read(); - } } bool is_loaded() const { @@ -293,23 +289,6 @@ public: bool is_request_pending() const { return lock.is_acquired(); } - - bool get_recovery_read() { - if (lock.try_lock_for_read()) { - recovery_read_marker = true; - return true; - } else { - return false; - } - } - void wait_recovery_read() { - assert(lock.get_readers() > 0); - recovery_read_marker = true; - } - void drop_recovery_read() { - assert(recovery_read_marker); - recovery_read_marker = false; - } }; using ObjectContextRef = ObjectContext::Ref; diff --git a/src/crimson/osd/pg_recovery.cc b/src/crimson/osd/pg_recovery.cc index 4ed861cfd7ef..05f8c6e1f968 100644 --- a/src/crimson/osd/pg_recovery.cc +++ b/src/crimson/osd/pg_recovery.cc @@ -429,8 +429,6 @@ void PGRecovery::on_global_recover ( pg->get_peering_state().object_recovered(soid, stat_diff); pg->publish_stats_to_osd(); auto& recovery_waiter = pg->get_recovery_backend()->get_recovering(soid); - if (!is_delete) - recovery_waiter.obc->drop_recovery_read(); recovery_waiter.set_recovered(); pg->get_recovery_backend()->remove_recovering(soid); } diff --git a/src/crimson/osd/replicated_recovery_backend.cc b/src/crimson/osd/replicated_recovery_backend.cc index 4b4db79af49f..03cf38e6954b 100644 --- a/src/crimson/osd/replicated_recovery_backend.cc +++ b/src/crimson/osd/replicated_recovery_backend.cc @@ -38,7 +38,6 @@ ReplicatedRecoveryBackend::recover_object( logger().debug("recover_object: loaded obc: {}", obc->obs.oi.soid); auto& recovery_waiter = get_recovering(soid); recovery_waiter.obc = obc; - recovery_waiter.obc->wait_recovery_read(); return maybe_push_shards(head, soid, need); }, false).handle_error_interruptible( crimson::osd::PG::load_obc_ertr::all_same_way([soid](auto& code) { @@ -98,10 +97,6 @@ ReplicatedRecoveryBackend::maybe_push_shards( } return seastar::make_ready_future<>(); }).handle_exception_interruptible([this, soid](auto e) { - auto &recovery = get_recovering(soid); - if (recovery.obc) { - recovery.obc->drop_recovery_read(); - } recovering.erase(soid); return seastar::make_exception_future<>(e); });