diff options
author | Aaron Campbell <aaron@cvs.openbsd.org> | 2000-06-30 22:33:08 +0000 |
---|---|---|
committer | Aaron Campbell <aaron@cvs.openbsd.org> | 2000-06-30 22:33:08 +0000 |
commit | 2dfad5a51ae955f52f750aa5c5de1cf3b6701b69 (patch) | |
tree | b65bc0fab060001a57432e41621a35166faf1bd9 | |
parent | d8555709fb109a1e472d5f62b8693801aa37dc4e (diff) |
Oops, put back this call to spltty(). When our timeout expires and we poll the
pcic, we don't want to be interrupted by real interrupts generated by the pcic.
-rw-r--r-- | sys/dev/ic/i82365.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/sys/dev/ic/i82365.c b/sys/dev/ic/i82365.c index 3e5cb36f5c5..b62f4be23c1 100644 --- a/sys/dev/ic/i82365.c +++ b/sys/dev/ic/i82365.c @@ -1,4 +1,4 @@ -/* $OpenBSD: i82365.c,v 1.15 2000/06/28 17:48:10 aaron Exp $ */ +/* $OpenBSD: i82365.c,v 1.16 2000/06/30 22:33:07 aaron Exp $ */ /* $NetBSD: i82365.c,v 1.10 1998/06/09 07:36:55 thorpej Exp $ */ /* @@ -672,13 +672,21 @@ pcic_poll_intr(arg) void *arg; { struct pcic_softc *sc = arg; - int i; + int i, s; + + /* + * Since we're polling, we aren't in interrupt context, so block any + * actual interrupts coming from the pcic. + */ + s = spltty(); for (i = 0; i < PCIC_NSLOTS; i++) if (sc->handle[i].flags & PCIC_FLAG_SOCKETP) pcic_intr_socket(&sc->handle[i]); timeout_add(&sc->poll_timeout, hz / 2); + + splx(s); } int |