From: Xuehan Xu Date: Mon, 3 Mar 2025 10:07:25 +0000 (+0800) Subject: crimson/os/seastore/linked_tree_node: set reserved_ptr to an 8-byte X-Git-Tag: v20.3.0~433^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=3303f86fdd50bf4f57447ca76952bceb45c00ee4;p=ceph.git crimson/os/seastore/linked_tree_node: set reserved_ptr to an 8-byte aligned address Maybe we shouldn't be using an instant integer as the invalid pointer. Fixes: https://tracker.ceph.com/issues/70202 Signed-off-by: Xuehan Xu --- diff --git a/src/crimson/os/seastore/linked_tree_node.h b/src/crimson/os/seastore/linked_tree_node.h index 4f8e52bea17c..76be226ebb72 100644 --- a/src/crimson/os/seastore/linked_tree_node.h +++ b/src/crimson/os/seastore/linked_tree_node.h @@ -217,7 +217,10 @@ protected: // indirect mapping. template inline BaseChildNode* get_reserved_ptr() { - return (BaseChildNode*)0x1; + //TODO: using instant integers as invalid pointers may + // not be a good practice. + constexpr uint64_t reserved_ptr = std::numeric_limits::max() - 15; + return (BaseChildNode*)reserved_ptr; } template