Linux Kernel Developers Address File-System Proliferation with New Guidelines
The Linux kernel development community is addressing the growing complexity and maintenance burden caused by the proliferation of file-systems within the kernel's source tree. Currently, the Linux kernel includes around 69 different file-systems, ranging from widely used ones like EXT4 and Btrfs to more specialized systems like ZoneFS. This diversity has led to challenges in maintaining the virtual file-system (VFS) code. In response, VFS maintainers are introducing documentation to establish clear guidelines for the acceptance of new file-systems into the mainline kernel. These guidelines emphasize the importance of adoption, testability, user-space utility support, maintainer commitment, and user base viability. Developers are encouraged to extend existing file-systems rather than create new ones, and to use user-space file-systems (FUSE) for niche applications. The documentation also outlines technical requirements, such as using the modern VFS interface and providing necessary user-space utilities.