PerSeVerE: Persistency Semantics for Verification under Ext4
summary
Formal semantics for ext4 are derived from the kernel implementation and stress tests and integrated with C/C++ weak-memory models; a model-checker then explores persistency behaviors. The tool PerSeVerE framework model checks real programs and found bugs in emacs vim nano — notably a replace-by-truncate bug that corrupts files (demonstrated with a 128 MB experiment). A minimal fsync-after-write fix is verified and merged into nano, making it crash-safe on ext4.
AI-written summary · about
