News: 0001538050

  ARM Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life (Terry Pratchett, Jingo)

FUSE File-Systems To Support Much Longer Filenames With Linux 6.15

([Linux Kernel] 42 Minutes Ago Longer File Names)


All of the FUSE updates have been sent in for the in-development [1]Linux 6.15 kernel for supporting file-systems in user-space.

Most notable with the FUSE changes for Linux 6.15 is enabling longer filenames. Currently there is a max of 1024 characters for filenames with FUSE but that is being increased with this next kernel version. The increase with Linux 6.15 puts it at one less than PATH_MAX, which is typically defined as 4096. Thus just one less than a 4x increase to the current filename limits for FUSE.

For those wondering if anyone actually uses longer than 1024 characters, it turns out this is a legitimate increase. [2]The patch bumping the limit notes the increase is needed for dealing with Amazon/AWS S3 storage and its keys:

"Our file system has a translation capability for S3-to-posix. The current value of 1kiB is enough to cover S3 keys, but does not allow encoding of %xx escape characters. The limit is increased to (PATH_MAX - 1), as we need 3 x 1024 and that is close to PATH_MAX (4kB) already. -1 is used as the terminating null is not included in the length calculation."

The other changes in the [3]FUSE pull request for Linux 6.15 include allowing the connection to the server to time out, returning "EPERM" if the server doesn't support creating hard links, fixing a possible race condition, and other small fixes.



[1] https://www.phoronix.com/search/Linux+6.15

[2] https://patchwork.kernel.org/project/linux-fsdevel/patch/20241216-fuse_name_max-limit-6-13-v3-2-b4b04966ecea@ddn.com/

[3] https://lore.kernel.org/lkml/CAJfpegsQDTYsEWHMK9skpNzUO=GA_DR7zGHftyO2sZH5wjaZLA@mail.gmail.com/



phoronix

Dave I can produce equivalently valid microbenchmarks showing Linux works
much better with the scheduler disabled. They are worth about as much as
your benchmarks for that optimisation and they likewise ignore a slightly
important object known as "the big picture"

- Alan Cox on linux-kernel