diff options
author | gibbs <gibbs@FreeBSD.org> | 1999-03-05 23:39:02 +0000 |
---|---|---|
committer | gibbs <gibbs@FreeBSD.org> | 1999-03-05 23:39:02 +0000 |
commit | a8964e24ebd03ab08f920b3909ed954271a750be (patch) | |
tree | 2af60e5521370c0edb6901480967655bbe507530 /sys | |
parent | c7f60ce1412423b912c54cac7b6077b6bf057f99 (diff) | |
download | FreeBSD-src-a8964e24ebd03ab08f920b3909ed954271a750be.zip FreeBSD-src-a8964e24ebd03ab08f920b3909ed954271a750be.tar.gz |
Block cam hardware interrupts at splvm(). Controller drivers may
perform malloc(NO_WAIT) and free operations that could touch the
page queues.
Noticed by: Tor Egge <tegge@FreeBSd.org>
Diffstat (limited to 'sys')
-rw-r--r-- | sys/i386/isa/ipl_funcs.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/i386/isa/ipl_funcs.c b/sys/i386/isa/ipl_funcs.c index 38b1945..aeba4ac 100644 --- a/sys/i386/isa/ipl_funcs.c +++ b/sys/i386/isa/ipl_funcs.c @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: ipl_funcs.c,v 1.13 1998/02/01 22:04:58 bde Exp $ + * $Id: ipl_funcs.c,v 1.14 1998/12/07 21:58:22 archie Exp $ */ #include <sys/types.h> @@ -87,7 +87,7 @@ GENSPL(splsofttty, cpl |= SWI_TTY_MASK) GENSPL(splsoftvm, cpl |= SWI_VM_MASK) GENSPL(splstatclock, cpl |= stat_imask) GENSPL(spltty, cpl |= tty_imask) -GENSPL(splvm, cpl |= net_imask | bio_imask) +GENSPL(splvm, cpl |= net_imask | bio_imask | cam_imask) void spl0(void) @@ -248,7 +248,7 @@ GENSPL(splsofttty, |=, SWI_TTY_MASK, 12) GENSPL(splsoftvm, |=, SWI_VM_MASK, 16) GENSPL(splstatclock, |=, stat_imask, 13) GENSPL(spltty, |=, tty_imask, 14) -GENSPL(splvm, |=, net_imask | bio_imask, 15) +GENSPL(splvm, |=, net_imask | bio_imask | cam_imask, 15) #else /* INTR_SPL */ @@ -285,7 +285,7 @@ GENSPL(splsofttty, cpl |= SWI_TTY_MASK) GENSPL(splsoftvm, cpl |= SWI_VM_MASK) GENSPL(splstatclock, cpl |= stat_imask) GENSPL(spltty, cpl |= tty_imask) -GENSPL(splvm, cpl |= net_imask | bio_imask) +GENSPL(splvm, cpl |= net_imask | bio_imask | cam_imask) #endif /* INTR_SPL */ |