summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sutils/fsck.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sutils/fsck.c b/sutils/fsck.c
index fea3ccbd..bf73cff3 100644
--- a/sutils/fsck.c
+++ b/sutils/fsck.c
@@ -380,6 +380,8 @@ fsck (struct fstab *fstab, int flags, int max_parallel)
time. */
{
debug ("Pass %d", pass);
+
+ /* Try and fsck every filesystem in this pass. */
for (fs = fstab->entries; fs; fs = fs->next)
if (fs->mntent.mnt_passno == pass)
/* FS is applicable for this pass. */
@@ -405,6 +407,10 @@ fsck (struct fstab *fstab, int flags, int max_parallel)
else
fs_debug (fs, "Not fsckable");
}
+
+ /* Now wait for them all to finish. */
+ while (fscks->running)
+ merge_status (fscks_wait (fscks));
}
free (fscks);