[PATCH net-next v1 2/6] net: usb: lan78xx: Use ETIMEDOUT instead of ETIME in lan78xx_stop_hw

Oleksij Rempel posted 6 patches 1 year ago
There is a newer version of this series
[PATCH net-next v1 2/6] net: usb: lan78xx: Use ETIMEDOUT instead of ETIME in lan78xx_stop_hw
Posted by Oleksij Rempel 1 year ago
Update lan78xx_stop_hw to return -ETIMEDOUT instead of -ETIME when
a timeout occurs. While -ETIME indicates a general timer expiration,
-ETIMEDOUT is more commonly used for signaling operation timeouts and
provides better consistency with standard error handling in the driver.

The -ETIME checks in tx_complete() and rx_complete() are unrelated to
this error handling change. In these functions, the error values are derived
from urb->status, which reflects USB transfer errors. The error value from
lan78xx_stop_hw will be exposed in the following cases:
- usb_driver::suspend
- net_device_ops::ndo_stop (potentially, though currently the return value
  is not used).

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
---
 drivers/net/usb/lan78xx.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/net/usb/lan78xx.c b/drivers/net/usb/lan78xx.c
index 270345fcad65..4674051f5c9c 100644
--- a/drivers/net/usb/lan78xx.c
+++ b/drivers/net/usb/lan78xx.c
@@ -844,9 +844,7 @@ static int lan78xx_stop_hw(struct lan78xx_net *dev, u32 reg, u32 hw_enabled,
 		} while (!stopped && !time_after(jiffies, timeout));
 	}
 
-	ret = stopped ? 0 : -ETIME;
-
-	return ret;
+	return stopped ? 0 : -ETIMEDOUT;
 }
 
 static int lan78xx_flush_fifo(struct lan78xx_net *dev, u32 reg, u32 fifo_flush)
-- 
2.39.5
Re: [PATCH net-next v1 2/6] net: usb: lan78xx: Use ETIMEDOUT instead of ETIME in lan78xx_stop_hw
Posted by Mateusz Polchlopek 1 year ago

On 12/16/2024 1:09 PM, Oleksij Rempel wrote:
> Update lan78xx_stop_hw to return -ETIMEDOUT instead of -ETIME when
> a timeout occurs. While -ETIME indicates a general timer expiration,
> -ETIMEDOUT is more commonly used for signaling operation timeouts and
> provides better consistency with standard error handling in the driver.
> 
> The -ETIME checks in tx_complete() and rx_complete() are unrelated to
> this error handling change. In these functions, the error values are derived
> from urb->status, which reflects USB transfer errors. The error value from
> lan78xx_stop_hw will be exposed in the following cases:
> - usb_driver::suspend
> - net_device_ops::ndo_stop (potentially, though currently the return value
>    is not used).
> 
> Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
> ---
>   drivers/net/usb/lan78xx.c | 4 +---
>   1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/drivers/net/usb/lan78xx.c b/drivers/net/usb/lan78xx.c
> index 270345fcad65..4674051f5c9c 100644
> --- a/drivers/net/usb/lan78xx.c
> +++ b/drivers/net/usb/lan78xx.c
> @@ -844,9 +844,7 @@ static int lan78xx_stop_hw(struct lan78xx_net *dev, u32 reg, u32 hw_enabled,
>   		} while (!stopped && !time_after(jiffies, timeout));
>   	}
>   
> -	ret = stopped ? 0 : -ETIME;
> -
> -	return ret;
> +	return stopped ? 0 : -ETIMEDOUT;
>   }
>   
>   static int lan78xx_flush_fifo(struct lan78xx_net *dev, u32 reg, u32 fifo_flush)

This looks good, nice cleanup.

Reviewed-by: Mateusz Polchlopek <mateusz.polchlopek@intel.com>