Extension Framework for File Systems in User space
Talkat USENIX ATC '19 · on Wednesday, 2019-07-10· at 14:20· USENIX ATC Track I: Grand Ballroom I–VI·
summary
ExtFUSE implements eBPF kernel extensions that let FUSE file systems register thin in-kernel handlers for metadata caching, permission checks and direct I/O passthrough, reducing kernel‑to‑userspace context switches. The prototype ports two FUSE file systems, uses shared eBPF maps for cache entries, and shows a kernel‑compile workload dropping overhead to 2.16% overhead versus optimized FUSE while adding roughly 50 MB worst‑case cache memory and a few hundred lines of handler code.
AI-written summary · about
chapters (10)
- 0:00Intro
- 0:21Kernel vs User File Systems
- 0:43File Systems in User Space (FUSE)
- 5:58eBPF Overview
- 8:14ExtFUSE Architecture
- 9:14ExtFUSE Applications
- 10:35ExtFUSE Example
- 13:00ExtFUSE Performance
- 14:36Conclusion
- 15:10Thank You!
related talks
16meBPF-based FUSE
26mImprove FUSE Filesystem Performance and Reliability
32mBringing up FUSE mounts C/R support
17mCoFS: A Filesystem for Fast Container Startup
29mFilesystem mounts in user namespaces
11mHigh Velocity Kernel File Systems with Bento
34mLearning to Write Filesystems in Userspace with FUSE and Python
24mFuse mounts recovery and Checkpoint/Restore
