On Sat, Dec 8, 2018 at 1:58 PM Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > > I'm hoping you are at least doing it per-directory. That makes at > least the "oh, the whole filesystem needs to do this wrong" issue a > bit less bad. So for example, if you do it per-directory, the rules could be something like: - new directories (ie "mkdir()") inherit the icase/folding semantics of the parent directory - empty directories can have their case/folding rules changed with some well-defined interface and even from just those simple rules, now some icase behavior could be useful to testing. Not just filesystem testing (although that would be a thing - thing fsstress), but for doing app development in a test directory. Apps like git (and GNU fileutils) could use it for having test suites for FAT etc filesystems. And cross-platform apps could use it as a "I want to check that I do the right thing" if you do development on Linux, but might have a portable app for other platforms. If the whole filesystem is that way, nobody is going to do it. Sure, they could do it on a FAT filesystem using a USB disk, but nobody really does that. But if you can troivially just run your tests in a test subdirectory, it's another thing entirely. So this is the kind of thing I mean when I think icase behavior for a major Linux filesystem should have a real _design_. It's really quite fundamentally different from the "oh, I need FAT to be icase" hack that we have now. (We might also be able to make the dcache better at handling well-defined icase/folding rules, as opposed to the current "just give up, let the filesystem hash it" behavior). Linus