On 2019-7-29 15:22, Chao Yu wrote: > On 2019/7/29 14:27, Jaegeuk Kim wrote: >> On 07/28, Chao Yu wrote: >>> On 2019-7-24 7:05, Daniel Rosenberg via Linux-f2fs-devel wrote: >>>> /* Flags that are appropriate for regular files (all but dir-specific ones). */ >>>> #define F2FS_REG_FLMASK (~(F2FS_DIRSYNC_FL | F2FS_PROJINHERIT_FL)) >>> >>> We missed to add F2FS_CASEFOLD_FL here to exclude it in F2FS_REG_FLMASK. >> >> Applied. >> >>> >>>> @@ -1660,7 +1660,16 @@ static int f2fs_setflags_common(struct inode *inode, u32 iflags, u32 mask) >>>> return -EPERM; >>>> >>>> oldflags = fi->i_flags; >>>> + if ((iflags ^ oldflags) & F2FS_CASEFOLD_FL) { >>>> + if (!f2fs_sb_has_casefold(F2FS_I_SB(inode))) >>>> + return -EOPNOTSUPP; >>>> + >>>> + if (!S_ISDIR(inode->i_mode)) >>>> + return -ENOTDIR; >>>> >>>> + if (!f2fs_empty_dir(inode)) >>>> + return -ENOTEMPTY; >>>> + } >> >> Modified like this: >> @@ -1665,6 +1665,13 @@ static int f2fs_setflags_common(struct inode *inode, u32 iflags, u32 mask) >> if (IS_NOQUOTA(inode)) >> return -EPERM; >> >> + if ((iflags ^ fi->i_flags) & F2FS_CASEFOLD_FL) { >> + if (!f2fs_sb_has_casefold(F2FS_I_SB(inode))) >> + return -EOPNOTSUPP; >> + if (!f2fs_empty_dir(inode)) >> + return -ENOTEMPTY; >> + } >> + >> >> Note that, directory is checked by above change. >> >> I've uploaded in f2fs.git, so could you check it out and test a bit? > > I've checked it out, it looks good to me now, and later I will test this new > version. > > Reviewed-by: Chao Yu <yuchao0@xxxxxxxxxx> It can pass generic/556 as well. Thanks, > > Thanks, > >> >> Thanks, >> >>> >>> I applied the patches based on last Jaegeuk's dev branch, it seems we needs to >>> adjust above code a bit. Otherwise it looks good to me. >>> >>> BTW, it looks the patchset works fine with generic/556 testcase. >>> >>> Thanks, >> . >>