-
Notifications
You must be signed in to change notification settings - Fork 138
petri: hyper-v reset support #1916
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds support for guest resets in the Hyper-V petri backend, enabling Hyper-V to handle VM reset operations automatically. The implementation refactors framebuffer code to be compatible with the reset feature and enables reboot tests that were previously only possible with OpenVMM.
- Refactors VM halt handling to distinguish between different halt reasons (PowerOff, Reset, TripleFault, etc.)
- Adds automatic reset handling for VMs that require initial reboots
- Enables Hyper-V reboot tests across multiple test configurations
Reviewed Changes
Copilot reviewed 16 out of 16 changed files in this pull request and generated 3 comments.
Show a summary per file
File | Description |
---|---|
vmm_tests/vmm_tests/tests/tests/*.rs | Updates test assertions to use new PetriHaltReason enum instead of HaltReason |
vmm_tests/petri_artifacts_vmm_test/src/lib.rs | Adds guest quirks for VMs requiring initial reboots |
petri/src/vm/mod.rs | Introduces PetriHaltReason enum and refactors halt handling with reset support |
petri/src/vm/openvmm/*.rs | Updates OpenVMM backend to support new halt reason handling |
petri/src/vm/hyperv/*.rs | Implements Hyper-V reset support with halt event monitoring and framebuffer refactoring |
petri/petri_artifacts_common/src/lib.rs | Adds initial_reboot_required quirk to guest configuration |
470b2e7
to
c1f38cc
Compare
c1f38cc
to
ac95724
Compare
Add support for guest resets for the Hyper-V petri backend. Refactors some of the framebuffer code to make this possible. Enables Hyper-V reboot tests that are now possible due to this change. Also includes some other minor Petri refactoring to move more logic into backend-agnostic code.
Add support for guest resets for the Hyper-V petri backend. Refactors some of the framebuffer code to make this possible. Enables Hyper-V reboot tests that are now possible due to this change. Also includes some other minor Petri refactoring to move more logic into backend-agnostic code.