mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-08-09 06:14:34 +02:00
This document is motivated by the ongoing maintenance burden that abandoned and untestable filesystems impose on VFS developers, blocking infrastructure changes such as folio conversions and iomap migration. This week alone, two new filesystems were proposed on linux-fsdevel (VMUFAT and FTRFS), highlighting the need for documented guidelines that new filesystem authors can refer to before submission. Multiple recent discussions on linux-fsdevel have touched on the criteria for merging new filesystems and for deprecating old ones, covering topics such as modern VFS interface adoption, testability, userspace utilities, maintainer commitment, and user base viability. Add Documentation/filesystems/adding-new-filesystems.rst describing the technical requirements and community expectations for merging a new filesystem into the kernel. The guidelines cover: - Alternatives to consider before proposing a new in-kernel filesystem - Technical requirements: modern VFS interfaces (iomap, folios, fs_context mount API), testability, and userspace utilities - Community expectations: identified maintainers, demonstrated commitment, sustained backing, and a clear user base - Ongoing obligations after merging, including the risk of deprecation for unmaintained filesystems Link: https://lore.kernel.org/linux-fsdevel/20260411151155.321214-1-adrianmcmenamin@gmail.com/ Link: https://lore.kernel.org/linux-fsdevel/20260413142357.515792-1-aurelien@hackers.camp/ Link: https://lore.kernel.org/linux-fsdevel/yndtg2jbj55fzd2kkhsmel4pp5ll5xfvfiaqh24tdct3jiqosd@jzbfzf3rrxrd/ Link: https://lore.kernel.org/linux-fsdevel/20260124091742.GA43313@macsyma.local/ Link: https://lore.kernel.org/lkml/20260111140345.3866-1-linkinjeon@kernel.org/ Cc: Christian Brauner <brauner@kernel.org> Cc: Alexander Viro <viro@zeniv.linux.org.uk> Cc: Jan Kara <jack@suse.cz> Cc: Theodore Tso <tytso@mit.edu> Cc: Christoph Hellwig <hch@lst.de> Cc: Darrick J. Wong <djwong@kernel.org> Cc: Matthew Wilcox <willy@infradead.org> Assisted-by: Cursor:claude-4-opus Signed-off-by: Amir Goldstein <amir73il@gmail.com> Link: https://patch.msgid.link/20260422125212.1743006-1-amir73il@gmail.com Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
128 lines
1.8 KiB
ReStructuredText
128 lines
1.8 KiB
ReStructuredText
.. _filesystems_index:
|
|
|
|
===============================
|
|
Filesystems in the Linux kernel
|
|
===============================
|
|
|
|
This under-development manual will, some glorious day, provide
|
|
comprehensive information on how the Linux virtual filesystem (VFS) layer
|
|
works, along with the filesystems that sit below it. For now, what we have
|
|
can be found below.
|
|
|
|
Core VFS documentation
|
|
======================
|
|
|
|
See these manuals for documentation about the VFS layer itself and how its
|
|
algorithms work.
|
|
|
|
.. toctree::
|
|
:maxdepth: 2
|
|
|
|
vfs
|
|
path-lookup
|
|
api-summary
|
|
splice
|
|
locking
|
|
directory-locking
|
|
devpts
|
|
dnotify
|
|
fiemap
|
|
files
|
|
locks
|
|
mmap_prepare
|
|
multigrain-ts
|
|
mount_api
|
|
quota
|
|
seq_file
|
|
sharedsubtree
|
|
idmappings
|
|
iomap/index
|
|
|
|
automount-support
|
|
|
|
caching/index
|
|
|
|
porting
|
|
adding-new-filesystems
|
|
|
|
Filesystem support layers
|
|
=========================
|
|
|
|
Documentation for the support code within the filesystem layer for use in
|
|
filesystem implementations.
|
|
|
|
.. toctree::
|
|
:maxdepth: 2
|
|
|
|
buffer
|
|
journalling
|
|
fscrypt
|
|
fsverity
|
|
netfs_library
|
|
|
|
Filesystems
|
|
===========
|
|
|
|
Documentation for filesystem implementations.
|
|
|
|
.. toctree::
|
|
:maxdepth: 2
|
|
|
|
9p
|
|
adfs
|
|
affs
|
|
afs
|
|
autofs
|
|
autofs-mount-control
|
|
befs
|
|
bfs
|
|
btrfs
|
|
ceph
|
|
coda
|
|
configfs
|
|
cramfs
|
|
dax
|
|
debugfs
|
|
dlmfs
|
|
ecryptfs
|
|
efivarfs
|
|
erofs
|
|
ext2
|
|
ext3
|
|
ext4/index
|
|
f2fs
|
|
gfs2/index
|
|
hfs
|
|
hfsplus
|
|
hpfs
|
|
fuse/index
|
|
inotify
|
|
isofs
|
|
nilfs2
|
|
nfs/index
|
|
ntfs
|
|
ntfs3
|
|
ocfs2
|
|
ocfs2-online-filecheck
|
|
omfs
|
|
orangefs
|
|
overlayfs
|
|
proc
|
|
qnx6
|
|
ramfs-rootfs-initramfs
|
|
relay
|
|
resctrl
|
|
romfs
|
|
smb/index
|
|
spufs/index
|
|
squashfs
|
|
sysfs
|
|
tmpfs
|
|
ubifs
|
|
ubifs-authentication
|
|
udf
|
|
virtiofs
|
|
vfat
|
|
xfs/index
|
|
zonefs
|