Repository navigation
docs(time-model): draft the upstream QEMU report for the replay-flush patch - #48
Merged
Merged
Conversation
… patch Add `poc/time-model/qemu-nosleep-replay-upstream.adoc`, the submission-ready report for the patch this repository carries: the subject and body a contributor would send, the problem, the mechanism and the exact ordering, the reproduction on stock and patched QEMU 11.1.0, the argument that the flush can move without disturbing checkpoint ordering, the counter-arguments to expect, the regression test proposed for QEMU's functional record/replay suite, and what this project's probe already covers that the upstream test should not duplicate. The reproduction was re-measured for the report: stock QEMU drops the input and writes no `EVENT_ASYNC_CHAR_READ` to the recording, the patched build delivers it in record and replay, and the `sleep=on` control is unchanged. Index the report from `docs/time-model.adoc` beside the patch and the evidence.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
poc/time-model/qemu-nosleep-replay-upstream.adocand indexes it fromdocs/time-model.adocbeside the patch and the evidence. Docs-only: no code, no build change, and the patch file is untouched.This is a draft for the owner to submit. Nothing has been sent to
qemu-devel@nongnu.organd no external issue was opened; theSigned-off-bytrailer is the submitter's to add.What the report contains
[PATCH] icount: flush replay async events with sleep=off), with the diff, which is identical topoc/time-model/qemu-nosleep-replay-flush.patch.-icount sleep=offis documented as giving "deterministic execution times from the guest point of view" and record/replay as recording and replaying serial port input, and the two do not compose.replay_async_events()is the only site that drains the replay asynchronous event queue, and its only caller returns before it whenicount_sleepis false.EVENT_ASYNC_CHAR_READto the recording, the patched build delivers it in record and replay, and thesleep=oncontrol is unchanged.tests/functional/x86_64/test_replay.py,X86ReplayonReplayKernelBase, the TuxBoot Buildroot assets it already uses), plus what this project's probe already covers that the upstream test should not duplicate.Verification
make check-rfdspasses.link:target in the new file and in the edited index resolves.asciidoctorwithout warnings.scripts/time-model-input-probe.shagainst the stock and patched QEMU binaries and a minimal QEMU-only form.