Only reset driver state when a hardware error is detected.
Preserve warning but do not reset if we enter the routine without seeing a hardware error.
This commit is contained in:
parent
3ca1bceea5
commit
10882804c9
@ -3436,6 +3436,11 @@ mxge_watchdog_reset(mxge_softc_t *sc)
|
||||
|
||||
/* and redo any changes we made to our config space */
|
||||
mxge_setup_cfg_space(sc);
|
||||
|
||||
if (sc->ifp->if_drv_flags & IFF_DRV_RUNNING) {
|
||||
mxge_close(sc);
|
||||
err = mxge_open(sc);
|
||||
}
|
||||
} else {
|
||||
device_printf(sc->dev, "NIC did not reboot, ring state:\n");
|
||||
device_printf(sc->dev, "tx.req=%d tx.done=%d\n",
|
||||
@ -3443,11 +3448,7 @@ mxge_watchdog_reset(mxge_softc_t *sc)
|
||||
device_printf(sc->dev, "pkt_done=%d fw=%d\n",
|
||||
sc->ss->tx.pkt_done,
|
||||
be32toh(sc->ss->fw_stats->send_done_count));
|
||||
}
|
||||
|
||||
if (sc->ifp->if_drv_flags & IFF_DRV_RUNNING) {
|
||||
mxge_close(sc);
|
||||
err = mxge_open(sc);
|
||||
device_printf(sc->dev, "not resetting\n");
|
||||
}
|
||||
|
||||
abort:
|
||||
|
Loading…
Reference in New Issue
Block a user