Nearly two years ago patches for casefolding / case insensitive file and folder support on Bcachefs were posted by a Valve/Linux developer. That support was upstreamed into the Bcachefs kernel driver but it turns out that it never properly worked. Patches now set for merging into the Linux 6.15 will fix that case insensitive file/folder opt-in support so that it is now properly supported.
With today’s Bcachefs fixes sent in ahead of Linux 6.15-rc4 on the weekend, case insensitive directories are now working.
Bcachefs lead developer Kent Overstreet added a lengthy note to the pull request explaining the Bcachefs case folding/insensitive mishap:
“There’s a story behind the case insensitive directory fixes, and lessons to be learned.
When I was discussing with the developer who did the implementation, I noted that fstests should already have tests.
However, it seems I neglected to tell him to make sure the tests actually run. So, there’s a lesson here, and since inadequate testing keeps coming up, let me state it now:
It is _not_ enough to simply rely on the automated tests.
You have to have eyes on what your code is doing. That means that until you’ve thoroughly Familiarized yourself with the code you’re working on and the test suites, you need to look – with your eyes – and confirm that the tests are doing what you think they’re doing and your code is doing what you think it’s doing.
If you’re not 100% sure that your code is doing what you think it’s doing, it’s your responsibility to dig in and verify – add printks, tracepoints, counters, whatever it takes.
Automated test infrastructure is a backstop because there are times when we are all forgetful and miss things.
You have to run your code locally, and look at what it does. I’ve provided good tools for this. If you’re working on my code, make sure you’re using them.”
So with this pull request, the Bcachefs case insensitive support should be in order. Plus various other small fixes to the week for this copy-on-write file-system.