2020-03-29 03:41:24

by John B. Wyatt IV

[permalink] [raw]
Subject: [PATCH] staging: vt6656: add error code handling to unused variable

Add error code handling to unused 'ret' variable that was never used.
Return an error code from functions called within vnt_radio_power_on.

Issue reported by coccinelle (coccicheck).

Suggested-by: Quentin Deslandes <[email protected]>
Suggested-by: Stefano Brivio <[email protected]>
Signed-off-by: John B. Wyatt IV <[email protected]>
---
drivers/staging/vt6656/card.c | 19 ++++++++++++++-----
1 file changed, 14 insertions(+), 5 deletions(-)

diff --git a/drivers/staging/vt6656/card.c b/drivers/staging/vt6656/card.c
index dc3ab10eb630..9d23c3ec1e60 100644
--- a/drivers/staging/vt6656/card.c
+++ b/drivers/staging/vt6656/card.c
@@ -723,9 +723,13 @@ int vnt_radio_power_on(struct vnt_private *priv)
{
int ret = 0;

- vnt_exit_deep_sleep(priv);
+ ret = vnt_exit_deep_sleep(priv);
+ if (ret)
+ goto end;

- vnt_mac_reg_bits_on(priv, MAC_REG_HOSTCR, HOSTCR_RXON);
+ ret = vnt_mac_reg_bits_on(priv, MAC_REG_HOSTCR, HOSTCR_RXON);
+ if (ret)
+ goto end;

switch (priv->rf_type) {
case RF_AL2230:
@@ -734,13 +738,18 @@ int vnt_radio_power_on(struct vnt_private *priv)
case RF_VT3226:
case RF_VT3226D0:
case RF_VT3342A0:
- vnt_mac_reg_bits_on(priv, MAC_REG_SOFTPWRCTL,
- (SOFTPWRCTL_SWPE2 | SOFTPWRCTL_SWPE3));
+ ret = vnt_mac_reg_bits_on(priv, MAC_REG_SOFTPWRCTL,
+ (SOFTPWRCTL_SWPE2 | SOFTPWRCTL_SWPE3));
break;
}
+ if (ret)
+ goto end;

- vnt_mac_reg_bits_off(priv, MAC_REG_GPIOCTL1, GPIO3_INTMD);
+ ret = vnt_mac_reg_bits_off(priv, MAC_REG_GPIOCTL1, GPIO3_INTMD);
+ if (ret)
+ goto end;

+end:
return ret;
}

--
2.25.1


2020-03-29 08:09:46

by Julia Lawall

[permalink] [raw]
Subject: Re: [PATCH] staging: vt6656: add error code handling to unused variable



On Sat, 28 Mar 2020, John B. Wyatt IV wrote:

> Add error code handling to unused 'ret' variable that was never used.
> Return an error code from functions called within vnt_radio_power_on.
>
> Issue reported by coccinelle (coccicheck).
>
> Suggested-by: Quentin Deslandes <[email protected]>
> Suggested-by: Stefano Brivio <[email protected]>
> Signed-off-by: John B. Wyatt IV <[email protected]>
> ---
> drivers/staging/vt6656/card.c | 19 ++++++++++++++-----
> 1 file changed, 14 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/staging/vt6656/card.c b/drivers/staging/vt6656/card.c
> index dc3ab10eb630..9d23c3ec1e60 100644
> --- a/drivers/staging/vt6656/card.c
> +++ b/drivers/staging/vt6656/card.c
> @@ -723,9 +723,13 @@ int vnt_radio_power_on(struct vnt_private *priv)
> {
> int ret = 0;
>
> - vnt_exit_deep_sleep(priv);
> + ret = vnt_exit_deep_sleep(priv);
> + if (ret)
> + goto end;

Normally, if there is nothing to clean up, one can just say return ret.

>
> - vnt_mac_reg_bits_on(priv, MAC_REG_HOSTCR, HOSTCR_RXON);
> + ret = vnt_mac_reg_bits_on(priv, MAC_REG_HOSTCR, HOSTCR_RXON);
> + if (ret)
> + goto end;
>
> switch (priv->rf_type) {
> case RF_AL2230:
> @@ -734,13 +738,18 @@ int vnt_radio_power_on(struct vnt_private *priv)
> case RF_VT3226:
> case RF_VT3226D0:
> case RF_VT3342A0:
> - vnt_mac_reg_bits_on(priv, MAC_REG_SOFTPWRCTL,
> - (SOFTPWRCTL_SWPE2 | SOFTPWRCTL_SWPE3));
> + ret = vnt_mac_reg_bits_on(priv, MAC_REG_SOFTPWRCTL,
> + (SOFTPWRCTL_SWPE2 | SOFTPWRCTL_SWPE3));
> break;
> }
> + if (ret)
> + goto end;
>
> - vnt_mac_reg_bits_off(priv, MAC_REG_GPIOCTL1, GPIO3_INTMD);
> + ret = vnt_mac_reg_bits_off(priv, MAC_REG_GPIOCTL1, GPIO3_INTMD);
> + if (ret)
> + goto end;

There is no need for the above if, because whether ret is nonzero or not,
you will just end up at the next line.

julia

>
> +end:
> return ret;
> }
>
> --
> 2.25.1
>
>