summaryrefslogtreecommitdiff
path: root/sys/kern/vfs_bio.c
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2010-06-29 18:52:21 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2010-06-29 18:52:21 +0000
commitd39a9ee347bd5a3e56a3272fbf50afe828620da6 (patch)
tree7b9e57dde86b7685fc2cb1cfc4dafb0b434991bf /sys/kern/vfs_bio.c
parent6393ccd109d17c92e6427fba5730a05c7e4ac29c (diff)
Introduce bufq_quiesce(), which will block I/O ifrom getting on the queues,
and waits until all I/O currently on the queues has been completed. To get I/O going again, call bufq_restart(). To be used for suspend/resume. Joint effort with thib@, tedu@; tested by mlarkin@, marco@
Diffstat (limited to 'sys/kern/vfs_bio.c')
-rw-r--r--sys/kern/vfs_bio.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c
index 93c404bb457..b242d58978c 100644
--- a/sys/kern/vfs_bio.c
+++ b/sys/kern/vfs_bio.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: vfs_bio.c,v 1.121 2010/02/05 12:24:32 jsing Exp $ */
+/* $OpenBSD: vfs_bio.c,v 1.122 2010/06/29 18:52:20 kettenis Exp $ */
/* $NetBSD: vfs_bio.c,v 1.44 1996/06/11 11:15:36 pk Exp $ */
/*
@@ -1228,6 +1228,9 @@ biodone(struct buf *bp)
wakeup(bp);
}
}
+
+ if (bp->b_bq)
+ bufq_done(bp->b_bq, bp);
}
#ifdef DDB