Case-insensitive lookups for filesystems is a recurrent topic for filesystems, which got some attention in LSF/MM last year, during the discussion to get free of the Android wrapfs hackery. This year, I have been working on an approach to enable bind mount points supporting casefolding, whose goal is to allow side-by-side lookups of case-sensitive and case-insensitive names. This effort has a direct benefit to the Android filesystem, which requires some racy code to do this exactly feature, as well as other use cases for SteamOS. I published an early version with full UTF-8 (based on the SGI patches) support for performing case-folding in the EXT4 filesystem, as a RFC to the fsdev mailing list. The latest thread is here: https://www.spinics.net/lists/linux-ext4/msg59577.html Right now, I have focused on adapting the VFS to support a MS_CASEFOLD VFS flag, which would allow bind mounts, but I am having concerns about how to best explore the design of the dentry cache to handle multiple entries only differing by case. I've been experimenting with multiple approaches recently and getting live feedback from the community will be very helpful. In addition, other semantics for case-insensitive lookups could be discussed, like how to deal with invalid utf8 sequences, alternatives to the VFS approach, should it prove itself unreliable, and how to best adapt the dentry hashes to explore name sequences that only differ by case and normalization. -- Gabriel Krisman Bertazi