On 10/26, Jaegeuk Kim wrote: > On 10/26, Jaegeuk Kim wrote: > > Hi Chao, > > > > On 10/26, Jaegeuk Kim wrote: > > > On 10/26, Chao Yu wrote: > > > > Hi Jaegeuk, > > > > > > > > On 2017/10/26 16:42, Jaegeuk Kim wrote: > > > > > Hi Chao, > > > > > > > > > > It seems this is a critical problem, so let me integrate this patch > > > > > with your > > > > > initial patch "f2fs: support flexible inline xattr size". > > > > > Let me know, if you have any other concern. > > > > > > > > Better. ;) > > > > > > > > Please add commit message of this patch into initial patch "f2fs: > > > > support > > > > flexible inline xattr size". > > > > BTW, I read the patch again, and couldn't catch the problem actually. > > We didn't assign inline_xattr all the time, instead do if inline_xattr > > is set. Have you done some tests with this? I'm failing tests with these > > changes. > > Could you take a look at this change?
In addition to this f2fs-tools? --- include/f2fs_fs.h | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/include/f2fs_fs.h b/include/f2fs_fs.h index 09b2a60..66c446c 100644 --- a/include/f2fs_fs.h +++ b/include/f2fs_fs.h @@ -1056,14 +1056,12 @@ static inline int __get_extra_isize(struct f2fs_inode *inode) extern struct f2fs_configuration c; static inline int get_inline_xattr_addrs(struct f2fs_inode *inode) { - if ((c.feature & cpu_to_le32(F2FS_FEATURE_EXTRA_ATTR)) && - (c.feature & cpu_to_le32(F2FS_FEATURE_FLEXIBLE_INLINE_XATTR))) + if (c.feature & cpu_to_le32(F2FS_FEATURE_FLEXIBLE_INLINE_XATTR)) return le16_to_cpu(inode->i_inline_xattr_size); - else if (!(inode->i_inline & F2FS_INLINE_XATTR) && - (S_ISREG(inode->i_mode) || S_ISLNK(inode->i_mode))) - return 0; - else + else if (inode->i_inline & F2FS_INLINE_XATTR) return DEFAULT_INLINE_XATTR_ADDRS; + else + return 0; } #define get_extra_isize(node) __get_extra_isize(&node->i) -- 2.7.4