Initially, I attempted to create reproducers using strace like log, but further research showed that this approach is almost impossible in practice. Therefore, a new strategy should be considered to improve reproducibility.
Proposal
- Implement a reproducible mode that stores program executions using
rr(--rr).
- Allow storing and replaying the target program with
rr to provide deterministic reproduction of issues.
Motivation
strace is insufficient for building reliable reproducers due to the complexity and nondeterminism of system interactions.
rr provides a deterministic record-and-replay model, making it well-suited for kernel/user-space issue reproduction.
- Improves debugging and sharing of reproducible test cases across different environments.
Use cases
- Debugging hard-to-reproduce crashes and race conditions.
- Creating a standardized way to replay execution under reproducible conditions.
Initially, I attempted to create reproducers using
stracelike log, but further research showed that this approach is almost impossible in practice. Therefore, a new strategy should be considered to improve reproducibility.Proposal
rr(--rr).rrto provide deterministic reproduction of issues.Motivation
straceis insufficient for building reliable reproducers due to the complexity and nondeterminism of system interactions.rrprovides a deterministic record-and-replay model, making it well-suited for kernel/user-space issue reproduction.Use cases