summaryrefslogtreecommitdiff
path: root/sys/kern/vfs_bio.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/kern/vfs_bio.c')
-rw-r--r--sys/kern/vfs_bio.c72
1 files changed, 4 insertions, 68 deletions
diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c
index 27d8a10fd33..e724172f51e 100644
--- a/sys/kern/vfs_bio.c
+++ b/sys/kern/vfs_bio.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: vfs_bio.c,v 1.46 2001/10/28 00:42:43 art Exp $ */
+/* $OpenBSD: vfs_bio.c,v 1.47 2001/10/28 19:19:00 deraadt Exp $ */
/* $NetBSD: vfs_bio.c,v 1.44 1996/06/11 11:15:36 pk Exp $ */
/*-
@@ -524,8 +524,6 @@ brelse(bp)
/* Block disk interrupts. */
s = splbio();
- KASSERT(ISSET(bp->b_flags, B_BUSY));
-
/*
* Determine which queue the buffer should be on, then put it there.
*/
@@ -759,7 +757,6 @@ allocbuf(bp, size)
if (bp->b_bufsize == desired_size)
goto out;
- KASSERT(!ISSET(bp->b_flags, (B_CACHE|B_DONE|B_DELWRI)));
/*
* If the buffer is smaller than the desired size, we need to snarf
* it from other buffers. Get buffers (via getnewbuf()), and
@@ -800,7 +797,7 @@ allocbuf(bp, size)
*/
if (bp->b_bufsize > desired_size) {
s = splbio();
- if ((nbp = TAILQ_FIRST(&bufqueues[BQ_EMPTY])) == NULL) {
+ if ((nbp = bufqueues[BQ_EMPTY].tqh_first) == NULL) {
/* No free buffer head */
splx(s);
goto out;
@@ -876,8 +873,6 @@ start:
bremfree(bp);
- KASSERT(!ISSET(bp->b_flags, B_BUSY));
-
/* Buffer is no longer on free lists. */
SET(bp->b_flags, B_BUSY);
@@ -1046,11 +1041,9 @@ biodone(bp)
CLR(bp->b_flags, B_CALL); /* but note callout done */
(*bp->b_iodone)(bp);
} else {
- if (ISSET(bp->b_flags, B_ASYNC)) {
- /* if async, release it */
+ if (ISSET(bp->b_flags, B_ASYNC)) {/* if async, release it */
brelse(bp);
- } else {
- /* or just wakeup the buffer */
+ } else { /* or just wakeup the buffer */
CLR(bp->b_flags, B_WANTED);
wakeup(bp);
}
@@ -1059,63 +1052,6 @@ biodone(bp)
#ifdef DEBUG
/*
- * Print as much as possible about a buffer.
- */
-void
-buf_print(struct buf *bp)
-{
- int f = 1;
-
-#define FLAG(fl) if (bp->b_flags & (fl)) { if (!f) printf(", "); else f = 0; printf(#fl); }
-
- printf("b_proc: %p\n", bp->b_proc);
- printf("b_error: %d\n", bp->b_error);
- printf("b_bufsize: %ld\n", bp->b_bufsize);
- printf("b_bcount: %ld\n", bp->b_bcount);
- printf("b_resid: %ld\n", (long)bp->b_resid);
- printf("b_dev: (%d,%d)\n", minor(bp->b_dev), major(bp->b_dev));
- printf("b_data: %p\n", bp->b_data);
- printf("b_blkno: %ld\n", (long)bp->b_blkno);
- printf("b_lblkno: %ld\n", (long)bp->b_lblkno);
-
- printf("b_flags: ");
-
- FLAG(B_AGE);
- FLAG(B_NEEDCOMMIT);
- FLAG(B_ASYNC);
- FLAG(B_BAD);
- FLAG(B_BUSY);
- FLAG(B_CACHE);
- FLAG(B_CALL);
- FLAG(B_DELWRI);
- FLAG(B_DIRTY);
- FLAG(B_DONE);
- FLAG(B_EINTR);
- FLAG(B_ERROR);
- FLAG(B_GATHERED);
- FLAG(B_INVAL);
- FLAG(B_LOCKED);
- FLAG(B_NOCACHE);
- FLAG(B_PAGET);
- FLAG(B_PGIN);
- FLAG(B_PHYS);
- FLAG(B_RAW);
- FLAG(B_READ);
- FLAG(B_TAPE);
- FLAG(B_UAREA);
- FLAG(B_WANTED);
- FLAG(B_WRITE);
- FLAG(B_WRITEINPROG);
- FLAG(B_XXX);
- FLAG(B_DEFERRED);
- FLAG(B_SCANNED);
-
- printf("\n");
-
-#undef FLAG
-}
-
-/*
* Print out statistics on the current allocation of the buffer pool.
* Can be enabled to print out on every ``sync'' by setting "syncprt"
* in vfs_syscalls.c using sysctl.