Decentralized, Epoch-based F2FS Journaling with Fine-grained Crash Recovery
Yaotian Cui, Zhiqi Wang, Renhai Chen, Zili Shao
Abstract
F2FS, a log-structured filesystem, has gained widespread adoption in Android systems. However, F2FS relies on coarsegrained checkpointing for crash recovery. When triggered, this mechanism significantly degrades system performance by blocking file writes. Additionally, F2FS's checkpointing approach may not fully recover file data and metadata to a consistent state after a crash. Given these limitations, it is crucial to design a new journaling mechanism for F2FS that provides fine-grained crash recovery. While journaling methods are well-studied for in-place-update filesystems (such as JBD2 for EXT4), directly applying these state-of-the-art techniques to F2FS -an out-of-place-update filesystem -does not yield similar benefits.
In this paper, we propose a novel journaling technique, called F2FSJ, for F2FS with ordered journal mode. Catering to the out-of-place update features of F2FS, F2FSJ incorporate several innovative designs. First, in F2FSJ, only metadata changes are journaled and committed after data flushing, by which I/O and storage overheads can be mitigated. Second, we propose a decentralized journal design by embedding journal logs into inodes, which significantly reduces lock contention and interference when recording metadata changes. Third, we propose an epoch-based approach with a novel data/controlplane decoupling mechanism, which eliminates waiting times during journal period transfers. Finally, for journal apply, we propose a fast-forward-to-latest approach to consolidate multiple small updates into one update for reducing small writes. We have implemented a fully functional prototype of F2FSJ and conducted extensive experiments. Our experimental results demonstrate that F2FSJ can effectively reduce the checkpointing time by up to 4.9x and reduce the latency by up to 35% compared with F2FS. F2FSJ is open-sourced for public access.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext b05d38b3-c8a8-491b-82bf-ef0be6054ec0Cited by top-tier papers1
Ask how each one uses itBuilds on4
- WineFS: a hugepage-aware file system for persistent memory that ages gracefullyRohan Kadekodi, Saurabh Kadekodi, Soujanya Ponnapalli, Harshad Shirwadkar et al.SOSP 2021 · 35 citations
- FastCommit: resource-efficient, performant and cost-effective file system journalingHarshad Shirwadkar, Saurabh Kadekodi, Theodore Y. Ts'oUSENIX ATC 2024 · 6 citations
- LODIC: Logical Distributed Counting for Scalable File AccessJeoungahn Park, Taeho Hwang, Jongmoo Choi, Changwoo Min et al.USENIX ATC 2021 · 1 citation
- CJFS: Concurrent Journaling for Better ScalabilityJoontaek Oh, Seung Won Yoo, Hojin Nam, Changwoo Min et al.FAST 2023
Related papers
- Z-Journal: Scalable Per-Core JournalingJongseok Kim, Cassiano Campes, Joo Young Hwang, Jinkyu Jeong et al.USENIX ATC 2021 · 22 citations
- Fast and Synchronous Crash Consistency with Metadata Write-Once File SystemYanqi Pan, Wen Xia, Yifeng Zhang, Xiangyu Zou et al.OSDI 2025
- ScaleXFS: Getting scalability of XFS back on the ringDohyun Kim, Kwangwon Min, Joontaek Oh, Youjip WonFAST 2022 · 14 citations
- D2FS: Device-Driven Filesystem Garbage CollectionJuwon Kim, Seungjae Lee, Joontaek Oh, Dongkun Shin et al.FAST 2025 · 7 citations
- IPLFS: Log-Structured File System without Garbage CollectionJuwon Kim, Minsu Kim, Muhammad Danish Tehseen, Joontaek Oh et al.USENIX ATC 2022
