From 05db4b58738e48e0d5c4e43abd5e359f232f5862 Mon Sep 17 00:00:00 2001 From: xie xingguo Date: Sat, 4 Jun 2016 11:19:37 +0800 Subject: [PATCH] bluestore/BitAllocator: simplify calculation of num_child Signed-off-by: xie xingguo --- src/os/bluestore/BitAllocator.cc | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/os/bluestore/BitAllocator.cc b/src/os/bluestore/BitAllocator.cc index 61c8d3ee098..2184963588b 100644 --- a/src/os/bluestore/BitAllocator.cc +++ b/src/os/bluestore/BitAllocator.cc @@ -703,11 +703,8 @@ void BitMapAreaIN::init(int64_t total_blocks, int64_t area_idx, bool def) init_common(total_blocks, area_idx, def); int64_t level_factor = pow(BitMapArea::get_span_size(), m_level); - num_child = total_blocks / level_factor; + num_child = (total_blocks + level_factor - 1) / level_factor; debug_assert(num_child < MAX_INT16); - if (total_blocks % level_factor) { - num_child++; - } m_child_size_blocks = level_factor; -- 2.47.3