d_add_ci (9) - Linux Man Pages
d_add_ci: lookup or allocate new dentry with case-exact name
d_add_ci - lookup or allocate new dentry with case-exact name
struct dentry * d_add_ci(struct dentry
*dentry, struct inode *inode, struct qstr *name);
- the negative dentry that was passed to the parent's lookup func
- the inode case-insensitive lookup has found
- the case-exact name to be associated with the returned dentry
This is to avoid filling the dcache with case-insensitive names to the same inode, only the actual correct case is stored in the dcache for case-insensitive filesystems.
For a case-insensitive lookup match and if the the case-exact dentry already exists in in the dcache, use it and return it.