]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
os/bluestore/AvlAllocator: introduce bluestore_avl_alloc_ff_max_search_bytes 43747/head
authorKefu Chai <kchai@redhat.com>
Tue, 1 Jun 2021 11:14:33 +0000 (19:14 +0800)
committerMauricio Faria de Oliveira <mfo@canonical.com>
Wed, 10 Nov 2021 15:07:56 +0000 (12:07 -0300)
commit7630498c51fd74ab1d803285564b6b27ffe93216
tree74ac9bf67cdb4bcc44e09312d3096414dad17497
parent19c36e2024c00bed4720dd56af49940484db42c6
os/bluestore/AvlAllocator: introduce bluestore_avl_alloc_ff_max_search_bytes

so AvlAllocator can switch from the first-first mode to best-fit mode
without walking through the whole space map tree. in the
highly-fragmented system, iterating the whole tree could hurt the
performance of fast storage system a lot.

the idea comes from openzfs's metaslab allocator.

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 5a26875049d13130ffe5954428da0e1b9750359f)
Signed-off-by: Mauricio Faria de Oliveira <mfo@canonical.com>
 Conflicts:
src/common/options/global.yaml.in:
- Moved new option into src/common/options.cc
src/common/options.cc
src/os/bluestore/AvlAllocator.cc
src/os/bluestore/AvlAllocator.h