Add Intel Virtualized PCIE device#5108
Closed
CookieComputing wants to merge 3 commits into
Closed
Conversation
Cloud hypervisor currently uses an Intel virtualized PCIE host device, so teach stage0 to recognize it so that stage0 users can also use a new VMM.
Contributor
Author
|
Collaborator
|
Thank you. Imported as 07ddf17 |
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.
We are adding support for stage0 in Cloud Hypervisor and found that we were busy polling for a PCI device on the bridge... Eventually we discovered that Cloud Hypervisor actually has its own
PciConfigurationhere: https://github.com/cloud-hypervisor/cloud-hypervisor/blob/8248650e799457fee3068b0bf3b54ffcade4bce1/pci/src/bus.rs#L66-L82Teach Stage0 about this so that we can init the machine with this new type
Changes
mmio64_hole()method to a helper method which introduces anaddr_size--This is solely just so that we can customize what arg is passedIntelVirtualPcieHostmachine typeTests
I also launched a SEV-SNP VM using Cloud hypervisor. We're in the midst of adding this support, so please look at the steps in cloud-hypervisor/cloud-hypervisor#7942 (comment) for reproducing the binaries used for testing.
I also used the
buildigvmbinary from https://gitlab.com/qemu-project/buildigvm, which was checked in recentlystage0_pcie.txt