Vinter: Automatic Non-Volatile Memory Crash Consistency Testing for Full Systems
summary
Vinter is an automated full-system NVM crash-consistency tester that runs the guest in a VM and records NVM writes, fences and flushes via dynamic binary translation (PANDA), replays traces to build crash images, and applies a heuristic to avoid state explosion (observed up to 512 modified cache lines). It extracts semantic states with fs-stamp, runs 16 short test scripts in minutes each, reproduces historical fixes, and finds new bugs in NOVA and NOVA-Fortis including atomicity violations and a missing flush that causes data loss.
AI-written summary · about
chapters (11)
- 0:00Intro
- 0:30Crash Consistency is Hard
- 2:05Goal: Testing NVM File Systems
- 4:02Vinter Overview
- 6:31Tracer
- 8:38Crash Image Generator: Heuristic
- 11:09Analysis
- 13:47File System Testing Results
- 14:30Bug Detail: Missing Flush in NOVA
- 16:52Evaluation Highlights
- 18:09Conclusion
related talks
20mScalable and Accurate Application-Level Crash-Consistency Testing(…)
18mTesting Intel TDX functionality with new set of self tests
50mWhat the Fuzz
44mVM block error injection, a novel approach for testing Linux storage
55mUsing the Valgrind Framework to Build a Persistent Memory Error Detector
15mFoundations of Empirical Memory Consistency Testing
12mUnderstanding and Finding Crash-Consistency Bugs in Parallel File Systems
40mTesting Distributed Systems w/ Deterministic Simulation
