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 <xuxuehan@qianxin.com>
// indirect mapping.
template <typename T, typename node_key_t>
inline BaseChildNode<T, node_key_t>* get_reserved_ptr() {
- return (BaseChildNode<T, node_key_t>*)0x1;
+ //TODO: using instant integers as invalid pointers may
+ // not be a good practice.
+ constexpr uint64_t reserved_ptr = std::numeric_limits<size_t>::max() - 15;
+ return (BaseChildNode<T, node_key_t>*)reserved_ptr;
}
template <typename T, typename node_key_t>