lkml.org 
[lkml]   [2019]   [Jul]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [f2fs-dev] [PATCH v4 3/3] f2fs: Support case-insensitive file name lookups
    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?

    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,

    \
     
     \ /
      Last update: 2019-07-29 08:31    [W:5.032 / U:0.060 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site