aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Dyson <dyson@FreeBSD.org>1996-09-13 03:15:45 +0000
committerJohn Dyson <dyson@FreeBSD.org>1996-09-13 03:15:45 +0000
commit9fc1279b79f61af14ef901aa5f9f80536a57183a (patch)
treefc099f7d977d7ffa7d98aa2ce2f0ff81bdc8731e
parentebcb9161de638b6ae3a3f812000181cbb662e169 (diff)
downloadsrc-9fc1279b79f61af14ef901aa5f9f80536a57183a.tar.gz
src-9fc1279b79f61af14ef901aa5f9f80536a57183a.zip
A modification that allows the driver strategy to modify the
B_ASYNC flag broke things pretty bad (freeing buffer already on queue or other wierd buffer queue errors.) The broken code is left in commented out, but this makes the problem go away for now.
Notes
Notes: svn path=/head/; revision=18271
-rw-r--r--sys/kern/vfs_bio.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c
index 98f5b5e38e10..ed48a00515e8 100644
--- a/sys/kern/vfs_bio.c
+++ b/sys/kern/vfs_bio.c
@@ -18,7 +18,7 @@
* 5. Modifications may be freely made to this file if the above conditions
* are met.
*
- * $Id: vfs_bio.c,v 1.97 1996/09/06 05:37:53 gibbs Exp $
+ * $Id: vfs_bio.c,v 1.98 1996/09/08 20:44:20 dyson Exp $
*/
/*
@@ -313,7 +313,8 @@ bwrite(struct buf * bp)
curproc->p_stats->p_ru.ru_oublock++;
VOP_STRATEGY(bp);
- if ((bp->b_flags & B_ASYNC) == 0) {
+ /* if ((bp->b_flags & B_ASYNC) == 0) { */
+ if ((oldflags & B_ASYNC) == 0) {
int rtval = biowait(bp);
if (oldflags & B_DELWRI) {