From 85d6e4b09b5a8aac0c3ea37133e16e3a9e2894f0 Mon Sep 17 00:00:00 2001 From: Jos Collin Date: Thu, 21 Sep 2017 12:35:53 +0530 Subject: [PATCH] osd: silence warnings from -Wsign-compare MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Fixed the warning : ceph/src/osd/OSDMap.cc: In member function ‘int OSDMap::validate_crush_rules(CrushWrapper*, std::ostream*) const’: ceph/src/osd/OSDMap.cc:3278:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (pool.get_size() < (int)newcrush->get_rule_mask_min_size(ruleno) || ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ceph/src/osd/OSDMap.cc:3279:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] pool.get_size() > (int)newcrush->get_rule_mask_max_size(ruleno)) { ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by: Jos Collin --- src/osd/OSDMap.cc | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/osd/OSDMap.cc b/src/osd/OSDMap.cc index 7986b35e130a..74472448f192 100644 --- a/src/osd/OSDMap.cc +++ b/src/osd/OSDMap.cc @@ -3275,9 +3275,10 @@ int OSDMap::validate_crush_rules(CrushWrapper *newcrush, *ss << "pool " << i.first << " type does not match rule " << ruleno; return -EINVAL; } - if (pool.get_size() < (int)newcrush->get_rule_mask_min_size(ruleno) || - pool.get_size() > (int)newcrush->get_rule_mask_max_size(ruleno)) { - *ss << "pool " << i.first << " size " << pool.get_size() << " does not" + int poolsize = pool.get_size(); + if (poolsize < newcrush->get_rule_mask_min_size(ruleno) || + poolsize > newcrush->get_rule_mask_max_size(ruleno)) { + *ss << "pool " << i.first << " size " << poolsize << " does not" << " fall within rule " << ruleno << " min_size " << newcrush->get_rule_mask_min_size(ruleno) << " and max_size " << newcrush->get_rule_mask_max_size(ruleno); -- 2.47.3