[PATCH] maple tree: Use goto label to simplify code

Dev Jain posted 1 patch 3 months, 2 weeks ago
lib/maple_tree.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
[PATCH] maple tree: Use goto label to simplify code
Posted by Dev Jain 3 months, 2 weeks ago
Use the underflow goto label to set the status to ma_underflow and return
NULL, as is being done elsewhere.

Signed-off-by: Dev Jain <dev.jain@arm.com>
---
 lib/maple_tree.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/lib/maple_tree.c b/lib/maple_tree.c
index 00524e55a21e..25cf2bc607ca 100644
--- a/lib/maple_tree.c
+++ b/lib/maple_tree.c
@@ -4565,11 +4565,8 @@ static void *mas_prev_slot(struct ma_state *mas, unsigned long min, bool empty)
 		return entry;
 
 	if (!empty) {
-		if (mas->index <= min) {
-			mas->status = ma_underflow;
-			return NULL;
-		}
-
+		if (mas->index <= min)
+			goto underflow;
 		goto again;
 	}
 
-- 
2.30.2
Re: [PATCH] maple tree: Use goto label to simplify code
Posted by Wei Yang 3 months, 2 weeks ago
On Tue, Jun 24, 2025 at 01:37:48PM +0530, Dev Jain wrote:
>Use the underflow goto label to set the status to ma_underflow and return
>NULL, as is being done elsewhere.
>
>Signed-off-by: Dev Jain <dev.jain@arm.com>

LGTM, thanks :-)

Reviewed-by: Wei Yang <richard.weiyang@gmail.com>

-- 
Wei Yang
Help you, Help me
Re: [PATCH] maple tree: Use goto label to simplify code
Posted by Liam R. Howlett 3 months, 2 weeks ago
* Dev Jain <dev.jain@arm.com> [250624 04:08]:
> Use the underflow goto label to set the status to ma_underflow and return
> NULL, as is being done elsewhere.

Thanks for this, but the stacking of labels is unpleasant to read.

A new line like I've added makes it a bit better.  It's more my fault
having the existing code as it is.

> 
> Signed-off-by: Dev Jain <dev.jain@arm.com>
> ---
>  lib/maple_tree.c | 7 ++-----
>  1 file changed, 2 insertions(+), 5 deletions(-)
> 
> diff --git a/lib/maple_tree.c b/lib/maple_tree.c
> index 00524e55a21e..25cf2bc607ca 100644
> --- a/lib/maple_tree.c
> +++ b/lib/maple_tree.c
> @@ -4565,11 +4565,8 @@ static void *mas_prev_slot(struct ma_state *mas, unsigned long min, bool empty)
>  		return entry;
>  
>  	if (!empty) {
> -		if (mas->index <= min) {
> -			mas->status = ma_underflow;
> -			return NULL;
> -		}
> -
> +		if (mas->index <= min)
> +			goto underflow;

>  		goto again;
>  	}

Andrew, can you just add a new line like I have above?

Reviewed-by: Liam R. Howlett <Liam.Howlett@oracle.com>

Thanks,
Liam