Fix a bug originally introduced in rev. 1.74; don't reloaded the

watchdog timer in dc_txeof() in case there are still unhandled
descriptors as dc_poll() invokes dc_poll() unconditionally.
Otherwise this would result in the watchdog timer constantly being
being reloaded and thus circumvent that the watchdog ever fires in
the DEVICE_POLLING case.

Pointed out by:	bde
This commit is contained in:
marius 2006-12-20 01:49:56 +00:00
parent 0e3caf5297
commit 8dea185730

View File

@ -2871,7 +2871,8 @@ dc_txeof(struct dc_softc *sc)
sc->dc_cdata.dc_tx_cons = idx;
ifp->if_drv_flags &= ~IFF_DRV_OACTIVE;
}
sc->dc_wdog_timer = (sc->dc_cdata.dc_tx_cnt == 0) ? 0 : 5;
if (sc->dc_cdata.dc_tx_cnt == 0)
sc->dc_wdog_timer = 0;
}
static void