Re: [PATCH 2/2] net: usb: ax88179_178a: avoid two consecutive device resets

From: Paolo Abeni
Date: Thu Nov 16 2023 - 04:42:54 EST


On Tue, 2023-11-14 at 13:50 +0100, Jose Ignacio Tornos Martinez wrote:
> The device is always reset two consecutive times (ax88179_reset is called
> twice), one from usbnet_probe during the device binding and the other from
> usbnet_open.
>
> Let only the reset during the device binding to prepare the device as soon
> as possible and not repeat the reset operation (tested with generic ASIX
> Electronics Corp. AX88179 Gigabit Ethernet device).
>
> Reported-by: Herb Wei <weihao.bj@xxxxxxxxxxxxx>
> Tested-by: Herb Wei <weihao.bj@xxxxxxxxxxxxx>
> Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@xxxxxxxxxx>

We need a suitable Fixes tag even here ;)

> ---
> drivers/net/usb/ax88179_178a.c | 13 -------------
> 1 file changed, 13 deletions(-)
>
> diff --git a/drivers/net/usb/ax88179_178a.c b/drivers/net/usb/ax88179_178a.c
> index 4ea0e155bb0d..864c6fc2db33 100644
> --- a/drivers/net/usb/ax88179_178a.c
> +++ b/drivers/net/usb/ax88179_178a.c
> @@ -1678,7 +1678,6 @@ static const struct driver_info ax88179_info = {
> .unbind = ax88179_unbind,
> .status = ax88179_status,
> .link_reset = ax88179_link_reset,
> - .reset = ax88179_reset,
> .stop = ax88179_stop,
> .flags = FLAG_ETHER | FLAG_FRAMING_AX,
> .rx_fixup = ax88179_rx_fixup,

This looks potentially dangerous, as the device will not get a reset in
down/up cycles; *possibly* dropping the reset call from ax88179_bind()
would be safer.

In both cases touching so many H/W variant with testing available on a
single one sounds dangerous. Is the unneeded 2nd reset causing any
specific issue?

Thanks,

Paolo