Ext4: A Case-insensitive Linux Filesystem
summary
Provides in-kernel, high-performance case-insensitive name lookups by adding a Unicode subsystem and APIs plus Ext4 changes merged into Linux 5.2. It auto-generates a forest of lookup trees from the Unicode UCD at build time, supports UTF‑8 C‑normalization and casefold, and records the Unicode version per filesystem stores Unicode version in superblock to avoid future collisions. Ext4 caches normalized names (improving lookups in 5.3), while FS‑crypt and overlayfs integration and negative‑dentry handling remain work in progress.
AI-written summary · about
chapters (16)
- 0:00Intro
- 0:33What is a caseinsensitive file system
- 1:02Why caseinsensitive
- 4:17How to implement it
- 6:21Semantics
- 8:54Unicode
- 11:55Normalization
- 14:48Kernel API
- 17:48Build Process
- 18:30Character Lookup
- 19:06Unicode Subsystem
- 19:29Basic Idea
- 20:26Details
- 21:24Performance
- 25:30Current Status
- 26:53Questions
related talks
37mImplementing Case-insensitive File Systems in the Linux Kernel
36mFlash Friendly File System
33mEncryption for filesystems with advanced features new fscrypt functionality
19mExtension Framework for File Systems in User space
42mOverview of Universal Flash Storage Subsystem
11mImmutable Linux systems and how they work
17mCoFS: A Filesystem for Fast Container Startup
11mEROFS as a replacement for EXT4 and Squashfs
