ext4: set EXT4_EXTENTS_FL only for directory and regular files
In addition, don't inherit EXT4_EXTENTS_FL from parent directory. If we have a directory with extent flag set and later mount the file system with -o noextents, the files created in that directory will also have extent flag set but we would not have called ext4_ext_tree_init for them. This will cause error later when we are verifying the extent header Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Acked-off-by: Eric Sandeen <sandeen@redhat.com> Signed-off-by: Mingming Cao <cmm@us.ibm.com> Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
This commit is contained in:

committed by
Theodore Ts'o

parent
2c98615d3b
commit
42bf0383d1
@@ -2220,7 +2220,6 @@ retry:
|
||||
inode->i_op = &ext4_fast_symlink_inode_operations;
|
||||
memcpy((char*)&EXT4_I(inode)->i_data,symname,l);
|
||||
inode->i_size = l-1;
|
||||
EXT4_I(inode)->i_flags &= ~EXT4_EXTENTS_FL;
|
||||
}
|
||||
EXT4_I(inode)->i_disksize = inode->i_size;
|
||||
err = ext4_add_nondir(handle, dentry, inode);
|
||||
|
Reference in New Issue
Block a user