|
@@ -1584,8 +1584,15 @@ static int f2fs_ioc_getflags(struct file *filp, unsigned long arg)
|
|
|
{
|
|
|
struct inode *inode = file_inode(filp);
|
|
|
struct f2fs_inode_info *fi = F2FS_I(inode);
|
|
|
- unsigned int flags = fi->i_flags &
|
|
|
- (F2FS_FL_USER_VISIBLE | F2FS_PROJINHERIT_FL);
|
|
|
+ unsigned int flags = fi->i_flags;
|
|
|
+
|
|
|
+ if (file_is_encrypt(inode))
|
|
|
+ flags |= F2FS_ENCRYPT_FL;
|
|
|
+ if (f2fs_has_inline_data(inode) || f2fs_has_inline_dentry(inode))
|
|
|
+ flags |= F2FS_INLINE_DATA_FL;
|
|
|
+
|
|
|
+ flags &= F2FS_FL_USER_VISIBLE;
|
|
|
+
|
|
|
return put_user(flags, (int __user *)arg);
|
|
|
}
|
|
|
|