Whamcloud - gitweb
Merge branch 'maint' into next
[tools/e2fsprogs.git] / misc / dumpe2fs.c
index e565f2d..a034703 100644 (file)
@@ -37,12 +37,12 @@ extern int optind;
 
 #include "ext2fs/ext2fs.h"
 #include "e2p/e2p.h"
-#include "jfs_user.h"
+#include "ext2fs/kernel-jbd.h"
 #include <uuid/uuid.h>
 
+#include "support/nls-enable.h"
+#include "support/plausible.h"
 #include "../version.h"
-#include "nls-enable.h"
-#include "plausible.h"
 
 #define in_use(m, x)   (ext2fs_test_bit ((x), (m)))
 
@@ -143,8 +143,7 @@ static void print_bg_rel_offset(ext2_filsys fs, blk64_t block, int itable,
                if (itable && block == first_block)
                        return;
                printf(" (+%u)", (unsigned)(block - first_block));
-       } else if (fs->super->s_feature_incompat &
-                  EXT4_FEATURE_INCOMPAT_FLEX_BG) {
+       } else if (ext2fs_has_feature_flex_bg(fs->super)) {
                dgrp_t flex_grp = ext2fs_group_of_blk2(fs, block);
                printf(" (bg #%u + %u)", flex_grp,
                       (unsigned)(block-ext2fs_group_first_block2(fs,flex_grp)));
@@ -165,8 +164,7 @@ static void list_desc(ext2_filsys fs, int grp_only)
        ext2_ino_t      ino_itr = 1;
        errcode_t       retval;
 
-       if (EXT2_HAS_RO_COMPAT_FEATURE(fs->super,
-                                      EXT4_FEATURE_RO_COMPAT_BIGALLOC))
+       if (ext2fs_has_feature_bigalloc(fs->super))
                units = _("clusters");
 
        block_nbytes = EXT2_CLUSTERS_PER_GROUP(fs->super) / 8;
@@ -184,7 +182,7 @@ static void list_desc(ext2_filsys fs, int grp_only)
        reserved_gdt = fs->super->s_reserved_gdt_blocks;
        fputc('\n', stdout);
        first_block = fs->super->s_first_data_block;
-       if (fs->super->s_feature_incompat & EXT2_FEATURE_INCOMPAT_META_BG)
+       if (ext2fs_has_feature_meta_bg(fs->super))
                old_desc_blocks = fs->super->s_first_meta_bg;
        else
                old_desc_blocks = fs->desc_blocks;
@@ -218,20 +216,18 @@ static void list_desc(ext2_filsys fs, int grp_only)
                        continue;
                }
 
-               printf (_("Group %lu: (Blocks "), i);
+               printf(_("Group %lu: (Blocks "), i);
                print_range(first_block, last_block);
                fputs(")", stdout);
-               print_bg_opts(fs, i);
                if (ext2fs_has_group_desc_csum(fs)) {
                        unsigned csum = ext2fs_bg_checksum(fs, i);
                        unsigned exp_csum = ext2fs_group_desc_csum(fs, i);
 
-                       printf(_("  Checksum 0x%04x"), csum);
+                       printf(_(" csum 0x%04x"), csum);
                        if (csum != exp_csum)
                                printf(_(" (EXPECTED 0x%04x)"), exp_csum);
-                       printf(_(", unused inodes %u\n"),
-                              ext2fs_bg_itable_unused(fs, i));
                }
+               print_bg_opts(fs, i);
                has_super = ((i==0) || super_blk);
                if (has_super) {
                        printf (_("  %s superblock at "),
@@ -260,16 +256,18 @@ static void list_desc(ext2_filsys fs, int grp_only)
                print_number(ext2fs_block_bitmap_loc(fs, i));
                print_bg_rel_offset(fs, ext2fs_block_bitmap_loc(fs, i), 0,
                                    first_block, last_block);
-               if (fs->super->s_feature_ro_compat &
-                   EXT4_FEATURE_RO_COMPAT_METADATA_CSUM)
+               if (ext2fs_has_feature_metadata_csum(fs->super))
                        printf(_(", csum 0x%08x"),
                               ext2fs_block_bitmap_checksum(fs, i));
-               fputs(_(", Inode bitmap at "), stdout);
+               if (getenv("DUMPE2FS_IGNORE_80COL"))
+                       fputs(_(","), stdout);
+               else
+                       fputs(_("\n "), stdout);
+               fputs(_(" Inode bitmap at "), stdout);
                print_number(ext2fs_inode_bitmap_loc(fs, i));
                print_bg_rel_offset(fs, ext2fs_inode_bitmap_loc(fs, i), 0,
                                    first_block, last_block);
-               if (fs->super->s_feature_ro_compat &
-                   EXT4_FEATURE_RO_COMPAT_METADATA_CSUM)
+               if (ext2fs_has_feature_metadata_csum(fs->super))
                        printf(_(", csum 0x%08x"),
                               ext2fs_inode_bitmap_checksum(fs, i));
                fputs(_("\n  Inode table at "), stdout);
@@ -420,8 +418,7 @@ static void print_inline_journal_information(ext2_filsys fs)
                printf(" (none)");
        printf("\n");
        fputs(_("Journal size:             "), stdout);
-       if ((fs->super->s_feature_ro_compat &
-            EXT4_FEATURE_RO_COMPAT_HUGE_FILE) &&
+       if (ext2fs_has_feature_huge_file(fs->super) &&
            (inode.i_flags & EXT4_HUGE_FILE_FL))
                size = inode.i_blocks / (fs->blocksize / 1024);
        else
@@ -656,7 +653,7 @@ int main (int argc, char ** argv)
                        usage();
                }
        }
-       if (argc - 1 > optind) {
+       if (optind != argc - 1) {
                usage();
                exit(1);
        }
@@ -697,7 +694,7 @@ try_open_again:
                exit (1);
        }
        fs->default_bitmap_type = EXT2FS_BMAP64_RBTREE;
-       if (fs->super->s_feature_incompat & EXT4_FEATURE_INCOMPAT_64BIT)
+       if (ext2fs_has_feature_64bit(fs->super))
                blocks64 = 1;
        if (print_badblocks) {
                list_bad_blocks(fs, 1);
@@ -705,14 +702,12 @@ try_open_again:
                if (grp_only)
                        goto just_descriptors;
                list_super (fs->super);
-               if (fs->super->s_feature_incompat &
-                     EXT3_FEATURE_INCOMPAT_JOURNAL_DEV) {
+               if (ext2fs_has_feature_journal_dev(fs->super)) {
                        print_journal_information(fs);
                        ext2fs_close_free(&fs);
                        exit(0);
                }
-               if ((fs->super->s_feature_compat &
-                    EXT3_FEATURE_COMPAT_HAS_JOURNAL) &&
+               if (ext2fs_has_feature_journal(fs->super) &&
                    (fs->super->s_journal_inum != 0))
                        print_inline_journal_information(fs);
                list_bad_blocks(fs, 0);