summaryrefslogtreecommitdiff
path: root/sys/uvm
diff options
context:
space:
mode:
authorConstantine Sapuntzakis <csapuntz@cvs.openbsd.org>2001-11-30 05:45:34 +0000
committerConstantine Sapuntzakis <csapuntz@cvs.openbsd.org>2001-11-30 05:45:34 +0000
commit19af97d4ea8b7333876192a8643e598e1f191781 (patch)
treeefdd30fb782ddda391d9a4f3c55e51ebe0ca54fb /sys/uvm
parentd41b705df378eb48538e74ca17789e48e436a321 (diff)
Call buf_cleanout, which handles wakeups
Diffstat (limited to 'sys/uvm')
-rw-r--r--sys/uvm/uvm_pager.c4
-rw-r--r--sys/uvm/uvm_swap.c11
2 files changed, 6 insertions, 9 deletions
diff --git a/sys/uvm/uvm_pager.c b/sys/uvm/uvm_pager.c
index fa627e06518..5d7c5e4dab2 100644
--- a/sys/uvm/uvm_pager.c
+++ b/sys/uvm/uvm_pager.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: uvm_pager.c,v 1.26 2001/11/29 01:59:19 art Exp $ */
+/* $OpenBSD: uvm_pager.c,v 1.27 2001/11/30 05:45:33 csapuntz Exp $ */
/* $NetBSD: uvm_pager.c,v 1.48 2001/06/23 20:47:44 chs Exp $ */
/*
@@ -877,8 +877,8 @@ freed:
if (write && (bp->b_flags & B_AGE) != 0) {
vwakeup(bp->b_vp);
}
- brelvp(bp);
}
+ (void) buf_cleanout(bp);
pool_put(&bufpool, bp);
splx(s);
}
diff --git a/sys/uvm/uvm_swap.c b/sys/uvm/uvm_swap.c
index 95ecb9e7828..2fb9de02cde 100644
--- a/sys/uvm/uvm_swap.c
+++ b/sys/uvm/uvm_swap.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: uvm_swap.c,v 1.44 2001/11/28 19:28:15 art Exp $ */
+/* $OpenBSD: uvm_swap.c,v 1.45 2001/11/30 05:45:33 csapuntz Exp $ */
/* $NetBSD: uvm_swap.c,v 1.52 2001/05/26 16:32:47 chs Exp $ */
/*
@@ -1503,9 +1503,7 @@ sw_reg_iodone(bp)
/*
* disassociate this buffer from the vnode (if any).
*/
- if (vbp->vb_buf.b_vp != NULL) {
- brelvp(&vbp->vb_buf);
- }
+ (void) buf_cleanout(&vbp->vb_buf);
/*
* kill vbp structure
@@ -2030,11 +2028,10 @@ uvm_swap_io(pps, startslot, npages, flags)
* now dispose of the buf
*/
s = splbio();
- if (bp->b_vp)
- brelvp(bp);
-
if (write && bp->b_vp)
vwakeup(bp->b_vp);
+
+ (void) buf_cleanout(bp);
pool_put(&bufpool, bp);
splx(s);