Features/record-replay: Difference between revisions
Line 11: | Line 11: | ||
be used for deterministic and reverse debugging of guest code through a gdb remote | be used for deterministic and reverse debugging of guest code through a gdb remote | ||
interface. | interface. | ||
==Using record/replay== | |||
Record/replay feature is tested for i386, x86_64, ARM, and MIPS platforms. | |||
Execution recording may be enabled through icount command line option: | |||
-icount shift=7,rr=record,rrfile=replay.bin | |||
Current version does not support replaying of block devices, serial ports, | |||
passthrough USB, and network devices. Therefore record/replay may be used with the | |||
following or similar command line options: | |||
qemu-system-arm -M integratorcp -kernel zImage.integrator -initrd arm_root.img -net none | |||
==How to get involved== | ==How to get involved== |
Revision as of 06:13, 7 November 2015
Overview
Record/replay feature is implementation of deterministic replay for system-level simulation (softmmu mode).
Record/replay functions are used for the reverse execution and deterministic replay of qemu execution. Determinitsic replay is used to record volatile system execution once and replay it for multiple times for the sake of analysis, debugging, logging, etc. This implementation of deterministic replay can be used for deterministic and reverse debugging of guest code through a gdb remote interface.
Using record/replay
Record/replay feature is tested for i386, x86_64, ARM, and MIPS platforms.
Execution recording may be enabled through icount command line option: -icount shift=7,rr=record,rrfile=replay.bin
Current version does not support replaying of block devices, serial ports, passthrough USB, and network devices. Therefore record/replay may be used with the following or similar command line options:
qemu-system-arm -M integratorcp -kernel zImage.integrator -initrd arm_root.img -net none
How to get involved
First version of patches of record/replay feature is prepared by ISP RAS
You can mail Pavel Dovgalyuk to get information about patches that were not upstreamed yet.