From 49affebfa5fd4299ddab0b67e96015f140e598ad Mon Sep 17 00:00:00 2001 From: Samuel Just Date: Fri, 24 Sep 2021 17:10:43 -0700 Subject: [PATCH] crimson/os/seastore/.../btree_range_pin: fix is_parent_of The LBA tree implementation only requires that the start addr of a logical extent be contained within the leaf range. It's entirely possible for the end of a logical extent to extend past the end addr of the containing leaf node. Fixes: https://tracker.ceph.com/issues/52709 Signed-off-by: Samuel Just --- src/crimson/os/seastore/lba_manager/btree/btree_range_pin.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/crimson/os/seastore/lba_manager/btree/btree_range_pin.h b/src/crimson/os/seastore/lba_manager/btree/btree_range_pin.h index e087b16fa50..b80e7488c4f 100644 --- a/src/crimson/os/seastore/lba_manager/btree/btree_range_pin.h +++ b/src/crimson/os/seastore/lba_manager/btree/btree_range_pin.h @@ -21,7 +21,7 @@ struct lba_node_meta_t { bool is_parent_of(const lba_node_meta_t &other) const { return (depth == other.depth + 1) && (begin <= other.begin) && - (end >= other.end); + (end > other.begin); } std::pair split_into(laddr_t pivot) const { -- 2.39.5