Microsoft Hypervisor wrappers. This repository provides two crates which are mshv-bindings and mshv-ioctls. These crates will provide the APIs and definitions to create a VMM on Microsoft Hypervisor along with other rust-vmm crates.
The mshv-{ioctls, bindings} can be used on x86_64 only.
cargo build
Test (/dev/mshv requires root):
sudo -E ~/.cargo/bin/cargo test
Versioning follows semver. As mshv is currently pre-1.0, minor version increments indicate both new features and breaking changes.
Generally follow the guidelines here
mshv-ioctls
and mshv-bindings
version numbers stay in sync; they are identical.
- Update each Cargo.toml and add the relevant changes in each CHANGELOG.md
- Create PR for the release with the changes from (1)
- Once the PR is merged, create and push tags for the release:
$ ./scripts/tag_release.py --crate mshv-ioctls
Created tag: mshv-ioctls-v0.6.0
$ ./scripts/tag_release.py --crate mshv-bindings
Created tag: mshv-bindings-v0.6.0
- Check the tags look okay, and push them
git show mshv-ioctls-v0.6.0
git show mshv-bindings-v0.6.0
git push --tags
- Create a release on github
- Create a release on crates.io
- Bump the mshv version in upstream vfio
- Bump the mshv version in upstream Cloud Hypervisor