:... :> :> The reason I set sc->pending_txs to 0 in DFly after the reinit is :> because when a watchdog timeout occurs and you reset the device, :> *ALL* mbufs still sitting in the transmit ring are lost. They will :> never be acknowledged, ever. So pending_txs will never drop back to 0 on :> its own. This is what led to continuous watchdog timeout reports :> when, in fact, only one timeout actually occured. : :the problem is that with some versions of the hardware you are not :even able to get the first packet out. : :-- :Bjoern A. Zeeb bzeeb at Zabbadoz dot NeT I'm not sure if its the same as what happened to me, but I believe I have observed this as well. But at least in my case it turned out to be a bug in (if_nv.c for DFly) that issued ABI calls before resetting the hardware. I think it had something to do with nv_stop() being called before the initial hardware reset and nv_stop() then making an ABI call or two that expected the hardware to already be in a sane state (when it wasn't). You'd have to look at the DFly commit to see for sure. -Matt Matthew Dillon <dillon_at_backplane.com>Received on Fri Nov 25 2005 - 15:09:56 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:48 UTC