Skip to content

rust-vmm/kvm

Repository files navigation

Build Status

kvm

The kvm workspace hosts libraries related to Rust bindings to the Kernel Virtual Machine (KVM). It currently consists of the following crates:

  • kvm-bindings -> Rust FFI bindings to KVM
  • kvm-ioctls -> Safe wrappers over the KVM API

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 x86_64, arm64 and riscv64.

# For running riscv64 tests, replace v47 with v47-riscv. This provides an
# emulated riscv64 environment on a x86_64 host.
docker run --device=/dev/kvm \
           -it \
           --security-opt seccomp=unconfined \
           --volume $(pwd)/kvm:/kvm \
           rustvmm/dev:v47
cd kvm-ioctls/
cargo test

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