summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordlg <dlg@openbsd.org>2006-04-12 07:11:28 +0000
committerdlg <dlg@openbsd.org>2006-04-12 07:11:28 +0000
commitf93420e57abd5348d91ce95d3b9b8f6f103e55f5 (patch)
tree3f3c2a94a0805e68deb90c40246cbfbccf980b4b
parentTRENDnet TEW-229UB works. (diff)
downloadwireguard-openbsd-f93420e57abd5348d91ce95d3b9b8f6f103e55f5.tar.xz
wireguard-openbsd-f93420e57abd5348d91ce95d3b9b8f6f103e55f5.zip
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.c4
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;