RE: [PATCH 1/2] bnx2x:Fix error handling for the function bnx2x_set_mutl_gpio

From: Ariel Elior
Date: Mon Mar 07 2016 - 09:50:52 EST


> -----Original Message-----
> From: Nicholas Krause [mailto:xerofoify@xxxxxxxxx]
> Sent: Monday, March 07, 2016 4:05 AM
> To: Ariel Elior <Ariel.Elior@xxxxxxxxxx>
> Cc: netdev <netdev@xxxxxxxxxxxxxxx>; linux-kernel <linux-kernel@xxxxxxxxxxxxxxx>
> Subject: [PATCH 1/2] bnx2x:Fix error handling for the function bnx2x_set_mutl_gpio
>
> This fixes the error handling for the function bnx2x_set_mutl_gpio
> for checking if the function bnx2x_acquire_hw_lock ran successfully
> by not returning a error code and if it does return the error code
> to this function's caller in addition to exiting from this function
> immediately due to this failure.
>
> Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
> ---
> drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
> b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
> index c27af12..a55f1c2 100644
> --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
> +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
> @@ -2151,7 +2151,9 @@ int bnx2x_set_mult_gpio(struct bnx2x *bp, u8 pins, u32
> mode)
>
> /* Any port swapping should be handled by caller. */
>
> - bnx2x_acquire_hw_lock(bp, HW_LOCK_RESOURCE_GPIO);
> + rc = bnx2x_acquire_hw_lock(bp, HW_LOCK_RESOURCE_GPIO);
> + if (rc)
> + return rc;
> /* read GPIO and mask except the float bits */
> gpio_reg = REG_RD(bp, MISC_REG_GPIO);
> gpio_reg &= ~(pins << MISC_REGISTERS_GPIO_FLOAT_POS);
> --
> 2.1.4
Thanks Nicholas.
Acked-by: Ariel Elior <ariel.elior@xxxxxxxxxx>