diff options
author | Nate Lawson <njl@FreeBSD.org> | 2003-01-24 00:07:40 +0000 |
---|---|---|
committer | Nate Lawson <njl@FreeBSD.org> | 2003-01-24 00:07:40 +0000 |
commit | bbef019c84fbe51813674be7a28ddffd8ea000db (patch) | |
tree | 534dfbc09639ea51e27ee9aa882c7d831df6a905 /sbin/dumpfs | |
parent | 3ff1f264e99d01b87dc9816c4432e8ab48bfb1d0 (diff) | |
download | src-bbef019c84fbe51813674be7a28ddffd8ea000db.tar.gz src-bbef019c84fbe51813674be7a28ddffd8ea000db.zip |
Notes
Diffstat (limited to 'sbin/dumpfs')
-rw-r--r-- | sbin/dumpfs/dumpfs.c | 38 |
1 files changed, 24 insertions, 14 deletions
diff --git a/sbin/dumpfs/dumpfs.c b/sbin/dumpfs/dumpfs.c index 2194a684a11f..71b05e952e77 100644 --- a/sbin/dumpfs/dumpfs.c +++ b/sbin/dumpfs/dumpfs.c @@ -130,6 +130,7 @@ dumpfs(const char *name) { time_t fstime; int64_t fssize; + int32_t fsflags; int i; switch (disk.d_ufs) { @@ -211,21 +212,30 @@ dumpfs(const char *name) printf("cgrotor\t%d\tfmod\t%d\tronly\t%d\tclean\t%d\n", afs.fs_cgrotor, afs.fs_fmod, afs.fs_ronly, afs.fs_clean); printf("flags\t"); - if (afs.fs_flags == 0) + if (afs.fs_old_flags & FS_FLAGS_UPDATED) + fsflags = afs.fs_flags; + else + fsflags = afs.fs_old_flags; + if (fsflags == 0) printf("none"); - if (afs.fs_flags & FS_UNCLEAN) - printf("unclean "); - if (afs.fs_flags & FS_DOSOFTDEP) - printf("soft-updates "); - if (afs.fs_flags & FS_NEEDSFSCK) - printf("needs fsck run "); - if (afs.fs_flags & FS_INDEXDIRS) - printf("indexed directories "); - if ((afs.fs_flags & - ~(FS_UNCLEAN | FS_DOSOFTDEP | FS_NEEDSFSCK | FS_INDEXDIRS)) != 0) - printf("unknown flags (%#x)", afs.fs_flags & - ~(FS_UNCLEAN | FS_DOSOFTDEP | - FS_NEEDSFSCK | FS_INDEXDIRS)); + if (fsflags & FS_UNCLEAN) + printf("unclean "); + if (fsflags & FS_DOSOFTDEP) + printf("soft-updates "); + if (fsflags & FS_NEEDSFSCK) + printf("needs fsck run "); + if (fsflags & FS_INDEXDIRS) + printf("indexed directories "); + if (fsflags & FS_ACLS) + printf("acls "); + if (fsflags & FS_MULTILABEL) + printf("multilabel "); + if (fsflags & FS_FLAGS_UPDATED) + printf("fs_flags expanded "); + fsflags &= ~(FS_UNCLEAN | FS_DOSOFTDEP | FS_NEEDSFSCK | FS_INDEXDIRS | + FS_ACLS | FS_MULTILABEL | FS_FLAGS_UPDATED); + if (fsflags != 0) + printf("unknown flags (%#x)", fsflags); putchar('\n'); printf("\ncs[].cs_(nbfree,ndir,nifree,nffree):\n\t"); afs.fs_csp = calloc(1, afs.fs_cssize); |