summaryrefslogtreecommitdiff
path: root/sys/uvm/uvm_pdaemon.c
diff options
context:
space:
mode:
authorArtur Grabowski <art@cvs.openbsd.org>2002-05-24 13:10:54 +0000
committerArtur Grabowski <art@cvs.openbsd.org>2002-05-24 13:10:54 +0000
commit2d9bd9442f5fc77c2564c93b7dbe84ed4bc4c17c (patch)
tree761d51062770a57217f50d73f6a06db0c1628fca /sys/uvm/uvm_pdaemon.c
parentf49f20f7f07ad6f9bf167c0982e5a5a56b012ea2 (diff)
Make sure that b_iodone handlers are called at splbio (and splassert(IPL_BIO) in all known callers, just to make sure).
Diffstat (limited to 'sys/uvm/uvm_pdaemon.c')
-rw-r--r--sys/uvm/uvm_pdaemon.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/uvm/uvm_pdaemon.c b/sys/uvm/uvm_pdaemon.c
index dfa77ec9949..e011f925412 100644
--- a/sys/uvm/uvm_pdaemon.c
+++ b/sys/uvm/uvm_pdaemon.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: uvm_pdaemon.c,v 1.24 2002/03/14 01:27:18 millert Exp $ */
+/* $OpenBSD: uvm_pdaemon.c,v 1.25 2002/05/24 13:10:53 art Exp $ */
/* $NetBSD: uvm_pdaemon.c,v 1.23 2000/08/20 10:24:14 bjh21 Exp $ */
/*
@@ -334,7 +334,9 @@ uvm_aiodone_daemon(void *arg)
uvmexp.paging -= bp->b_bufsize >> PAGE_SHIFT;
}
nbp = TAILQ_NEXT(bp, b_freelist);
+ s = splbio(); /* b_iodone must by called at splbio */
(*bp->b_iodone)(bp);
+ splx(s);
bp = nbp;
}
if (free <= uvmexp.reserve_kernel) {