- Remove the call to softdep_waitidle after suspending the filesystem.
This does not do what I wanted as all dirty buffers must be flushed by the call to ffs_sync and any remaining dependency work would mean that this failed. Pointed out by: tegge
This commit is contained in:
parent
52c1783c83
commit
028be49a25
@ -720,6 +720,7 @@ softdep_flush(void)
|
||||
struct mount *mp;
|
||||
struct thread *td;
|
||||
int remaining;
|
||||
int vfslocked;
|
||||
|
||||
td = curthread;
|
||||
td->td_pflags |= TDP_NORUNNINGBUF;
|
||||
@ -749,8 +750,10 @@ softdep_flush(void)
|
||||
continue;
|
||||
if (vfs_busy(mp, LK_NOWAIT, &mountlist_mtx, td))
|
||||
continue;
|
||||
vfslocked = VFS_LOCK_GIANT(mp);
|
||||
softdep_process_worklist(mp, 0);
|
||||
remaining += VFSTOUFS(mp)->softdep_on_worklist;
|
||||
VFS_UNLOCK_GIANT(vfslocked);
|
||||
mtx_lock(&mountlist_mtx);
|
||||
nmp = TAILQ_NEXT(mp, mnt_list);
|
||||
vfs_unbusy(mp, td);
|
||||
|
Loading…
Reference in New Issue
Block a user