Add DC_UNLOCK before first return. This caused returns when dc was on

a shared interrupt.

Pointed out by tegge.
This commit is contained in:
Warner Losh 2001-02-20 04:21:27 +00:00
parent 8859907478
commit 0aa477423a
2 changed files with 6 additions and 2 deletions

View File

@ -2716,8 +2716,10 @@ static void dc_intr(arg)
DC_LOCK(sc);
ifp = &sc->arpcom.ac_if;
if ( (CSR_READ_4(sc, DC_ISR) & DC_INTRS) == 0)
if ( (CSR_READ_4(sc, DC_ISR) & DC_INTRS) == 0) {
DC_UNLOCK(sc);
return ;
}
/* Suppress unwanted interrupts */
if (!(ifp->if_flags & IFF_UP)) {

View File

@ -2716,8 +2716,10 @@ static void dc_intr(arg)
DC_LOCK(sc);
ifp = &sc->arpcom.ac_if;
if ( (CSR_READ_4(sc, DC_ISR) & DC_INTRS) == 0)
if ( (CSR_READ_4(sc, DC_ISR) & DC_INTRS) == 0) {
DC_UNLOCK(sc);
return ;
}
/* Suppress unwanted interrupts */
if (!(ifp->if_flags & IFF_UP)) {