diff options
author | Jason Wright <jason@cvs.openbsd.org> | 2002-11-14 17:20:53 +0000 |
---|---|---|
committer | Jason Wright <jason@cvs.openbsd.org> | 2002-11-14 17:20:53 +0000 |
commit | 4dccffb4958a3fc0d088dc3fede22994d986dc2d (patch) | |
tree | ad559b42b7229a55df7aee5880be5cf870a7ca1d /sys/dev/ic/hme.c | |
parent | 25332f76055a9eb159f1fba44f09303d13c8873b (diff) |
Don't complain about the defer timer expiring, call it an oerror instead.
Diffstat (limited to 'sys/dev/ic/hme.c')
-rw-r--r-- | sys/dev/ic/hme.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/sys/dev/ic/hme.c b/sys/dev/ic/hme.c index e055d2c14de..8a3c2aab5db 100644 --- a/sys/dev/ic/hme.c +++ b/sys/dev/ic/hme.c @@ -1,4 +1,4 @@ -/* $OpenBSD: hme.c,v 1.20 2002/09/28 02:04:44 jason Exp $ */ +/* $OpenBSD: hme.c,v 1.21 2002/11/14 17:20:52 jason Exp $ */ /* $NetBSD: hme.c,v 1.21 2001/07/07 15:59:37 thorpej Exp $ */ /*- @@ -801,11 +801,21 @@ hme_eint(sc, status) struct hme_softc *sc; u_int status; { - if ((status & HME_SEB_STAT_MIFIRQ) != 0) { + struct ifnet *ifp = &sc->sc_arpcom.ac_if; + + if (status & HME_SEB_STAT_MIFIRQ) { printf("%s: XXXlink status changed\n", sc->sc_dev.dv_xname); - return (1); + status &= ~HME_SEB_STAT_MIFIRQ; } + if (status & HME_SEB_STAT_DTIMEXP) { + ifp->if_oerrors++; + status &= ~HME_SEB_STAT_DTIMEXP; + } + + if (status == 0) + return (1); + printf("%s: status=%b\n", sc->sc_dev.dv_xname, status, HME_SEB_STAT_BITS); return (1); } @@ -842,7 +852,7 @@ hme_watchdog(ifp) struct hme_softc *sc = ifp->if_softc; log(LOG_ERR, "%s: device timeout\n", sc->sc_dev.dv_xname); - ++ifp->if_oerrors; + ifp->if_oerrors++; hme_reset(sc); } |