diff options
author | Theodore Ts'o <tytso@mit.edu> | 1997-04-26 14:48:50 +0000 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 1997-04-26 14:48:50 +0000 |
commit | 7f88b04341d88c5df0360d930832c38040303b61 (patch) | |
tree | 21ca0d2bd71091fa77579937e38c1c3471ebfdcb /misc/fsck.c | |
parent | 126cf2f79e91807602159b5a7bb1d6c87ab6937d (diff) | |
download | e2fsprogs-7f88b04341d88c5df0360d930832c38040303b61.tar.gz |
Many files:
Checkin of e2fsprogs 1.03.
Diffstat (limited to 'misc/fsck.c')
-rw-r--r-- | misc/fsck.c | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/misc/fsck.c b/misc/fsck.c index 1d92c54c..5228b917 100644 --- a/misc/fsck.c +++ b/misc/fsck.c @@ -123,6 +123,7 @@ int serialize = 0; int skip_root = 0; int like_mount = 0; int notitle = 0; +int parallel_root = 0; char *progname; char *fstype = NULL; struct fs_info *filesys_info; @@ -555,16 +556,18 @@ static int check_all(NOARGS) /* * Find and check the root filesystem first. */ - for (fs = filesys_info; fs; fs = fs->next) { - if (!strcmp(fs->mountpt, "/")) - break; - } - if (fs && !skip_root && !ignore(fs)) { - fsck_device(fs->device); - fs->flags |= FLAG_DONE; - status |= wait_all(); - if (status > EXIT_NONDESTRUCT) - return status; + if (!parallel_root) { + for (fs = filesys_info; fs; fs = fs->next) { + if (!strcmp(fs->mountpt, "/")) + break; + } + if (fs && !skip_root && !ignore(fs)) { + fsck_device(fs->device); + fs->flags |= FLAG_DONE; + status |= wait_all(); + if (status > EXIT_NONDESTRUCT) + return status; + } } if (fs) fs->flags |= FLAG_DONE; @@ -699,6 +702,9 @@ static void PRS(int argc, char *argv[]) case 'M': like_mount++; break; + case 'P': + parallel_root++; + break; case 's': serialize++; break; |