From: Chuck Lever <[email protected]> Report ext4's case sensitivity behavior via the FS_XFLAG_CASEFOLD flag. ext4 always preserves case at rest.
Case sensitivity is a per-directory setting in ext4. If the queried inode is a casefolded directory, report case-insensitive; otherwise report case-sensitive (standard POSIX behavior). Reviewed-by: Jan Kara <[email protected]> Signed-off-by: Chuck Lever <[email protected]> --- fs/ext4/ioctl.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/fs/ext4/ioctl.c b/fs/ext4/ioctl.c index 7ce0fc40aec2..462da7aadc80 100644 --- a/fs/ext4/ioctl.c +++ b/fs/ext4/ioctl.c @@ -996,6 +996,13 @@ int ext4_fileattr_get(struct dentry *dentry, struct file_kattr *fa) if (ext4_has_feature_project(inode->i_sb)) fa->fsx_projid = from_kprojid(&init_user_ns, ei->i_projid); + /* + * Case folding is a directory attribute in ext4. Set FS_XFLAG_CASEFOLD + * for directories with the casefold attribute; all other inodes use + * standard case-sensitive semantics. + */ + if (IS_CASEFOLDED(inode)) + fa->fsx_xflags |= FS_XFLAG_CASEFOLD; return 0; } -- 2.52.0 _______________________________________________ Linux-f2fs-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel
