utsaslab / chipmunk Goto Github PK
View Code? Open in Web Editor NEWTool for checking crash-consistency for persistent-memory file systems
License: Apache License 2.0
Tool for checking crash-consistency for persistent-memory file systems
License: Apache License 2.0
Chipmunk currently permutes 64 byte chunks of metadata, but the actual atomic persistence granularity of Intel Optane PM is 8 bytes. Look into splitting up metadata writes further and how much time this would add to testing; might need additional heuristics to reduce the actual number of permutations.
Right now most of our SplitFS testing code is in a separate repo and the version here does not support SplitFS/user space code testing more broadly. The code is in a private repo but I can give access to someone who is interested in this.
We have some techniques for deduplicating bug reports (mostly in the Syzkaller reporter), but there are still a lot of duplicates.
Right now the ACE and Syzkaller tests have distinct test harnesses and separate workflows, which is complicated and increases the amount of effort if you want to run both. We should have a single workflow with an option to choose which one you want to run (plus additional options to specify ACE tests, etc.)
kallsyms_on_each_symbol
is no longer exported for use by kernel modules (https://lwn.net/Articles/813350/) but Chipmunk relies on it to find all instances of centralized persistence functions. The current workaround is to modify the tested kernel to export it, but we should find a better way to install kprobes on these functions.
Some tests generated by ACE attempt to invoke system calls in invalid ways (e.g., trying to move a directory into itself).
TODO: add a list of examples
Currently the oracle file system is an instance of the same file system being tested, but it would be better for the oracle to be a more mature file system so that (non-crash-consistency) bugs in the target file system cannot obscure crash-consistency bugs.
There is a lot of repeated code in the different logger modules (both within each module and across all of them) that could be eliminated via refactoring.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.