Re: [PATCH 8/8] maple_tree: refine mab_calc_split function

From: Liam Howlett
Date: Tue Dec 20 2022 - 10:06:09 EST


* Vernon Yang <vernon2gm@xxxxxxxxx> [221220 09:26]:
> Invert the conditional judgment of the mid_split, to focus
> the return statement in the last statement, which is easier
> to understand and for better readability.
>
> Signed-off-by: Vernon Yang <vernon2gm@xxxxxxxxx>
> ---
> lib/maple_tree.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/lib/maple_tree.c b/lib/maple_tree.c
> index 16cdcf309e97..d147669fb99c 100644
> --- a/lib/maple_tree.c
> +++ b/lib/maple_tree.c
> @@ -1882,10 +1882,9 @@ static inline int mab_calc_split(struct ma_state *mas,
>
> /* Avoid ending a node on a NULL entry */
> split = mab_no_null_split(bn, split, slot_count);
> - if (!(*mid_split))
> - return split;
>
> - *mid_split = mab_no_null_split(bn, *mid_split, slot_count);
> + if (*mid_split)
> + *mid_split = mab_no_null_split(bn, *mid_split, slot_count);

The function is written this way because mid_split is almost always
zero. If you want to change this, then we should add an unlikely() to
the if statement.

>
> return split;
> }
> --
> 2.34.1
>
>