Re: [RESEND PATCH 1/8] maple_tree: set the node limit when creating a new root node

From: Liam R. Howlett
Date: Fri Jul 07 2023 - 11:18:56 EST


* Peng Zhang <zhangpeng.00@xxxxxxxxxxxxx> [230707 06:11]:
> Set the node limit of the root node so that the last pivot of all nodes
> is the node limit (if the node is not full).
>
> Signed-off-by: Peng Zhang <zhangpeng.00@xxxxxxxxxxxxx>

This has been on my list of things to do for a while, thanks.

Reviewed-by: Liam R. Howlett <Liam.Howlett@xxxxxxxxxx>

> ---
> lib/maple_tree.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/lib/maple_tree.c b/lib/maple_tree.c
> index d3072858c280..f55e59bd9122 100644
> --- a/lib/maple_tree.c
> +++ b/lib/maple_tree.c
> @@ -3692,7 +3692,8 @@ static inline int mas_root_expand(struct ma_state *mas, void *entry)
> mas->offset = slot;
> pivots[slot] = mas->last;
> if (mas->last != ULONG_MAX)
> - slot++;
> + pivots[++slot] = ULONG_MAX;
> +
> mas->depth = 1;
> mas_set_height(mas);
> ma_set_meta(node, maple_leaf_64, 0, slot);
> --
> 2.20.1
>
>