]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
crimson/os/seastore/lba_mapping: make LBAMapping duplicate
authorXuehan Xu <xuxuehan@qianxin.com>
Wed, 19 Mar 2025 09:06:12 +0000 (17:06 +0800)
committerXuehan Xu <xuxuehan@qianxin.com>
Tue, 5 Aug 2025 06:33:59 +0000 (14:33 +0800)
commit51225f4087b3229e28a9113b5db187fd8ef7bfe1
treea6ee0759aa56a6538f223863b4916395f84a14be
parent218ccbc82a325ec054c3c750294f1ee74cc23644
crimson/os/seastore/lba_mapping: make LBAMapping duplicate
light-weighted and safe

This commit removes LBAMapping::child_pos, forces TransactioManager
methods to link children directly through child_pos_t, so that
LBAMapping::duplicate() can be a shallow one.

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
src/crimson/os/seastore/btree/btree_types.h
src/crimson/os/seastore/btree/fixed_kv_btree.h
src/crimson/os/seastore/lba_mapping.cc
src/crimson/os/seastore/lba_mapping.h
src/crimson/os/seastore/transaction_manager.cc
src/crimson/os/seastore/transaction_manager.h
src/test/crimson/seastore/test_transaction_manager.cc