Linux File-System Proliferation A Burden: Requirements Laid Out For Any Future File-Systems
([Linux Storage] 6 Hours Ago
Requirements For New File-Systems)
- Reference: 0001631627
- News link: https://www.phoronix.com/news/Linux-FS-Proliferation-Burden
- Source link:
The growing number of file-systems within the Linux kernel source tree is causing an ongoing burden for upstream developers maintaining the virtual file-system (VFS) code around it and associated code. As a result of the continuing rise of new file-systems being proposed for the Linux kernel, documentation is being introduced to establish clear guidelines for getting new file-systems accepted into the mainline kernel.
Going off the folders in fs/ , the mainline Linux kernel as of the current v7.1 development has around 69 different file-systems (there are a few directories for NFS as an example). From the likes of EXT4, Btrfs, F2FS, and XFS to network file-systems like NFS and then psuedo file-systems like proc and then specialized file-systems like ZoneFS and then old remnants like BeFS and JFS. The wide expanse of file-systems on Linux causes a maintenance burden especially when they stop seeing active maintainership.
Stemming from recent proposals for two more file-systems of [1]FTRFS and [2]VMUFAT and the " ongoing maintenance burden that abandoned and untestable filesystems impose on VFS developers ", VFS maintainers decided it's time to lay out documentation with more clear-cut guidelines for getting new file-systems upstreamed.
The documentation focuses on adoption, testability, user-space utility support, maintainer commitment, and user base viability. The documentation encourages developers to extend existing file-systems if at all possible before creating a new one. For niche file-system use-cases it also encourages using file-systems in user-space (FUSE) if possible.
The technical requirements laid out include using the modern VFS interface and not depend upon already deprecated code, providing the necessary user-space utilities for support to make a file-system and for file-system checking, meaningful testing, and documentation.
The documentation also makes clear that file-systems that become unmaintained by the maintainer(s) not responding, not adapting to Linux kernel infrastructure changes, or where testing becomes impossible may lead to deprecation and eventual removal from the Linux kernel.
Those interested can find the tentative documentation on new Linux file-system requirements can be found via [3]this patch currently queued in the VFS.git development tree of "vfs-7.2.misc" ahead of the Linux 7.2 merge window this summer.
[1] https://www.phoronix.com/news/FTRFS-Linux-File-System
[2] https://www.phoronix.com/news/Linux-VMUFAT-2026
[3] https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git/commit/?h=vfs-7.2.misc&id=b34d597faae60a4c89235205478497b975e86bc5
Going off the folders in fs/ , the mainline Linux kernel as of the current v7.1 development has around 69 different file-systems (there are a few directories for NFS as an example). From the likes of EXT4, Btrfs, F2FS, and XFS to network file-systems like NFS and then psuedo file-systems like proc and then specialized file-systems like ZoneFS and then old remnants like BeFS and JFS. The wide expanse of file-systems on Linux causes a maintenance burden especially when they stop seeing active maintainership.
Stemming from recent proposals for two more file-systems of [1]FTRFS and [2]VMUFAT and the " ongoing maintenance burden that abandoned and untestable filesystems impose on VFS developers ", VFS maintainers decided it's time to lay out documentation with more clear-cut guidelines for getting new file-systems upstreamed.
The documentation focuses on adoption, testability, user-space utility support, maintainer commitment, and user base viability. The documentation encourages developers to extend existing file-systems if at all possible before creating a new one. For niche file-system use-cases it also encourages using file-systems in user-space (FUSE) if possible.
The technical requirements laid out include using the modern VFS interface and not depend upon already deprecated code, providing the necessary user-space utilities for support to make a file-system and for file-system checking, meaningful testing, and documentation.
The documentation also makes clear that file-systems that become unmaintained by the maintainer(s) not responding, not adapting to Linux kernel infrastructure changes, or where testing becomes impossible may lead to deprecation and eventual removal from the Linux kernel.
Those interested can find the tentative documentation on new Linux file-system requirements can be found via [3]this patch currently queued in the VFS.git development tree of "vfs-7.2.misc" ahead of the Linux 7.2 merge window this summer.
[1] https://www.phoronix.com/news/FTRFS-Linux-File-System
[2] https://www.phoronix.com/news/Linux-VMUFAT-2026
[3] https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git/commit/?h=vfs-7.2.misc&id=b34d597faae60a4c89235205478497b975e86bc5