diff options
author | David Gwynne <dlg@cvs.openbsd.org> | 2006-04-12 07:11:29 +0000 |
---|---|---|
committer | David Gwynne <dlg@cvs.openbsd.org> | 2006-04-12 07:11:29 +0000 |
commit | 1cc870c55854e72d171b89cfe6a5c9f03adbace5 (patch) | |
tree | 9a80994a9e504d1300ab3f76f857dc652a1f308f | |
parent | 7062a18b613baa3aed148da22f14a41df19ce969 (diff) |
when the interrupt handler has run out of work to do it shouldnt return 0
from the work loop. instead it should break from it so the spl can be
lowered and any work that has been done can be counted. this fixes
interrupt counting at least, and possibly issues related to leaving splnet
raised..
ok deraadt@
-rw-r--r-- | sys/dev/pci/if_em.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/pci/if_em.c b/sys/dev/pci/if_em.c index 6b2896a77b5..16ec60b71fe 100644 --- a/sys/dev/pci/if_em.c +++ b/sys/dev/pci/if_em.c @@ -31,7 +31,7 @@ POSSIBILITY OF SUCH DAMAGE. ***************************************************************************/ -/* $OpenBSD: if_em.c,v 1.112 2006/03/28 05:33:03 brad Exp $ */ +/* $OpenBSD: if_em.c,v 1.113 2006/04/12 07:11:28 dlg Exp $ */ /* $FreeBSD: if_em.c,v 1.46 2004/09/29 18:28:28 mlaier Exp $ */ #include <dev/pci/if_em.h> @@ -724,7 +724,7 @@ em_intr(void *arg) if (sc->hw.mac_type >= em_82571) test_icr = (reg_icr & E1000_ICR_INT_ASSERTED); if (!test_icr) - return (0); + break; claimed = 1; |