diff options
author | Mike Belopuhov <mikeb@cvs.openbsd.org> | 2007-12-11 23:08:10 +0000 |
---|---|---|
committer | Mike Belopuhov <mikeb@cvs.openbsd.org> | 2007-12-11 23:08:10 +0000 |
commit | f7124ff7ff0ecddc526f55e537660e9ed319dbee (patch) | |
tree | f0c4468ab58e60d5b802770a31888d5b8288ab9a /sys/dev | |
parent | d73d2004343e5a1ae21ce1ce31544f6795a389c7 (diff) |
Fix check for pending interrupts as some other device is causing
the status register to change.
From form@.
ok jsg
Diffstat (limited to 'sys/dev')
-rw-r--r-- | sys/dev/pci/if_nfe.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/pci/if_nfe.c b/sys/dev/pci/if_nfe.c index 3e0b7dee10c..6c37f349dea 100644 --- a/sys/dev/pci/if_nfe.c +++ b/sys/dev/pci/if_nfe.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_nfe.c,v 1.74 2007/12/05 08:30:33 jsg Exp $ */ +/* $OpenBSD: if_nfe.c,v 1.75 2007/12/11 23:08:09 mikeb Exp $ */ /*- * Copyright (c) 2006, 2007 Damien Bergamini <damien.bergamini@free.fr> @@ -478,7 +478,7 @@ nfe_intr(void *arg) struct ifnet *ifp = &sc->sc_arpcom.ac_if; uint32_t r; - if ((r = NFE_READ(sc, NFE_IRQ_STATUS)) == 0) + if ((r = NFE_READ(sc, NFE_IRQ_STATUS) & NFE_IRQ_WANTED) == 0) return 0; /* not for us */ NFE_WRITE(sc, NFE_IRQ_STATUS, r); |