--- src/sys/dev/netif/fe/if_fe.c 2005/06/14 11:41:37 1.17 +++ src/sys/dev/netif/fe/if_fe.c 2005/06/14 15:19:28 1.18 @@ -81,7 +81,7 @@ #include #include #include -#include +#include #include #include @@ -943,9 +943,7 @@ fe_reset (struct fe_softc *sc) void fe_stop (struct fe_softc *sc) { - int s; - - s = splimp(); + crit_enter(); /* Disable interrupts. */ fe_outb(sc, FE_DLCR2, 0x00); @@ -979,7 +977,7 @@ fe_stop (struct fe_softc *sc) if (sc->stop) sc->stop(sc); - (void) splx(s); + crit_exit(); } /* @@ -1007,10 +1005,9 @@ static void fe_init (void * xsc) { struct fe_softc *sc = xsc; - int s; /* Start initializing 86960. */ - s = splimp(); + crit_enter(); /* Call a hook before we start initializing the chip. */ if (sc->init) @@ -1120,7 +1117,7 @@ fe_init (void * xsc) fe_start(&sc->sc_if); #endif - (void) splx(s); + crit_exit(); } /* @@ -1753,9 +1750,9 @@ fe_ioctl (struct ifnet * ifp, u_long com { struct fe_softc *sc = ifp->if_softc; struct ifreq *ifr = (struct ifreq *)data; - int s, error = 0; + int error = 0; - s = splimp(); + crit_enter(); switch (command) { case SIOCSIFFLAGS: @@ -1801,7 +1798,8 @@ fe_ioctl (struct ifnet * ifp, u_long com break; } - (void) splx(s); + crit_exit(); + return (error); }