diff options
Diffstat (limited to 'fs/ext4/acl.h')
-rw-r--r-- | fs/ext4/acl.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/ext4/acl.h b/fs/ext4/acl.h index 9b63f5416..7f3b25b3f 100644 --- a/fs/ext4/acl.h +++ b/fs/ext4/acl.h @@ -67,6 +67,11 @@ extern int ext4_init_acl(handle_t *, struct inode *, struct inode *); static inline int ext4_init_acl(handle_t *handle, struct inode *inode, struct inode *dir) { + /* usually, the umask is applied by posix_acl_create(), but if + ext4 ACL support is disabled at compile time, we need to do + it here, because posix_acl_create() will never be called */ + inode->i_mode &= ~current_umask(); + return 0; } #endif /* CONFIG_EXT4_FS_POSIX_ACL */ |