diff options
author | Martin Reindl <martin@cvs.openbsd.org> | 2006-01-29 10:47:36 +0000 |
---|---|---|
committer | Martin Reindl <martin@cvs.openbsd.org> | 2006-01-29 10:47:36 +0000 |
commit | cf92e6837fc34745cc7b36d6da641a4a7dcc9d4e (patch) | |
tree | 737efdccd68c559927f2d763383bd5c0fa53265a /sys/arch/alpha/pci/pci_1000.c | |
parent | 3d76b07b9d92efa127be76a0c31dde39d891a633 (diff) |
Add a alpha_shared_intr_reset_strays() function that resets the stray
interrupt counter for a given shared interrupt descriptor.
When an interrupt is successfully handled, reset the strays counter,
thus preventing a "slow leak" from eventually shutting off the interrupt
vector.
from NetBSD via KUDO Takashi
Diffstat (limited to 'sys/arch/alpha/pci/pci_1000.c')
-rw-r--r-- | sys/arch/alpha/pci/pci_1000.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/arch/alpha/pci/pci_1000.c b/sys/arch/alpha/pci/pci_1000.c index 430aae9421c..86521b635da 100644 --- a/sys/arch/alpha/pci/pci_1000.c +++ b/sys/arch/alpha/pci/pci_1000.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pci_1000.c,v 1.2 2004/06/28 02:28:42 aaron Exp $ */ +/* $OpenBSD: pci_1000.c,v 1.3 2006/01/29 10:47:35 martin Exp $ */ /* $NetBSD: pci_1000.c,v 1.12 2001/07/27 00:25:20 thorpej Exp $ */ /* @@ -271,7 +271,8 @@ dec_1000_iointr(framep, vec) "dec_1000 irq"); if (ALPHA_SHARED_INTR_DISABLE(dec_1000_pci_intr, irq)) dec_1000_disable_intr(irq); - } + } else + alpha_shared_intr_reset_strays(dec_1000_pci_intr, irq); return; } #if NSIO > 0 || NPCEB > 0 |