From f51a5dfa1345a672043f4bc66b57dd12d680313d Mon Sep 17 00:00:00 2001 From: Changcheng Liu Date: Mon, 25 May 2020 16:54:27 +0800 Subject: [PATCH] rbd/rwl: correct m_perfcounter access scope There's no m_perfcounter in SyncPoint. Its scope is in ReplicatedWriteLog. Signed-off-by: Changcheng Liu --- src/librbd/cache/ReplicatedWriteLog.cc | 3 +++ src/librbd/cache/rwl/SyncPoint.cc | 2 -- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/librbd/cache/ReplicatedWriteLog.cc b/src/librbd/cache/ReplicatedWriteLog.cc index 8e27c8d9ca099..bc12af60dfa56 100644 --- a/src/librbd/cache/ReplicatedWriteLog.cc +++ b/src/librbd/cache/ReplicatedWriteLog.cc @@ -2385,6 +2385,9 @@ void ReplicatedWriteLog::new_sync_point(DeferredContexts &later) { * nullptr, but m_current_sync_gen may not be zero. */ if (old_sync_point) { new_sync_point->setup_earlier_sync_point(old_sync_point, m_last_op_sequence_num); + m_perfcounter->hinc(l_librbd_rwl_syncpoint_hist, + old_sync_point->log_entry->writes, + old_sync_point->log_entry->bytes); /* This sync point will acquire no more sub-ops. Activation needs * to acquire m_lock, so defer to later*/ later.add(new LambdaContext( diff --git a/src/librbd/cache/rwl/SyncPoint.cc b/src/librbd/cache/rwl/SyncPoint.cc index 19126acd66442..cb3f3cfeebd91 100644 --- a/src/librbd/cache/rwl/SyncPoint.cc +++ b/src/librbd/cache/rwl/SyncPoint.cc @@ -93,8 +93,6 @@ void SyncPoint::add_in_on_appending_ctxs(Context* ctx) { void SyncPoint::setup_earlier_sync_point(std::shared_ptr sync_point, uint64_t last_op_sequence_num) { - m_perfcounter->inc(l_librbd_rwl_syncpoint_hist, - sync_point->log_entry->writes, sync_point->log_entry->bytes); earlier_sync_point = sync_point; log_entry->prior_sync_point_flushed = false; earlier_sync_point->log_entry->next_sync_point_entry = log_entry; -- 2.39.5