diff options
-rw-r--r-- | sutils/fsck.c | 6 |
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); |