lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20211007050018.GD4653@Peter>
Date:   Thu, 7 Oct 2021 13:00:18 +0800
From:   Peter Chen <peter.chen@...nel.org>
To:     Manish Narani <manish.narani@...inx.com>
Cc:     gregkh@...uxfoundation.org, michal.simek@...inx.com,
        linux-usb@...r.kernel.org, linux-kernel@...r.kernel.org,
        git@...inx.com, Piyush Mehta <piyush.mehta@...inx.com>
Subject: Re: [PATCH 5/6] usb: chipidea: core: Add return value function check

On 21-08-24 22:46:17, Manish Narani wrote:
> From: Piyush Mehta <piyush.mehta@...inx.com>
> 
> Add return value validation for function phy exit and phy power off.
> 
> Addresses-Coverity: "USELESS_CALL"
> Signed-off-by: Piyush Mehta <piyush.mehta@...inx.com>
> Signed-off-by: Manish Narani <manish.narani@...inx.com>
> ---
>  drivers/usb/chipidea/core.c | 15 ++++++++++++---
>  1 file changed, 12 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/usb/chipidea/core.c b/drivers/usb/chipidea/core.c
> index 676346f..37f619e 100644
> --- a/drivers/usb/chipidea/core.c
> +++ b/drivers/usb/chipidea/core.c
> @@ -324,7 +324,8 @@ static int _ci_usb_phy_init(struct ci_hdrc *ci)
>  
>  		ret = phy_power_on(ci->phy);
>  		if (ret) {
> -			phy_exit(ci->phy);
> +			if (phy_exit(ci->phy) < 0)
> +				dev_dbg(ci->dev, "phy exit failed\r\n");

You may not need to debug message, the phy_exit shows error message.
You may return 'ret' for phy_exit for error.

>  			return ret;
>  		}
>  	} else {
> @@ -341,12 +342,20 @@ static int _ci_usb_phy_init(struct ci_hdrc *ci)
>   */
>  static void ci_usb_phy_exit(struct ci_hdrc *ci)
>  {
> +	int ret;
> +
>  	if (ci->platdata->flags & CI_HDRC_OVERRIDE_PHY_CONTROL)
>  		return;
>  
>  	if (ci->phy) {
> -		phy_power_off(ci->phy);
> -		phy_exit(ci->phy);
> +		ret = phy_power_off(ci->phy);
> +		if (ret < 0)
> +			dev_dbg(ci->dev, "phy poweroff failed\r\n");
> +
> +		ret = phy_exit(ci->phy);
> +		if (ret < 0)
> +			dev_dbg(ci->dev, "phy exit failed\r\n");
> +

Ditto

>  	} else {
>  		usb_phy_shutdown(ci->usb_phy);
>  	}
> -- 
> 2.1.1
> 

-- 

Thanks,
Peter Chen

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ