On 25/05/2015 14:07, Pavel Dovgalyuk wrote: > This set of patches is related to the reverse execution and deterministic > replay of qemu execution. This implementation of deterministic replay can > be used for deterministic debugging of guest code through gdb remote > interface. > > Core set of patches does not include support for reverse debugging commands > of gdb, block devices' operations, USB replay support. > > These patches include only core function of the replay, > excluding the support for replaying serial, audio, network, and USB devices' > operations. Reverse debugging and monitor commands were also excluded to > be submitted later as separate patches. > > Execution recording writes non-deterministic events log, which can be later > used for replaying the execution anywhere and for unlimited number of times. > It also supports checkpointing for faster rewinding during reverse debugging. > Execution replaying reads the log and replays all non-deterministic events > including external input, hardware clocks, and interrupts. > > Full version of deterministic replay has the following features: > * Deterministically replays whole system execution and all contents of the > memory, > state of the hadrware devices, clocks, and screen of the VM. > * Writes execution log into the file for latter replaying for multiple times > on different machines. > * Supports i386, x86_64, and ARM hardware platforms. > * Performs deterministic replay of all operations with keyboard and mouse > input devices. > * Supports auto-checkpointing for convenient reverse debugging. > > Usage of the record/replay core: > * First, record the execution, by adding the following string to the command > line: > '-icount shift=7,rr=record,rrfile=replay.bin -net none'. > Block devices' images are not actually changed in the recording mode, > because all of the changes are written to the temporary overlay file. > * Then you can replay it for the multiple times by using another command > line option: '-icount shift=7,rr=replay,rrfile=replay.bin -net none' > * '-net none' option should also be specified if network replay patches > are not applied. > * Do not add any disk images to VM, because they are not supported by > the core patches.
Hi Pavel, this series has reached a point where I need help from other maintainers, particularly (but not exclusively) regarding their own code. I don't see anything that stands out (that's why I asked you to remove the disks part), but it's a huge change and I don't feel comfortable "just including it" in a pull request like I did with all the preparatory changes so far. Thanks for your understanding! Paolo