Subject: Re: [PATCH net-next 5/8] net: remove redundant judgments to simplify the code

From: Simon Horman <[email-masked]>
Date: Sat, 24 Aug 2024 19:16:24 +0100

On Thu, Aug 22, 2024 at 09:39:05PM +0800, Li Zetao wrote:
> The res variable has been initialized to 0, and the number of prots
> being used will not exceed MAX_INT, so there is no need to judge
> whether it is greater than 0 before returning.
> 
> Refer to the implementation of sock_inuse_get.
> 
> Signed-off-by: Li Zetao <[email-masked]>
> ---
>  net/core/sock.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/net/core/sock.c b/net/core/sock.c
> index bbe4c58470c3..52bfc86a2f37 100644
> --- a/net/core/sock.c
> +++ b/net/core/sock.c
> @@ -3800,7 +3800,7 @@ int sock_prot_inuse_get(struct net *net, struct proto *prot)
>  	for_each_possible_cpu(cpu)
>  		res += per_cpu_ptr(net->core.prot_inuse, cpu)->val[idx];

Are you really sure that val[idx] can never be negative?

>  
> -	return res >= 0 ? res : 0;
> +	return res;
>  }
>  EXPORT_SYMBOL_GPL(sock_prot_inuse_get);
>  
> -- 
> 2.34.1
> 
>