From 822c7d96161f47a1f760e22cee2df08bd52a4e2e Mon Sep 17 00:00:00 2001 From: Samuel Just Date: Thu, 20 Jun 2024 17:48:04 -0700 Subject: [PATCH] crimson/.../tri_mutex: use hobject_t for tri_mutex::name debug value Useful for distinguishing between tri_mutex instances on different clones. Signed-off-by: Samuel Just --- src/crimson/common/tri_mutex.h | 10 ++++++---- src/crimson/osd/object_context.h | 2 +- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/crimson/common/tri_mutex.h b/src/crimson/common/tri_mutex.h index 6dc39656cd3..ae7119985bf 100644 --- a/src/crimson/common/tri_mutex.h +++ b/src/crimson/common/tri_mutex.h @@ -5,6 +5,8 @@ #include #include + +#include "common/hobject.h" #include "crimson/common/log.h" class read_lock { @@ -45,9 +47,9 @@ class tri_mutex : private read_lock, public: tri_mutex() = default; #ifdef NDEBUG - tri_mutex(const std::string obj_name) : name() {} + tri_mutex(const hobject_t &obj_name) : name() {} #else - tri_mutex(const std::string obj_name) : name(obj_name) {} + tri_mutex(const hobject_t &obj_name) : name(obj_name) {} #endif ~tri_mutex(); @@ -99,7 +101,7 @@ public: } } - std::string_view get_name() const{ + const hobject_t &get_name() const{ return name; } @@ -122,7 +124,7 @@ private: type_t type; }; seastar::circular_buffer waiters; - const std::string name; + const hobject_t name; friend class read_lock; friend class write_lock; friend class excl_lock; diff --git a/src/crimson/osd/object_context.h b/src/crimson/osd/object_context.h index 292ef4d4bde..4148e3b592c 100644 --- a/src/crimson/osd/object_context.h +++ b/src/crimson/osd/object_context.h @@ -73,7 +73,7 @@ public: using watch_key_t = std::pair; std::map> watchers; - ObjectContext(hobject_t hoid) : lock(hoid.oid.name), + ObjectContext(hobject_t hoid) : lock(hoid), obs(std::move(hoid)) {} const hobject_t &get_oid() const { -- 2.39.5