aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ext4
diff options
context:
space:
mode:
Diffstat (limited to 'fs/ext4')
-rw-r--r--fs/ext4/ext4.h7
-rw-r--r--fs/ext4/ialloc.c2
2 files changed, 8 insertions, 1 deletions
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
index d5193b55ca94..d4700d101ea7 100644
--- a/fs/ext4/ext4.h
+++ b/fs/ext4/ext4.h
@@ -239,6 +239,13 @@ struct flex_groups {
239#define EXT4_FL_USER_VISIBLE 0x000BDFFF /* User visible flags */ 239#define EXT4_FL_USER_VISIBLE 0x000BDFFF /* User visible flags */
240#define EXT4_FL_USER_MODIFIABLE 0x000B80FF /* User modifiable flags */ 240#define EXT4_FL_USER_MODIFIABLE 0x000B80FF /* User modifiable flags */
241 241
242/* Flags that should be inherited by new inodes from their parent. */
243#define EXT4_FL_INHERITED (EXT4_SECRM_FL | EXT4_UNRM_FL | EXT4_COMPR_FL |\
244 EXT4_SYNC_FL | EXT4_IMMUTABLE_FL | EXT4_APPEND_FL |\
245 EXT4_NODUMP_FL | EXT4_NOATIME_FL |\
246 EXT4_NOCOMPR_FL | EXT4_JOURNAL_DATA_FL |\
247 EXT4_NOTAIL_FL | EXT4_DIRSYNC_FL)
248
242/* 249/*
243 * Inode dynamic state flags 250 * Inode dynamic state flags
244 */ 251 */
diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c
index fb51b40e3e8f..1ff3df086e58 100644
--- a/fs/ext4/ialloc.c
+++ b/fs/ext4/ialloc.c
@@ -889,7 +889,7 @@ got:
889 * newly created directory and file only if -o extent mount option is 889 * newly created directory and file only if -o extent mount option is
890 * specified 890 * specified
891 */ 891 */
892 ei->i_flags = EXT4_I(dir)->i_flags & ~(EXT4_INDEX_FL|EXT4_EXTENTS_FL); 892 ei->i_flags = EXT4_I(dir)->i_flags & EXT4_FL_INHERITED;
893 if (S_ISLNK(mode)) 893 if (S_ISLNK(mode))
894 ei->i_flags &= ~(EXT4_IMMUTABLE_FL|EXT4_APPEND_FL); 894 ei->i_flags &= ~(EXT4_IMMUTABLE_FL|EXT4_APPEND_FL);
895 /* dirsync only applies to directories */ 895 /* dirsync only applies to directories */