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 overlay option for blkreplay block driver. Using persistent
overlay file allows saving and reloading VM snapshots in replay mode.
Replay mechanism automatically creates one snapshot named 'replay_init' to
allow rewinding execution while replaying.
Overlay file may be specified as follows:
 -drive file=disk.qcow,if=none,id=img-direct 
 -drive 
driver=blkreplay,if=none,image=img-direct,overlay=overlay.qcow2,id=img-blkreplay
 
 -device ide-hd,drive=img-blkreplay

This set of patches includes fixes and additions for icount and
record/replay implementation:
 - Enabling VM start/stop in replay mode
 - Adding network interaction record/replay
 - Adding overlay option for blkreplay filter
 - Fixes of the vmstate for several virtual devices

---

Pavel Dovgalyuk (10):
      record/replay: add network support
      block: set snapshot option for block devices in blkreplay module
      block: don't make snapshots for filters
      replay: save/load initial state
      replay: move internal data to the structure
      replay: vmstate for replay module
      replay: allow replay stopping and restarting
      kvmvapic: fix state change handler
      pcspk: adding vmstate for save/restore
      integratorcp: adding vmstate for save/restore


 block/blkreplay.c        |  132 +++++++++++++++++++++++++++++++++++++++++++---
 block/snapshot.c         |    3 +
 cpus.c                   |    1 
 docs/replay.txt          |   22 ++++++++
 hw/arm/integratorcp.c    |   62 ++++++++++++++++++++++
 hw/audio/pcspk.c         |   17 +++++-
 hw/i386/kvmvapic.c       |    1 
 include/sysemu/replay.h  |   26 +++++++++
 net/Makefile.objs        |    1 
 net/filter-replay.c      |   90 +++++++++++++++++++++++++++++++
 replay/Makefile.objs     |    2 +
 replay/replay-events.c   |   21 +++++++
 replay/replay-internal.c |   19 +++----
 replay/replay-internal.h |   26 +++++++--
 replay/replay-net.c      |  110 ++++++++++++++++++++++++++++++++++++++
 replay/replay-snapshot.c |   72 +++++++++++++++++++++++++
 replay/replay-time.c     |    2 -
 replay/replay.c          |   17 +++---
 stubs/replay.c           |    5 ++
 vl.c                     |    9 ++-
 20 files changed, 599 insertions(+), 39 deletions(-)
 create mode 100644 net/filter-replay.c
 create mode 100644 replay/replay-net.c
 create mode 100644 replay/replay-snapshot.c

-- 
Pavel Dovgalyuk

Reply via email to