aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/vfs_cluster.c
diff options
context:
space:
mode:
authorDoug Rabson <dfr@FreeBSD.org>1998-08-13 08:09:08 +0000
committerDoug Rabson <dfr@FreeBSD.org>1998-08-13 08:09:08 +0000
commit7032ad107e8cae7b746bb56a0d7107eff9145eb2 (patch)
treeb2b33a8716d217051d6ba2c4f10b26185b7cd6d5 /sys/kern/vfs_cluster.c
parent196e9a52ec8a1fd9ac1be25f9952457f3b9a02db (diff)
downloadsrc-7032ad107e8cae7b746bb56a0d7107eff9145eb2.tar.gz
src-7032ad107e8cae7b746bb56a0d7107eff9145eb2.zip
Protect all modifications to v_numoutput with splbio().
Notes
Notes: svn path=/head/; revision=38299
Diffstat (limited to 'sys/kern/vfs_cluster.c')
-rw-r--r--sys/kern/vfs_cluster.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/kern/vfs_cluster.c b/sys/kern/vfs_cluster.c
index 94da3f7e054e..3f969adae147 100644
--- a/sys/kern/vfs_cluster.c
+++ b/sys/kern/vfs_cluster.c
@@ -33,7 +33,7 @@
* SUCH DAMAGE.
*
* @(#)vfs_cluster.c 8.7 (Berkeley) 2/13/94
- * $Id: vfs_cluster.c,v 1.66 1998/07/29 17:38:14 bde Exp $
+ * $Id: vfs_cluster.c,v 1.67 1998/08/06 08:33:18 dfr Exp $
*/
#include "opt_debug_cluster.h"
@@ -798,11 +798,13 @@ cluster_wbuild(vp, size, start_lbn, len)
bp->b_bcount += size;
bp->b_bufsize += size;
+ s = splbio();
--numdirtybuffers;
tbp->b_flags &= ~(B_READ | B_DONE | B_ERROR | B_DELWRI);
tbp->b_flags |= B_ASYNC;
reassignbuf(tbp, tbp->b_vp); /* put on clean list */
++tbp->b_vp->v_numoutput;
+ splx(s);
TAILQ_INSERT_TAIL(&bp->b_cluster.cluster_head,
tbp, b_cluster.cluster_entry);
}