diff options
Diffstat (limited to 'fs/ext4/ialloc.c')
-rw-r--r-- | fs/ext4/ialloc.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c index 1ff3df086e58..ae3eb57dccdd 100644 --- a/fs/ext4/ialloc.c +++ b/fs/ext4/ialloc.c | |||
@@ -885,16 +885,12 @@ got: | |||
885 | ei->i_disksize = 0; | 885 | ei->i_disksize = 0; |
886 | 886 | ||
887 | /* | 887 | /* |
888 | * Don't inherit extent flag from directory. We set extent flag on | 888 | * Don't inherit extent flag from directory, amongst others. We set |
889 | * newly created directory and file only if -o extent mount option is | 889 | * extent flag on newly created directory and file only if -o extent |
890 | * specified | 890 | * mount option is specified |
891 | */ | 891 | */ |
892 | ei->i_flags = EXT4_I(dir)->i_flags & EXT4_FL_INHERITED; | 892 | ei->i_flags = |
893 | if (S_ISLNK(mode)) | 893 | ext4_mask_flags(mode, EXT4_I(dir)->i_flags & EXT4_FL_INHERITED); |
894 | ei->i_flags &= ~(EXT4_IMMUTABLE_FL|EXT4_APPEND_FL); | ||
895 | /* dirsync only applies to directories */ | ||
896 | if (!S_ISDIR(mode)) | ||
897 | ei->i_flags &= ~EXT4_DIRSYNC_FL; | ||
898 | ei->i_file_acl = 0; | 894 | ei->i_file_acl = 0; |
899 | ei->i_dtime = 0; | 895 | ei->i_dtime = 0; |
900 | ei->i_block_group = group; | 896 | ei->i_block_group = group; |