aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorPavel Dovgalyuk <pavel.dovgalyuk@ispras.ru>2022-05-27 13:46:18 +0300
committerPaolo Bonzini <pbonzini@redhat.com>2022-06-06 09:26:53 +0200
commit60618e2d77691e44bb78e23b2b0cf07b5c405e56 (patch)
tree992cfb9f63c5a9d8962cffcf678e8c6445993556 /include
parent75bbe5e5ec2867f098a31bfd553a1fb084289cc2 (diff)
downloadqemu-60618e2d77691e44bb78e23b2b0cf07b5c405e56.zip
qemu-60618e2d77691e44bb78e23b2b0cf07b5c405e56.tar.gz
qemu-60618e2d77691e44bb78e23b2b0cf07b5c405e56.tar.bz2
replay: rewrite async event handling
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> Acked-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <165364837856.688121.8785039478408995979.stgit@pasha-ThinkPad-X280> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'include')
-rw-r--r--include/sysemu/replay.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/include/sysemu/replay.h b/include/sysemu/replay.h
index 0f3b0f7..73dee9c 100644
--- a/include/sysemu/replay.h
+++ b/include/sysemu/replay.h
@@ -160,9 +160,14 @@ void replay_shutdown_request(ShutdownCause cause);
Returns 0 in PLAY mode if checkpoint was not found.
Returns 1 in all other cases. */
bool replay_checkpoint(ReplayCheckpoint checkpoint);
-/*! Used to determine that checkpoint is pending.
+/*! Used to determine that checkpoint or async event is pending.
Does not proceed to the next event in the log. */
-bool replay_has_checkpoint(void);
+bool replay_has_event(void);
+/*
+ * Processes the async events added to the queue (while recording)
+ * or reads the events from the file (while replaying).
+ */
+void replay_async_events(void);
/* Asynchronous events queue */