Skip to content
This repository has been archived by the owner on Apr 28, 2021. It is now read-only.
forked from rust-vmm/kvm

DEPRECATED fork of rust-vmm/kvm-ioctls

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

firecracker-microvm/kvm-ioctls

 
 

No Maintenance Intended

DEPRECATED

This is no longer supported, please consider using upstream https://github.com/rust-vmm/kvm-ioctls directly.

kvm-ioctls

The kvm-ioctls crate provides safe wrappers over the KVM API, a set of ioctls used for creating and configuring Virtual Machines (VMs) on Linux. The ioctls are accessible through four structures:

  • Kvm - wrappers over system ioctls
  • VmFd - wrappers over VM ioctls
  • VcpuFd - wrappers over vCPU ioctls
  • DeviceFd - wrappers over device ioctls

For further details check the KVM API as well as the code documentation.

Supported Platforms

The kvm-ioctls can be used on x86_64 and aarch64. Right now the aarch64 support is considered experimental. For a production ready version, please check the progress in the corresponding GitHub issue.

Running the tests

Our Continuous Integration (CI) pipeline is implemented on top of Buildkite. For the complete list of tests, check our CI pipeline.

Each individual test runs in a container. To reproduce a test locally, you can use the dev-container on both x86 and arm64.

docker run --device=/dev/kvm \
           -it \
           --security-opt seccomp=unconfined \
           --volume $(pwd)/kvm-ioctls:/kvm-ioctls \
           rustvmm/dev:v5
cd kvm-ioctls/
cargo test

For more details about the integration tests that are run for kvm-ioctls, check the rust-vmm-ci readme.

About

DEPRECATED fork of rust-vmm/kvm-ioctls

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 100.0%