Whamcloud - gitweb
libext2fs: Initialize s_min_extra_isize and s_wanted_extra_isize
authorTheodore Ts'o <tytso@mit.edu>
Sun, 20 Apr 2008 20:02:13 +0000 (16:02 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Sun, 20 Apr 2008 20:02:13 +0000 (16:02 -0400)
Set the s_min_extra_isize and s_wanted_extra_isize superblock fields
to reasonable defaults in ext2fs_initialize().

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
lib/ext2fs/initialize.c

index c2e00e8..2125912 100644 (file)
@@ -172,6 +172,12 @@ errcode_t ext2fs_initialize(const char *name, int flags,
        if (super->s_rev_level >= EXT2_DYNAMIC_REV) {
                set_field(s_first_ino, EXT2_GOOD_OLD_FIRST_INO);
                set_field(s_inode_size, EXT2_GOOD_OLD_INODE_SIZE);
+               if (super->s_inode_size >= sizeof(struct ext2_inode_large)) {
+                       int extra_isize = sizeof(struct ext2_inode_large) -
+                               EXT2_GOOD_OLD_INODE_SIZE;
+                       set_field(s_min_extra_isize, extra_isize);
+                       set_field(s_want_extra_isize, extra_isize);
+               }
        }
 
        set_field(s_checkinterval, EXT2_DFL_CHECKINTERVAL);