diff options
author | Pavel Dovgalyuk <pavel.dovgalyuk@ispras.ru> | 2022-05-27 13:46:18 +0300 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2022-06-06 09:26:53 +0200 |
commit | 60618e2d77691e44bb78e23b2b0cf07b5c405e56 (patch) | |
tree | 992cfb9f63c5a9d8962cffcf678e8c6445993556 /include | |
parent | 75bbe5e5ec2867f098a31bfd553a1fb084289cc2 (diff) | |
download | qemu-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.h | 9 |
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 */ |