From 540b1bc9e6fc047d2f99ed9783da95dc2ab89d5c Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Tue, 20 Feb 2018 15:20:00 -0600 Subject: [PATCH] osd: clean up mutex naming for OSDShard Signed-off-by: Sage Weil --- src/osd/OSD.cc | 5 ----- src/osd/OSD.h | 15 +++++++++++---- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index 32cf018d25a..a18dd24312c 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -1928,15 +1928,10 @@ OSD::OSD(CephContext *cct_, ObjectStore *store_, // initialize shards num_shards = get_num_op_shards(); for (uint32_t i = 0; i < num_shards; i++) { - char lock_name[128] = {0}; - snprintf(lock_name, sizeof(lock_name), "OSDShard.%d::sdata_lock", i); - char order_lock[128] = {0}; - snprintf(order_lock, sizeof(order_lock), "OSDShard.%d::sdata_op_ordering_lock", i); OSDShard *one_shard = new OSDShard( i, cct, this, - lock_name, order_lock, cct->_conf->osd_op_pq_max_tokens_per_priority, cct->_conf->osd_op_pq_min_cost, op_queue); diff --git a/src/osd/OSD.h b/src/osd/OSD.h index aea1ec0e294..85d5daaf25d 100644 --- a/src/osd/OSD.h +++ b/src/osd/OSD.h @@ -1054,9 +1054,14 @@ struct OSDShard { const unsigned shard_id; CephContext *cct; OSD *osd; + + string shard_name; + + string sdata_lock_name; Mutex sdata_lock; Cond sdata_cond; + string sdata_op_ordering_lock_name; Mutex sdata_op_ordering_lock; ///< protects all members below OSDMapRef osdmap; @@ -1125,15 +1130,17 @@ struct OSDShard { int id, CephContext *cct, OSD *osd, - string lock_name, string ordering_lock, uint64_t max_tok_per_prio, uint64_t min_cost, io_queue opqueue) : shard_id(id), cct(cct), osd(osd), - sdata_lock(lock_name.c_str(), false, true, false, cct), - sdata_op_ordering_lock(ordering_lock.c_str(), false, true, - false, cct) { + shard_name(string("OSDShard.") + stringify(id)), + sdata_lock_name(shard_name + "::sdata_lock"), + sdata_lock(sdata_lock_name.c_str(), false, true, false, cct), + sdata_op_ordering_lock_name(shard_name + "::sdata_op_ordering_lock"), + sdata_op_ordering_lock(sdata_op_ordering_lock_name.c_str(), false, true, + false, cct), if (opqueue == io_queue::weightedpriority) { pqueue = std::make_unique< WeightedPriorityQueue>( -- 2.39.5