diff options
Diffstat (limited to 'sys/pci/if_fxp.c')
-rw-r--r-- | sys/pci/if_fxp.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/pci/if_fxp.c b/sys/pci/if_fxp.c index 08dd15c..f10e58c 100644 --- a/sys/pci/if_fxp.c +++ b/sys/pci/if_fxp.c @@ -1218,7 +1218,12 @@ fxp_intr(arg) FXP_LOCK(sc, s); - while (!sc->suspended && (statack = CSR_READ_1(sc, FXP_CSR_SCB_STATACK)) != 0) { + if (sc->suspended) { + FXP_UNLOCK(sc, s); + return; + } + + while ((statack = CSR_READ_1(sc, FXP_CSR_SCB_STATACK)) != 0) { #if defined(__NetBSD__) claimed = 1; #endif |