qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 3/9] replay: rewrite async event handling


From: Richard Henderson
Subject: Re: [PATCH 3/9] replay: rewrite async event handling
Date: Tue, 26 Apr 2022 11:54:56 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.8.0

On 4/22/22 04:53, Pavel Dovgalyuk wrote:
This patch decouples checkpoints and async events.
It was a tricky part of replay implementation. Now it becomes
much simpler and easier to maintain.

Signed-off-by: Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>

Looks ok, as far as I can follow.  With a couple of nits,

Acked-by: Richard Henderson <richard.henderson@linaro.org>

--- a/replay/replay-snapshot.c
+++ b/replay/replay-snapshot.c
@@ -61,7 +61,6 @@ static const VMStateDescription vmstate_replay = {
          VMSTATE_UINT64(block_request_id, ReplayState),
          VMSTATE_INT32(read_event_kind, ReplayState),
          VMSTATE_UINT64(read_event_id, ReplayState),
-        VMSTATE_INT32(read_event_checkpoint, ReplayState),
          VMSTATE_END_OF_LIST()
      },
  };

Bump version_id and minimum_version_id.

+void replay_async_events(void)
+{
+    static bool processing = false;
+    /* If we are already processing the events, recursion may occur
+        in case of incorrect implementation when HW event modifies timers.
+        Timer modification may invoke the icount warp, event processing,
+        and cause the recursion. */

Format multi-line comments per coding style:

  /*
   * block
   */


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]