diff options
author | Thorsten Lockert <tholo@cvs.openbsd.org> | 1996-07-21 08:05:40 +0000 |
---|---|---|
committer | Thorsten Lockert <tholo@cvs.openbsd.org> | 1996-07-21 08:05:40 +0000 |
commit | 2caa172cc05c0bcfc55223ffd67c1621572cc268 (patch) | |
tree | c0aa1bafa09c5f66f17137c69463d61f67cbbf32 /sys/ufs/lfs | |
parent | d1ca06e9f2af777503835fcef79a3827eef02cd2 (diff) |
Ensure we never use more than one callout table slot
Diffstat (limited to 'sys/ufs/lfs')
-rw-r--r-- | sys/ufs/lfs/lfs_bio.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/ufs/lfs/lfs_bio.c b/sys/ufs/lfs/lfs_bio.c index 9d8aec4ae3d..5ce206bec8d 100644 --- a/sys/ufs/lfs/lfs_bio.c +++ b/sys/ufs/lfs/lfs_bio.c @@ -1,4 +1,4 @@ -/* $OpenBSD: lfs_bio.c,v 1.4 1996/07/01 07:41:49 downsj Exp $ */ +/* $OpenBSD: lfs_bio.c,v 1.5 1996/07/21 08:05:39 tholo Exp $ */ /* $NetBSD: lfs_bio.c,v 1.5 1996/02/09 22:28:49 christos Exp $ */ /* @@ -122,9 +122,12 @@ lfs_bwrite(v) bp->b_flags |= B_DELWRI | B_LOCKED; TAILQ_INSERT_TAIL(&bdirties, bp, b_synclist); bp->b_synctime = time.tv_sec + 30; - if (bdirties.tqh_first == bp) + if (bdirties.tqh_first == bp) { + untimeout((void (*)__P((void *)))wakeup, + &bdirties); timeout((void (*)__P((void *)))wakeup, &bdirties, 30 * hz); + } bp->b_flags &= ~(B_READ | B_ERROR); s = splbio(); reassignbuf(bp, bp->b_vp); |