summaryrefslogtreecommitdiffstats
path: root/sys/kern/vfs_subr.c
diff options
context:
space:
mode:
authorthib <thib@openbsd.org>2009-06-25 15:49:26 +0000
committerthib <thib@openbsd.org>2009-06-25 15:49:26 +0000
commitaddc814ef495255faeea76b454c24b9fdd22d5ca (patch)
treeba674ffb4082b3dcec5195c8a2e4bb632f454594 /sys/kern/vfs_subr.c
parentAnother copy another missing RTM_VERSION check. (diff)
downloadwireguard-openbsd-addc814ef495255faeea76b454c24b9fdd22d5ca.tar.xz
wireguard-openbsd-addc814ef495255faeea76b454c24b9fdd22d5ca.zip
backout the buf_acquire() does the bremfree() since all callers
where doing bremfree() befure calling buf_acquire(). This is causing us headache pinning down a bug that showed up when deraadt@ too cvs to current, and will have to be done anyway as a preperation for backouts. OK deraadt@
Diffstat (limited to 'sys/kern/vfs_subr.c')
-rw-r--r--sys/kern/vfs_subr.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c
index 4d09d4f20a0..4b19f59ef2a 100644
--- a/sys/kern/vfs_subr.c
+++ b/sys/kern/vfs_subr.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: vfs_subr.c,v 1.178 2009/06/15 17:01:26 beck Exp $ */
+/* $OpenBSD: vfs_subr.c,v 1.179 2009/06/25 15:49:26 thib Exp $ */
/* $NetBSD: vfs_subr.c,v 1.53 1996/04/22 01:39:13 christos Exp $ */
/*
@@ -1687,6 +1687,7 @@ vfs_syncwait(int verbose)
*/
if (bp->b_flags & B_DELWRI) {
s = splbio();
+ bremfree(bp);
buf_acquire(bp);
splx(s);
nbusy++;
@@ -1857,6 +1858,7 @@ loop:
}
break;
}
+ bremfree(bp);
buf_acquire(bp);
/*
* XXX Since there are no node locks for NFS, I believe
@@ -1894,6 +1896,7 @@ loop:
continue;
if ((bp->b_flags & B_DELWRI) == 0)
panic("vflushbuf: not dirty");
+ bremfree(bp);
buf_acquire(bp);
splx(s);
/*