Pārlūkot izejas kodu

docs: convert docs/devel/replay page to rst

This patch converts prior .txt replay devel documentation to .rst.

Signed-off-by: Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <165364839013.688121.11935249420738873044.stgit@pasha-ThinkPad-X280>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Pavel Dovgalyuk 3 gadi atpakaļ
vecāks
revīzija
04d0583a4f
2 mainītis faili ar 13 papildinājumiem un 4 dzēšanām
  1. 1 0
      docs/devel/index-tcg.rst
  2. 12 4
      docs/devel/replay.rst

+ 1 - 0
docs/devel/index-tcg.rst

@@ -13,3 +13,4 @@ are only implementing things for HW accelerated hypervisors.
    multi-thread-tcg
    multi-thread-tcg
    tcg-icount
    tcg-icount
    tcg-plugins
    tcg-plugins
+   replay

+ 12 - 4
docs/devel/replay.txt → docs/devel/replay.rst

@@ -1,3 +1,11 @@
+..
+   Copyright (c) 2022, ISP RAS
+   Written by Pavel Dovgalyuk
+
+=======================
+Execution Record/Replay
+=======================
+
 Record/replay mechanism, that could be enabled through icount mode, expects
 Record/replay mechanism, that could be enabled through icount mode, expects
 the virtual devices to satisfy the following requirements.
 the virtual devices to satisfy the following requirements.
 
 
@@ -5,7 +13,7 @@ The main idea behind this document is that everything that affects
 the guest state during execution in icount mode should be deterministic.
 the guest state during execution in icount mode should be deterministic.
 
 
 Timers
 Timers
-======
+------
 
 
 All virtual devices should use virtual clock for timers that change the guest
 All virtual devices should use virtual clock for timers that change the guest
 state. Virtual clock is deterministic, therefore such timers are deterministic
 state. Virtual clock is deterministic, therefore such timers are deterministic
@@ -19,7 +27,7 @@ the virtual devices (e.g., slirp routing device) that lie outside the
 replayed guest.
 replayed guest.
 
 
 Bottom halves
 Bottom halves
-=============
+-------------
 
 
 Bottom half callbacks, that affect the guest state, should be invoked through
 Bottom half callbacks, that affect the guest state, should be invoked through
 replay_bh_schedule_event or replay_bh_schedule_oneshot_event functions.
 replay_bh_schedule_event or replay_bh_schedule_oneshot_event functions.
@@ -27,7 +35,7 @@ Their invocations are saved in record mode and synchronized with the existing
 log in replay mode.
 log in replay mode.
 
 
 Saving/restoring the VM state
 Saving/restoring the VM state
-=============================
+-----------------------------
 
 
 All fields in the device state structure (including virtual timers)
 All fields in the device state structure (including virtual timers)
 should be restored by loadvm to the same values they had before savevm.
 should be restored by loadvm to the same values they had before savevm.
@@ -38,7 +46,7 @@ is not defined. It means that you should not call functions like
 the dependencies that may make restoring the VM state non-deterministic.
 the dependencies that may make restoring the VM state non-deterministic.
 
 
 Stopping the VM
 Stopping the VM
-===============
+---------------
 
 
 Stopping the guest should not interfere with its state (with the exception
 Stopping the guest should not interfere with its state (with the exception
 of the network connections, that could be broken by the remote timeouts).
 of the network connections, that could be broken by the remote timeouts).