On 21/09/2016 13:33, Pavel Dovgalyuk wrote: > This set of patches includes several fixes for replay and > adds network record/replay for network devices. It also makes possible > saving/restoring vmstate in replay mode. > > Record and replay for network interactions is performed with the network > filter. > Each backend must have its own instance of the replay filter as follows: > -netdev user,id=net1 -device rtl8139,netdev=net1 > -object filter-replay,id=replay,netdev=net1 > > This patches add rrsnapshot option for icount. rrshapshot option creates > start snapshot at record and loads it at replay. It allows preserving > the state of disk images used by virtual machine. This vm state can also > use used to roll back the execution while replaying. > > This set of patches includes fixes and additions for icount and > record/replay implementation: > - VM start/stop in replay mode > - Network interaction record/replay > - overlay option for blkreplay filter > - rrsnapshot option for record/replay > - vmstate fix for integratorcp ARM platform > > v4 changes: > - Overlay option is removed from blkreplay driver (as suggested by Paolo > Bonzini) > - Minor changes > > v3 changes: > - Added rrsnapshot option for specifying the initial snapshot name (as > suggested by Paolo Bonzini) > - Minor changes
When you post v5, I suspect it's best if you move patches 5-7 first, because those are the ones I'm going to merge myself. Thanks! Paolo > --- > > Pavel Dovgalyuk (8): > record/replay: add network support > replay: save/load initial state > block: don't make snapshots for filters > block: implement bdrv_recurse_is_first_non_filter for blkreplay > replay: move internal data to the structure > replay: vmstate for replay module > replay: allow replay stopping and restarting > integratorcp: adding vmstate for save/restore > > > block/blkreplay.c | 24 ++++++---- > block/snapshot.c | 3 + > cpus.c | 1 > docs/replay.txt | 30 ++++++++++++ > hw/arm/integratorcp.c | 62 ++++++++++++++++++++++++++ > include/sysemu/replay.h | 25 ++++++++++ > net/Makefile.objs | 1 > net/filter-replay.c | 92 ++++++++++++++++++++++++++++++++++++++ > qemu-options.hx | 8 ++- > replay/Makefile.objs | 2 + > replay/replay-events.c | 21 ++++++++- > replay/replay-internal.c | 20 ++++---- > replay/replay-internal.h | 33 ++++++++++++-- > replay/replay-net.c | 111 > ++++++++++++++++++++++++++++++++++++++++++++++ > replay/replay-snapshot.c | 78 ++++++++++++++++++++++++++++++++ > replay/replay-time.c | 2 - > replay/replay.c | 24 +++++++--- > stubs/replay.c | 5 ++ > vl.c | 14 +++++- > 19 files changed, 515 insertions(+), 41 deletions(-) > create mode 100644 net/filter-replay.c > create mode 100644 replay/replay-net.c > create mode 100644 replay/replay-snapshot.c >