[PATCH 01/34] maple_tree: Fix static analyser cppcheck issue

Peng Zhang perlyzhang at gmail.com
Tue Apr 25 21:06:56 PDT 2023


在 2023/4/25 22:09, Liam R. Howlett 写道:
> Static analyser of the maple tree code noticed that the split variable
> is being used to dereference into an array prior to checking the
> variable itself.  Fix this issue by changing the order of the statement
> to check the variable first.
>
> Reported-by: David Binderman <dcb314 at hotmail.com>
> Signed-off-by: Liam R. Howlett <Liam.Howlett at oracle.com>

Reviewed-by: Peng Zhang<zhangpeng.00 at bytedance.com>

> ---
>   lib/maple_tree.c | 5 +++--
>   1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/lib/maple_tree.c b/lib/maple_tree.c
> index 110a36479dced..9cf4fca42310c 100644
> --- a/lib/maple_tree.c
> +++ b/lib/maple_tree.c
> @@ -1943,8 +1943,9 @@ static inline int mab_calc_split(struct ma_state *mas,
>   		 * causes one node to be deficient.
>   		 * NOTE: mt_min_slots is 1 based, b_end and split are zero.
>   		 */
> -		while (((bn->pivot[split] - min) < slot_count - 1) &&
> -		       (split < slot_count - 1) && (b_end - split > slot_min))
> +		while ((split < slot_count - 1) &&
> +		       ((bn->pivot[split] - min) < slot_count - 1) &&
> +		       (b_end - split > slot_min))
>   			split++;
>   	}
>   



More information about the maple-tree mailing list