commit | b2ae5fabd3a30755f5d7d8eb5435d985753b6ec7 | [log] [tgz] |
---|---|---|
author | Dylan Reid <dgreid@chromium.org> | Sun May 21 10:58:08 2017 -0700 |
committer | chrome-bot <chrome-bot@chromium.org> | Mon May 29 21:49:05 2017 -0700 |
tree | 6211b1b22627cccf2fdb8d203a5e542d8449cf0c | |
parent | 1a07d1e8d01a6877185ce76d12fa5ccbfcdf6139 [diff] |
x86_64: Remove extra closure args and double-derefs A few places were passing a reference to a reference, which just gets compiled out anyways. Some other places where passing `|e| ErrorName(e)` as a closure when just `ErrorName` would be more succinct. Change-Id: Ic097a81b956ef82b29fc1a15196c245bee61c251 Signed-off-by: Dylan Reid <dgreid@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/510782 Reviewed-by: Zach Reizner <zachr@chromium.org>
This component, known as crosvm, runs untrusted operating systems along with virtualized devices. No actual hardware is emulated. This only runs VMs through the Linux's KVM interface. What makes crosvm unique is a focus on safety within the programming language and a sandbox around the virtual devices to protect the kernel from attack in case of an exploit in the devices.
The crosvm source code is organized into crates, each with their own unit tests. These crates are:
kvm-sys
low-level (mostly) auto-generated structures and constants for using KVMkvm
unsafe, low-level wrapper code for using kvm-syscrosvm
the top-level binary front-end for using crosvmCurrently there is no front-end, so the best you can do is run cargo test
in each crate.