Repository navigation
[DO NOT REVIEW] vmm_tests: run the KVP IC test on Windows Server 2025 (port of #4803) - #4816
Merged
Pedro Henrique Penna (ppenna) merged 2 commits intoOct 30, 2026
Conversation
Pedro Henrique Penna (ppenna)
force-pushed
the
copilot/vmm-tests-kvp-ic-server-2025
branch
from
October 30, 2026 06:09
b7d7a0b to
6b409bd
Compare
Pedro Henrique Penna (ppenna)
added a commit
to microsoft/nvx
that referenced
this pull request
Oct 30, 2026
Pin microsoft/openvmm#4816 at 6b409bd1035678a32faac3761c36e2219f7f8000, two commits on bcfc47cff, the previous pin and the head of feature/microvm/dev since microsoft/openvmm#4818 merged. OpenVMM's KVP IC test booted Windows Server 2022, whose COM activation race can lose WMI's server-registration notification, so that the guest answers the test's IP information request with 0x80080005 after 120 s. The race failed the test in the WHP run of dev at c938ab2. The first commit ports microsoft/openvmm#4803 unchanged and moves the test to Windows Server 2025, which has the fix. The second stages the Server 2025 image for the check-in gates' x64 Linux KVM job. It excludes the test from the MSHV job, where Server 2025's required initial reset consistently fails with HvCallSetVpRegisters returning Invalid parameter. The test's name holds its image, so it is now multiarch::ic::openvmm_uefi_x64_windows_datacenter_core_2025_x64_kvp_ic. Rename it in OPENVMM_WHP_TESTS, and plan the WHP shards again with an estimate of 57.4 s for it until CI's reports measure it: NVX's median of 34.0 s on Server 2022 times 1.69, the mean ratio of the test's durations on Server 2025 and 2022 on upstream's x64-windows-intel and x64-windows-amd runners. The plan moves three other tests to balance the shards, which take 128.4 and 128.3 s instead of 119.8 and 123.9 s, so ci.md now gives the latter as the first plan's. The KVM and MSHV filters select every test whose name contains openvmm and left out Windows guests only by windows_datacenter_core_2022_x64, so the renamed test would have joined them. Leave out every Windows Server Datacenter Core test instead, and test that through the substring form of nextest's test(), which the filters use. The protocol vectors and built-in CPU profiles that nvx-rs copies are unchanged. Refs #1035 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pedro Henrique Penna (ppenna)
added a commit
to microsoft/nvx
that referenced
this pull request
Oct 30, 2026
… roadmap Record the two commits that the previous commit pins as positions 368 and 369 of the microVM chain, and move the NVX pin to 6b409bd10. Position 368 makes the change of microsoft/openvmm#4803 unchanged: the KVP IC test boots Windows Server 2025 instead of 2022, whose COM activation race can fail the guest's answer to the test's IP information request. Position 369 stages the Server 2025 image for the check-in gates' x64 Linux KVM job. It excludes the test and its image from the MSHV job, where Server 2025's required initial reset fails. A rebase onto an upstream main that includes microsoft/openvmm#4803 drops position 368 and reconciles position 369 with upstream's changes for those jobs; say so in the table's remarks. The pin is now 212 commits past the mapped tip. Keep the re-checked chain in the scope: microsoft/openvmm#4807 merged positions 360 and 361, microsoft/openvmm#4804 merged positions 362-365, and microsoft/openvmm#4818 merged positions 366 and 367. Position 367, bcfc47cff, is therefore the head of feature/microvm/dev, and microsoft/openvmm#4816 proposes positions 368 and 369. Refs #1035 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pedro Henrique Penna (ppenna)
added a commit
to microsoft/nvx
that referenced
this pull request
Oct 30, 2026
Pin microsoft/openvmm#4816 at 6b409bd1035678a32faac3761c36e2219f7f8000, two commits on bcfc47cff, the previous pin and the head of feature/microvm/dev since microsoft/openvmm#4818 merged. OpenVMM's KVP IC test booted Windows Server 2022, whose COM activation race can lose WMI's server-registration notification, so that the guest answers the test's IP information request with 0x80080005 after 120 s. The race failed the test in the WHP run of dev at c938ab2. The first commit ports microsoft/openvmm#4803 unchanged and moves the test to Windows Server 2025, which has the fix. The second stages the Server 2025 image for the check-in gates' x64 Linux KVM job. It excludes the test from the MSHV job, where Server 2025's required initial reset consistently fails with HvCallSetVpRegisters returning Invalid parameter. The test's name holds its image, so it is now multiarch::ic::openvmm_uefi_x64_windows_datacenter_core_2025_x64_kvp_ic. Rename it in OPENVMM_WHP_TESTS, and plan the WHP shards again with an estimate of 57.4 s for it until CI's reports measure it: NVX's median of 34.0 s on Server 2022 times 1.69, the mean ratio of the test's durations on Server 2025 and 2022 on upstream's x64-windows-intel and x64-windows-amd runners. The plan moves three other tests to balance the shards, which take 128.4 and 128.3 s instead of 119.8 and 123.9 s, so ci.md now gives the latter as the first plan's. The KVM and MSHV filters select every test whose name contains openvmm and left out Windows guests only by windows_datacenter_core_2022_x64, so the renamed test would have joined them. Leave out every Windows Server Datacenter Core test instead, and test that through the substring form of nextest's test(), which the filters use. The protocol vectors and built-in CPU profiles that nvx-rs copies are unchanged. Refs #1035 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pedro Henrique Penna (ppenna)
added a commit
to microsoft/nvx
that referenced
this pull request
Oct 30, 2026
… roadmap Record the two commits that the previous commit pins as positions 368 and 369 of the microVM chain, and move the NVX pin to 6b409bd10. Position 368 makes the change of microsoft/openvmm#4803 unchanged: the KVP IC test boots Windows Server 2025 instead of 2022, whose COM activation race can fail the guest's answer to the test's IP information request. Position 369 stages the Server 2025 image for the check-in gates' x64 Linux KVM job. It excludes the test and its image from the MSHV job, where Server 2025's required initial reset fails. A rebase onto an upstream main that includes microsoft/openvmm#4803 drops position 368 and reconciles position 369 with upstream's changes for those jobs; say so in the table's remarks. The pin is now 212 commits past the mapped tip. Keep the re-checked chain in the scope: microsoft/openvmm#4807 merged positions 360 and 361, microsoft/openvmm#4804 merged positions 362-365, and microsoft/openvmm#4818 merged positions 366 and 367. Position 367, bcfc47cff, is therefore the head of feature/microvm/dev, and microsoft/openvmm#4816 proposes positions 368 and 369. Refs #1035 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pedro Henrique Penna (ppenna)
added a commit
to microsoft/nvx
that referenced
this pull request
Oct 30, 2026
… roadmap Record the two commits that the previous commit pins as positions 368 and 369 of the microVM chain, and move the NVX pin to 6b409bd10. Position 368 makes the change of microsoft/openvmm#4803 unchanged: the KVP IC test boots Windows Server 2025 instead of 2022, whose COM activation race can fail the guest's answer to the test's IP information request. Position 369 stages the Server 2025 image for the check-in gates' x64 Linux KVM job. It excludes the test and its image from the MSHV job, where Server 2025's required initial reset fails. A rebase onto an upstream main that includes microsoft/openvmm#4803 drops position 368 and reconciles position 369 with upstream's changes for those jobs; say so in the table's remarks. The pin is now 212 commits past the mapped tip. Keep the re-checked chain in the scope: microsoft/openvmm#4807 merged positions 360 and 361, microsoft/openvmm#4804 merged positions 362-365, and microsoft/openvmm#4818 merged positions 366 and 367. Position 367, bcfc47cff, is therefore the head of feature/microvm/dev, and microsoft/openvmm#4816 proposes positions 368 and 369. Refs #1035 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pedro Henrique Penna (ppenna)
force-pushed
the
copilot/vmm-tests-kvp-ic-server-2025
branch
from
October 30, 2026 17:24
6b409bd to
549a215
Compare
Pedro Henrique Penna (ppenna)
added a commit
to microsoft/nvx
that referenced
this pull request
Oct 30, 2026
Pin microsoft/openvmm#4816 at 549a215121f1e691b34234c6ee39a1234fe9ff80, two commits on 5e0ab772e, the previous pin and the head of feature/microvm/dev since microsoft/openvmm#4820 merged. OpenVMM's KVP IC test booted Windows Server 2022, whose COM activation race can lose WMI's server-registration notification, so that the guest answers the test's IP information request with 0x80080005 after 120 s. The race failed the test in the WHP run of dev at c938ab2. The first commit ports microsoft/openvmm#4803 unchanged and moves the test to Windows Server 2025, which has the fix. The second stages the Server 2025 image for the check-in gates' x64 Linux KVM job. It excludes the test from the MSHV job, where Server 2025's required initial reset consistently fails with HvCallSetVpRegisters returning Invalid parameter. The test's name holds its image, so it is now multiarch::ic::openvmm_uefi_x64_windows_datacenter_core_2025_x64_kvp_ic. Rename it in OPENVMM_WHP_TESTS, and plan the WHP shards again with an estimate of 57.4 s for it until CI's reports measure it: NVX's median of 34.0 s on Server 2022 times 1.69, the mean ratio of the test's durations on Server 2025 and 2022 on upstream's x64-windows-intel and x64-windows-amd runners. The plan moves three other tests to balance the shards, which take 128.4 and 128.3 s instead of 119.8 and 123.9 s, so ci.md now gives the latter as the first plan's. The KVM and MSHV filters select every test whose name contains openvmm and left out Windows guests only by windows_datacenter_core_2022_x64, so the renamed test would have joined them. Leave out every Windows Server Datacenter Core test instead, and test that through the substring form of nextest's test(), which the filters use. The protocol vectors and built-in CPU profiles that nvx-rs copies are unchanged. Refs #1035 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pedro Henrique Penna (ppenna)
added a commit
to microsoft/nvx
that referenced
this pull request
Oct 30, 2026
… roadmap Record the two commits that the previous commit pins as positions 370 and 371 of the microVM chain, and move the NVX pin to 549a21512. Position 370 makes the change of microsoft/openvmm#4803 unchanged: the KVP IC test boots Windows Server 2025 instead of 2022, whose COM activation race can fail the guest's answer to the test's IP information request. Position 371 stages the Server 2025 image for the check-in gates' x64 Linux KVM job. It excludes the test and its image from the MSHV job, where Server 2025's required initial reset fails. A rebase onto an upstream main that includes microsoft/openvmm#4803 drops position 370 and reconciles position 371 with upstream's changes for those jobs; say so in the table's remarks. The pin is now 214 commits past the mapped tip. Keep the re-checked chain in the scope: microsoft/openvmm#4807 merged positions 360 and 361, microsoft/openvmm#4804 merged positions 362-365, microsoft/openvmm#4818 merged positions 366 and 367, and microsoft/openvmm#4820 merged positions 368 and 369. Position 369, 5e0ab772e, is therefore the head of feature/microvm/dev, and microsoft/openvmm#4816 proposes positions 370 and 371. Refs #1035 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Move the KVP integration test to Windows Server 2025, which includes a fix for a Windows COM activation race. On Server 2022, this race can lose WMI's server-registration notification, causing GET_IP_INFO to fail after 120 seconds with 0x80080005. Port #4803 to feature/microvm/dev unchanged, for microsoft/nvx#1035, where the race failed NVX's WHP run of the test. (cherry picked from commit a738912) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Since the previous commit, a port of #4803, the KVP IC test boots Windows Server 2025 instead of 2022. The x64-linux-amd-kvm and x64-linux-intel-mshv jobs selected it, but downloaded only the 2022 image, so both failed to resolve its artifacts in #4803. Download the 2025 image for the KVM job, where the moved test passes. On MSHV, Server 2025's required initial reset consistently fails while the partition restores reset state: HvCallSetVpRegisters returns Invalid parameter. Exclude that test and its image there; KVM and the Windows-host jobs retain coverage. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pedro Henrique Penna (ppenna)
force-pushed
the
copilot/vmm-tests-kvp-ic-server-2025
branch
from
October 30, 2026 21:47
549a215 to
3d7512a
Compare
Pedro Henrique Penna (ppenna)
added a commit
to microsoft/nvx
that referenced
this pull request
Oct 30, 2026
Pin microsoft/openvmm#4816 at 3d7512af653717aa9123595e993a56cb8587106a, two commits on b58040ee4, the previous pin and the head of feature/microvm/dev since microsoft/openvmm#4823 merged. OpenVMM's KVP IC test booted Windows Server 2022, whose COM activation race can lose WMI's server-registration notification, so that the guest answers the test's IP information request with 0x80080005 after 120 s. The race failed the test in the WHP run of dev at c938ab2. The first commit ports microsoft/openvmm#4803 unchanged and moves the test to Windows Server 2025, which has the fix. The second stages the Server 2025 image for the check-in gates' x64 Linux KVM job. It excludes the test from the MSHV job, where Server 2025's required initial reset consistently fails with HvCallSetVpRegisters returning Invalid parameter. The test's name holds its image, so it is now multiarch::ic::openvmm_uefi_x64_windows_datacenter_core_2025_x64_kvp_ic. Rename it in OPENVMM_WHP_TESTS, and plan the WHP shards again with an estimate of 57.4 s for it until CI's reports measure it: NVX's median of 34.0 s on Server 2022 times 1.69, the mean ratio of the test's durations on Server 2025 and 2022 on upstream's x64-windows-intel and x64-windows-amd runners. The plan moves three other tests to balance the shards, which take 128.4 and 128.3 s instead of 119.8 and 123.9 s, so ci.md now gives the latter as the first plan's. The KVM and MSHV filters select every test whose name contains openvmm and left out Windows guests only by windows_datacenter_core_2022_x64, so the renamed test would have joined them. Leave out every Windows Server Datacenter Core test instead, and test that through the substring form of nextest's test(), which the filters use. The protocol vectors and built-in CPU profiles that nvx-rs copies are unchanged. Refs #1035 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pedro Henrique Penna (ppenna)
added a commit
to microsoft/nvx
that referenced
this pull request
Oct 30, 2026
… roadmap Record the two commits that the previous commit pins as positions 371 and 372 of the microVM chain, and move the NVX pin to 3d7512af6. Position 371 makes the change of microsoft/openvmm#4803 unchanged: the KVP IC test boots Windows Server 2025 instead of 2022, whose COM activation race can fail the guest's answer to the test's IP information request. Position 372 stages the Server 2025 image for the check-in gates' x64 Linux KVM job. It excludes the test and its image from the MSHV job, where Server 2025's required initial reset fails. A rebase onto an upstream main that includes microsoft/openvmm#4803 drops position 371 and reconciles position 372 with upstream's changes for those jobs; say so in the table's remarks. The pin is now 215 commits past the mapped tip. Keep the re-checked chain in the scope: microsoft/openvmm#4823 merged position 370, so position 370, b58040ee4, is now the head of feature/microvm/dev, and microsoft/openvmm#4816 proposes positions 371 and 372. Refs #1035 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pedro Henrique Penna (ppenna)
merged commit Oct 30, 2026
3d7512a
into
feature/microvm/dev
74 checks passed
This was referenced Oct 31, 2026
Pedro Henrique Penna (ppenna)
added a commit
to microsoft/nvx
that referenced
this pull request
Oct 31, 2026
Record the six commits that the first commit of this series pins, which microsoft/openvmm#4830 proposes, as positions 373-378 of the microVM chain, and move the NVX pin to 858b2f93a. Positions 373-378 move NVX's time ABI to version 2: the shared host TSC bracket, the host OS's discipline of host UTC, the publication of host UTC paired with the guest TSC and its correction, the guest TSC's offset on every backend, the version-2 time sample and restore packet 5, and the Guide's description. They change the time-ABI backends, portb device, restore packet, and VM worker that positions 159-269 added, so they follow those positions upstream: replayed on upstream main, they conflict where those files are missing. Position 377 also adapts petri's microVM configuration from PR15 and the ttrpc microVM test from PR25. Position 378 names restore packet 5 in the CLI reference, in another part of it than the host-loopback rule that position 370 adds. The six commits are directly on 3d7512af6, position 372 and the current head of feature/microvm/dev since microsoft/openvmm#4816 merged positions 371 and 372, on position 370, which microsoft/openvmm#4823 merged. Update the scope, physical DAG, after-tip count and table, and remarks. The pin is 221 commits past the mapped tip. Part of #1009 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pedro Henrique Penna (ppenna)
added a commit
to microsoft/nvx
that referenced
this pull request
Oct 31, 2026
Record the six commits that the first commit of this series pins, which microsoft/openvmm#4830 proposes, as positions 373-378 of the microVM chain, and move the NVX pin to 858b2f93a. Positions 373-378 move NVX's time ABI to version 2: the shared host TSC bracket, the host OS's discipline of host UTC, the publication of host UTC paired with the guest TSC and its correction, the guest TSC's offset on every backend, the version-2 time sample and restore packet 5, and the Guide's description. They change the time-ABI backends, portb device, restore packet, and VM worker that positions 159-269 added, so they follow those positions upstream: replayed on upstream main, they conflict where those files are missing. Position 377 also adapts petri's microVM configuration from PR15 and the ttrpc microVM test from PR25. Position 378 names restore packet 5 in the CLI reference, in another part of it than the host-loopback rule that position 370 adds. The six commits are directly on 3d7512af6, position 372 and the current head of feature/microvm/dev since microsoft/openvmm#4816 merged positions 371 and 372, on position 370, which microsoft/openvmm#4823 merged. Update the scope, physical DAG, after-tip count and table, and remarks. The pin is 221 commits past the mapped tip. Part of #1009 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pedro Henrique Penna (ppenna)
added a commit
to microsoft/nvx
that referenced
this pull request
Oct 31, 2026
Record the six commits that the first commit of this series pins, which microsoft/openvmm#4830 proposes, as positions 373-378 of the microVM chain, and move the NVX pin to 858b2f93a. Positions 373-378 move NVX's time ABI to version 2: the shared host TSC bracket, the host OS's discipline of host UTC, the publication of host UTC paired with the guest TSC and its correction, the guest TSC's offset on every backend, the version-2 time sample and restore packet 5, and the Guide's description. They change the time-ABI backends, portb device, restore packet, and VM worker that positions 159-269 added, so they follow those positions upstream: replayed on upstream main, they conflict where those files are missing. Position 377 also adapts petri's microVM configuration from PR15 and the ttrpc microVM test from PR25. Position 378 names restore packet 5 in the CLI reference, in another part of it than the host-loopback rule that position 370 adds. The six commits are directly on 3d7512af6, position 372 and the current head of feature/microvm/dev since microsoft/openvmm#4816 merged positions 371 and 372, on position 370, which microsoft/openvmm#4823 merged. Update the scope, physical DAG, after-tip count and table, and remarks. The pin is 221 commits past the mapped tip. Part of #1009 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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.
Ports #4803 to
feature/microvm/dev, for microsoft/nvx#1035: the KVP IC VMM test boots Windows Server 2025 instead of Windows Server 2022, whose COM activation race can lose WMI's server-registration notification, so that the guest answers the test'sGET_IP_INFOwith0x80080005after 120 seconds. It stages the Server 2025 image for the x64 Linux KVM job, which keeps running the test, and excludes the test from the x64 Linux MSHV job, where Server 2025's required initial reset is unsupported.Based on
feature/microvm/dev. This branch is two commits directly onb58040ee4, the head offeature/microvm/devsince #4823 merged, which microsoft/nvx#1049 brings into NVX'sdev.Why
NVX runs the KVP IC test on its WHP runners. On 2026-10-30, it failed a
devrun of NVX withKVP error: 80080005, 120.2 seconds after the test began to wait for the KVP IC, and the KVP channel's ring counters at the failure show that the guest answeredGetIpInfowith that status. It is the only failure in 217 NVX runs of the test since 2026-10-27, but it turns NVX's required check red. #4803 diagnosed the same failure upstream and moves the test to Windows Server 2025, which has the fix. It is approved but not merged, so this ports it now.Port of #4803 (
2dec9edcb)A cherry-pick of #4803's only commit,
a73891221, with Steven Malis as its author. The test's image changes fromwindows_datacenter_core_2022_x64towindows_datacenter_core_2025_x64, so its name becomesmultiarch::ic::openvmm_uefi_x64_windows_datacenter_core_2025_x64_kvp_ic. Both commits have the patch ID296ebafd9a4e, andic.rsafter this commit is #4803's, byte for byte. The message adds #4803's description, the port's purpose, and the cherry-pick trailer. Once #4803 lands onmain, a rebase of the microVM chain onto it drops this commit.Linux KVM image (
3d7512af6)Upstream's
x64-linux-amd-kvmandx64-linux-intel-mshvjobs selected the moved test but downloaded only the Server 2022 image, so #4803's Linux jobs failed before running it, unable to resolveGEN2_WINDOWS_DATA_CENTER_CORE2025_X64. This stages the Server 2025 image for KVM, where the test passed in 18.552 seconds.MSHV reaches the moved test but cannot complete Server 2025's required initial reset: two runs on different workers failed at the same point with
HvCallSetVpRegisters error: Invalid parameter, while the Server 2022 test passed on the same base. The MSHV job therefore excludes this test and does not download its image; KVM and the Windows-host jobs retain coverage.cargo xflowey regenchanges no generated pipeline.Validation
cargo xflowey restore-packages;cargo check --locked,cargo clippy --locked --all-targets -- -D warnings, andcargo doc --locked --no-depsforvmm_testsandflowey_hvlite;cargo nextest run --locked --profile agent -p flowey_hvlite(3 passed);cargo xflowey regen(no generated changes); andcargo xtask fmt --fix(clean).vmm_testsnextest binary requires the staged CI images and hypervisors; exact VMM-test coverage is supplied by the pull-request matrix.x64-windows-intelin 44.3 seconds and onx64-windows-amdin 36.3, wheremain's runs take 23.1-25.5 seconds on Server 2022.x64-windows-intel-tdxfailed aftervmms.execrashed andx64-windows-amd-snpfailed one unrelated OpenHCL boot with bad diagnostic-page hashes; both passed the failed-job rerun. The moved test passed on x64 Linux KVM, while x64 Linux MSHV reproduced the reset failure twice and motivated the filter above.5e0ab772eontob58040ee4.git range-diffshows both commits unchanged, the port keeps vmm_tests: Fix kvp test flakiness by updating windows version #4803's patch ID, and the head's tree is that of the merge ofb58040ee4with the previous head,549a21512: [DO NOT REVIEW] microVM: reject explicit host-loopback access on a /30 IPv4 network #4823 and this branch change disjoint files.Previous exact-head OpenVMM run 41012439247, attempt 4, passed at
6b409bd1035678a32faac3761c36e2219f7f8000. Follow-up exact-head OpenVMM run 41098528203, attempt 4, passed at549a215121f1e691b34234c6ee39a1234fe9ff80. Attempts 1-3 each hit different unrelated SNP VM-start flakes; attempt 4 passed all 98 SNP tests. The Linux KVM and MSHV jobs both passed, with MSHV applying the exact KVP exclusion above. Rebased exact-head OpenVMM run 41133653556, attempt 1, passed at3d7512af653717aa9123595e993a56cb8587106a.Part of microsoft/nvx#1035.