Collected knowledge
The sources the system stands on. Every reference links back to everything that cites it.
Books
Linux Kernel Development, 3rd editioncited by 0Robert Love · 2010
The book I keep returning to when kernel documentation assumes too much context. Its VFS chapters are the scaffolding under both filesystem articles.
Papers
Soft Updates: A Technique for Eliminating Most Synchronous Writes in the Fast Filesystemcited by 0G. R. Ganger, M. K. McKusick, C. A. N. Soules, Y. N. Patt · 1999
Queued behind the ext4 journaling notes; the dependency-graph idea echoes in the knowledge-graph work.
Specifications
POSIX.1-2017 (IEEE 1003.1-2017)cited by 0IEEE / The Open Group · 2018
Pathname resolution is specified in §4.13 and per-call. Reading the spec after reading namei.c explains which kernel behaviors are obligations and which are choices.
RFCs
RFC 8259 — The JavaScript Object Notation (JSON) Data Interchange Formatcited by 0T. Bray, ed. · 2017
Cited by the search index format notes; mostly here as an example of how RFCs are catalogued.
Kernel documentation
Documentation/filesystem/vfs.rstcited by 0The Linux kernel community · 2024
Terse, precise, occasionally wrong in small ways. Always read alongside the actual fs/namei.c source.
Documentation/filesystem/fuse.rstcited by 1The Linux kernel community · 2024
Required reading before writing a single line of a FUSE daemon. The invalidation section is easy to miss and expensive to learn the hard way.
fs/namei.c — path_lookupat() and friendscited by 0The Linux kernel community · 2024
The source of record for how a path actually becomes an inode; read directly rather than through prose, because the object model only fully makes sense inside the walk loop itself.
perf-stat(1)cited by 0The Linux kernel community · 2024
The tool behind the dentry hit-rate measurements; its event semantics differing across kernel versions is exactly the methodology hole the dentry-cache notes flag.
Websites
fuser — a Rust library for filesystems in userspacecited by 1Christopher Berner and contributors · 2024
Chosen over libfuse/C in atlas-fs ADR-001. Reading its request handlers is the fastest way to see what the kernel actually asks a FUSE daemon to do.