-
Notifications
You must be signed in to change notification settings - Fork 157
petri: add support for Hyper-V + SCSI-to-SCSI relay, use it #2171
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
petri: add support for Hyper-V + SCSI-to-SCSI relay, use it #2171
Conversation
Add a test that uses this.
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
Adds infrastructure to configure and update VTL2 settings for Hyper-V VMs, enabling SCSI-to-SCSI relay and a corresponding integration test. Key changes introduce a new hyperv_test macro, extend the Hyper-V backend to set/query VTL2 settings, return VSID information when adding SCSI controllers, and add a test exercising vmbus relay with a VTL2-backed SCSI disk.
- Add Hyper-V VTL2 settings plumbing (set/get, PowerShell support, runtime caching).
- Extend add_scsi_controller to return (controller_number, VSID) and propagate through backend.
- Introduce storvsp_hyperv test using new hyperv_test macro and VTL2 storage relay setup.
Reviewed Changes
Copilot reviewed 7 out of 8 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| vmm_tests/tests/tests/x86_64/storage.rs | Adds Hyper-V SCSI relay test and supporting imports. |
| vmm_tests/Cargo.toml | Adds disk_vhd1 dependency for test VHD creation. |
| vmm_test_macros/src/lib.rs | Introduces hyperv_test attribute macro. |
| petri/src/vm/hyperv/vm.rs | Returns VSID from add_scsi_controller, adds setter for base VTL2 settings. |
| petri/src/vm/hyperv/powershell.rs | Updates SCSI controller addition to return VSID; adds run_set_base_vtl2_settings. |
| petri/src/vm/hyperv/mod.rs | Adds HyperVPetriConfig, VTL2 settings handling, public runtime APIs. |
| petri/src/vm/hyperv/hyperv.psm1 | Adds PowerShell helpers for SCSI controller properties and setting VTL2 settings. |
|
seems like it doesn't work because it's trying to hot-add the controller? |
Right. I admit I'm letting CI do my testing for me since I'm on a machine that is too small to do this efficiently; will clean this up locally. |
In doing #2137, I realized that I had done almost all the work required to do scsi-to-scsi relay for the Hyper-V backend.
petri:
hyperv_testmacro, so that the test can get access to the Hyper-V Petri backend (likeopenvmm_test).vmm_tests: