diff options
| author | Kirk McKusick <mckusick@FreeBSD.org> | 1999-05-09 19:39:54 +0000 |
|---|---|---|
| committer | Kirk McKusick <mckusick@FreeBSD.org> | 1999-05-09 19:39:54 +0000 |
| commit | 71a0942aca854d809265962f8b3606c72672a4ec (patch) | |
| tree | d679e8a64958cd1db05f6798119fb739aa5e6010 /sys | |
| parent | 904b306815ee233d8802ae1d8301a80171fa1924 (diff) | |
Notes
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/contrib/softupdates/ffs_softdep.c | 8 | ||||
| -rw-r--r-- | sys/ufs/ffs/ffs_softdep.c | 8 |
2 files changed, 10 insertions, 6 deletions
diff --git a/sys/contrib/softupdates/ffs_softdep.c b/sys/contrib/softupdates/ffs_softdep.c index ada9c8c49e60..ff36319e0c43 100644 --- a/sys/contrib/softupdates/ffs_softdep.c +++ b/sys/contrib/softupdates/ffs_softdep.c @@ -53,7 +53,7 @@ * SUCH DAMAGE. * * from: @(#)ffs_softdep.c 9.36 (McKusick) 5/6/99 - * $Id: ffs_softdep.c,v 1.25 1999/05/07 02:26:47 mckusick Exp $ + * $Id: ffs_softdep.c,v 1.26 1999/05/07 05:11:31 mckusick Exp $ */ /* @@ -492,10 +492,11 @@ add_to_worklist(wk) if (wk->wk_state & ONWORKLIST) panic("add_to_worklist: already on list"); wk->wk_state |= ONWORKLIST; - if (LIST_FIRST(&softdep_workitem_pending) == NULL) + if (LIST_FIRST(&softdep_workitem_pending) == NULL) { LIST_INSERT_HEAD(&softdep_workitem_pending, wk, wk_list); - else + } else { LIST_INSERT_AFTER(worklist_tail, wk, wk_list); + } worklist_tail = wk; } @@ -3699,6 +3700,7 @@ softdep_sync_metadata(ap) waitfor = MNT_NOWAIT; top: if (getdirtybuf(&TAILQ_FIRST(&vp->v_dirtyblkhd), MNT_WAIT) == 0) { + drain_output(vp, 1); FREE_LOCK(&lk); return (0); } diff --git a/sys/ufs/ffs/ffs_softdep.c b/sys/ufs/ffs/ffs_softdep.c index ada9c8c49e60..ff36319e0c43 100644 --- a/sys/ufs/ffs/ffs_softdep.c +++ b/sys/ufs/ffs/ffs_softdep.c @@ -53,7 +53,7 @@ * SUCH DAMAGE. * * from: @(#)ffs_softdep.c 9.36 (McKusick) 5/6/99 - * $Id: ffs_softdep.c,v 1.25 1999/05/07 02:26:47 mckusick Exp $ + * $Id: ffs_softdep.c,v 1.26 1999/05/07 05:11:31 mckusick Exp $ */ /* @@ -492,10 +492,11 @@ add_to_worklist(wk) if (wk->wk_state & ONWORKLIST) panic("add_to_worklist: already on list"); wk->wk_state |= ONWORKLIST; - if (LIST_FIRST(&softdep_workitem_pending) == NULL) + if (LIST_FIRST(&softdep_workitem_pending) == NULL) { LIST_INSERT_HEAD(&softdep_workitem_pending, wk, wk_list); - else + } else { LIST_INSERT_AFTER(worklist_tail, wk, wk_list); + } worklist_tail = wk; } @@ -3699,6 +3700,7 @@ softdep_sync_metadata(ap) waitfor = MNT_NOWAIT; top: if (getdirtybuf(&TAILQ_FIRST(&vp->v_dirtyblkhd), MNT_WAIT) == 0) { + drain_output(vp, 1); FREE_LOCK(&lk); return (0); } |
