[Prism54-devel] [PATCH] reset_on_mgmt_timeo (bugs 56,59)
Aurelien
slts@free.fr
Thu, 18 Mar 2004 16:40:29 +0100
Hi,
this patch looks better :-) I commited it a few hours ago. Now let's see
if it works.
...And justice for all
Denis Vlasenko wrote:
> On Sunday 07 March 2004 02:32, Aurelien wrote:
>
>>Hi,
>>First, islpci_reset will reset the card and reset ssid and everything
>>(and it calls islpci_reset_if and isl38xx_interface_reset).
>
>
> Aha. Is there code to restore settings (are they remembered anywhere?)
> or should I add such code?
>
> Let's think about better names:
> islpci_reset -> keep the same name
> islpci_reset_if -> merge into islpci_reset
> I see no reason why this code is in separate function
> isl38xx_interface_reset -> isl38xx_initiate_reset
> because it basically only starts initialization
> by setting reset bit in hw register
>
>
>>Now about your patch : this will not help to solve the "NETDEV WATCHDOG:
>>ethx: transmit timed out". Moreover it's a bit dangerous, because
>>islpci_reset will call islpci_mgt_transaction and you can end up with a
>>forever recursive behavior.
>
>
> Bad, bad, bad.
>
>
>>To reset the device after a "NETDEV WATCHDOG", look at
>>islpci_eth_tx_timeout.
>
>
> Here is alternative patch. Should work only 2.6, no effect in 2.4
> (it uses workqueues). Compile tested only.
> --
> vda