Subject: Re: [PATCH net-next 1/2] net: qed_ptp: fix redundant check of rc and against -EINVAL

From: Simon Horman <[email-masked]>
Date: Wed, 20 Oct 2021 10:48:35 +0200

On Tue, Oct 19, 2021 at 12:26:41AM -0600, Jεan Sacren wrote:
> From: Jean Sacren <[email-masked]>
> 
> We should first check rc alone and then check it against -EINVAL to
> avoid repeating the same operation.
> 
> With this change, we could also use constant 0 for return.
> 
> Signed-off-by: Jean Sacren <[email-masked]>
> ---
>  drivers/net/ethernet/qlogic/qed/qed_ptp.c | 12 +++++++-----
>  1 file changed, 7 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/net/ethernet/qlogic/qed/qed_ptp.c b/drivers/net/ethernet/qlogic/qed/qed_ptp.c
> index 2c62d732e5c2..c927ff409109 100644
> --- a/drivers/net/ethernet/qlogic/qed/qed_ptp.c
> +++ b/drivers/net/ethernet/qlogic/qed/qed_ptp.c
> @@ -52,9 +52,9 @@ static int qed_ptp_res_lock(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt)
>  	qed_mcp_resc_lock_default_init(&params, NULL, resource, true);
>  
>  	rc = qed_mcp_resc_lock(p_hwfn, p_ptt, &params);
> -	if (rc && rc != -EINVAL) {
> -		return rc;
> -	} else if (rc == -EINVAL) {
> +	if (rc) {
> +		if (rc != -EINVAL)
> +			return rc;
>  		/* MFW doesn't support resource locking, first PF on the port
>  		 * has lock ownership.
>  		 */
> @@ -63,12 +63,14 @@ static int qed_ptp_res_lock(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt)
>  
>  		DP_INFO(p_hwfn, "PF doesn't have lock ownership\n");
>  		return -EBUSY;
> -	} else if (!rc && !params.b_granted) {
> +	}
> +
> +	if (!params.b_granted) {

Can it be the case where the condition above is met and !rc is false?
If so your patch seems to have changed the logic of this function.

>  		DP_INFO(p_hwfn, "Failed to acquire ptp resource lock\n");
>  		return -EBUSY;
>  	}
>  
> -	return rc;
> +	return 0;
>  }
>  
>  static int qed_ptp_res_unlock(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt)
>