For casefolded dentries, set their inode flag with S_CASEFOLD.
Signed-off-by: André Almeida <andrealmeid@igalia.com>
---
fs/overlayfs/inode.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/fs/overlayfs/inode.c b/fs/overlayfs/inode.c
index ecb9f2019395ecd01a124ad029375b1a1d13ebb5..5dec29811b6a5088f838793eb2f561abd12db1d2 100644
--- a/fs/overlayfs/inode.c
+++ b/fs/overlayfs/inode.c
@@ -1301,6 +1301,13 @@ struct inode *ovl_get_inode(struct super_block *sb,
if (inode->i_state & I_NEW)
unlock_new_inode(inode);
+
+ if (realpath.dentry && ovl_dentry_casefolded(realpath.dentry)) {
+ int flags = inode->i_flags | S_CASEFOLD;
+
+ inode_set_flags(inode, flags, flags);
+ }
+
out:
return inode;
--
2.50.1