Re: [PATCH RFC] f2fs: don't inline compressed inode

From: Chao Yu
Date: Thu Mar 26 2020 - 05:35:13 EST


On 2020/3/25 23:58, Jaegeuk Kim wrote:
> On 03/25, Chao Yu wrote:
>> f2fs_may_inline_data() only check compressed flag on current inode
>> rather than on parent inode, however at this time compressed flag
>> has not been inherited yet.
>
> When write() or other allocation happens, it'll be reset.

Yeah, all tests are fine w/o this RFC patch, anyway, will let you know if
I find something incompatible.

Thanks,

>
>>
>> Signed-off-by: Chao Yu <yuchao0@xxxxxxxxxx>
>> ---
>>
>> Jaegeuk,
>>
>> I'm not sure about this, whether inline_data flag can be compatible with
>> compress flag, thoughts?
>>
>> fs/f2fs/namei.c | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/fs/f2fs/namei.c b/fs/f2fs/namei.c
>> index f54119da2217..3807d1b4c4bc 100644
>> --- a/fs/f2fs/namei.c
>> +++ b/fs/f2fs/namei.c
>> @@ -86,7 +86,8 @@ static struct inode *f2fs_new_inode(struct inode *dir, umode_t mode)
>> if (test_opt(sbi, INLINE_XATTR))
>> set_inode_flag(inode, FI_INLINE_XATTR);
>>
>> - if (test_opt(sbi, INLINE_DATA) && f2fs_may_inline_data(inode))
>> + if (test_opt(sbi, INLINE_DATA) && f2fs_may_inline_data(inode) &&
>> + !f2fs_compressed_file(dir))
>> set_inode_flag(inode, FI_INLINE_DATA);
>> if (f2fs_may_inline_dentry(inode))
>> set_inode_flag(inode, FI_INLINE_DENTRY);
>> --
>> 2.18.0.rc1
> .
>