No description
Find a file
Keiichi Watanabe 92d8d5f8a6 vmm_vhost: vhost_user: Implement DataInit for message structs
Implement DataInit for message structs and use `.as_slice()` when
sending them.
This change makes `trait Req` require `Send + Sync`. This is needed to
implement `DataInit` for `VhostUserMsgHeader<R> where `R: Req`.

BUG=b:204720423
TEST=cargo test --all-features

Change-Id: Icd32861b8d4fef16606a35b387c35271aebe061a
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3268265
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Chirantan Ekbote <chirantan@chromium.org>
2021-11-10 08:42:16 +00:00
.devcontainer Add new dev container and install-deps scripts 2021-10-15 22:12:02 +00:00
.github github: Don't use 80-char rule in pull_request_template 2021-10-29 16:19:21 +00:00
aarch64 linux.rs: replace Error enum with anyhow 2021-11-05 23:06:09 +00:00
acpi_tables Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
arch Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
bin Deprecate old dev tooling scripts 2021-11-02 22:23:03 +00:00
bit_field crosvm: fix needless_borrow clippy warning 2021-08-25 23:02:23 +00:00
ci/kokoro ci: kokoro: Run mdbook command 2021-11-01 19:26:51 +00:00
common vm-memory: mlock2(MLOCK_ONFAULT) guest memory for protected VMs 2021-11-09 18:59:20 +00:00
crosvm-fuzz Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
crosvm_plugin Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
devices Revert "virtio: video: reject resources with more than one entry" 2021-11-08 03:57:27 +00:00
disk Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
docs/book crosvm: Sprinkle notes on API search. 2021-11-08 07:21:20 +00:00
fuse Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
gpu_display Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
hypervisor aarch64: Provide the maximum supported IPA size as the machine type 2021-11-01 14:24:27 +00:00
integration_tests crosvm: switch to upstream tempfile crate 2021-10-11 18:35:55 +00:00
kernel_cmdline kernel_cmdline: convert to ThisError and sort 2021-09-02 21:00:23 +00:00
kernel_loader Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
kvm aarch64: Provide the maximum supported IPA size as the machine type 2021-11-01 14:24:27 +00:00
kvm_sys Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
libcras_stub Integrate audio_streams into crosvm, add stub libcras implementation 2021-07-29 05:59:42 +00:00
libcrosvm_control Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
libvda Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
linux_input_sys Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
logo README: Use PNG logo image 2021-10-29 01:56:23 +00:00
net_sys Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
net_util Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
power_monitor Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
protos Remove trunks proto from crosvm build 2021-07-31 03:01:21 +00:00
qcow_utils Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
resources Reland "Devices: Allocate non pci bar mmio at top of HighMmio" 2021-11-02 22:08:54 +00:00
rutabaga_gfx rutabaga_gfx: export rutabaga 2021-11-02 15:53:02 +00:00
seccomp wl: add support for host fences 2021-11-04 01:24:37 +00:00
src vm-memory: mlock2(MLOCK_ONFAULT) guest memory for protected VMs 2021-11-09 18:59:20 +00:00
system_api_stub system_api_stub: use 2018 edition of Rust 2021-09-09 06:42:46 +00:00
tests tests/plugins: replace rand_ish use with a counter 2021-07-21 23:28:27 +00:00
third_party vmm_vhost: vhost_user: Implement DataInit for message structs 2021-11-10 08:42:16 +00:00
tools third_party/vmm_vhost: Add vmm_vhost code into /third_party/ 2021-11-10 08:42:11 +00:00
tpm2 crosvm: add license blurb to all files 2019-04-24 15:51:38 -07:00
tpm2-sys Uprev all submodules 2021-10-19 19:12:53 +00:00
usb_sys Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
usb_util Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
vfio_sys Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
vhost Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
virtio_sys Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
vm_control Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
vm_memory vm-memory: mlock2(MLOCK_ONFAULT) guest memory for protected VMs 2021-11-09 18:59:20 +00:00
x86_64 linux.rs: replace Error enum with anyhow 2021-11-05 23:06:09 +00:00
.dockerignore add docker supported builds and tests 2019-05-15 13:36:19 -07:00
.gitignore Add test runner ./tools/run_tests 2021-10-15 22:12:03 +00:00
.gitmodules Switch to submodules based workflow 2021-08-05 18:32:32 +00:00
.rustfmt.toml rustfmt.toml: Use 2018 edition 2021-02-10 11:54:06 +00:00
ARCHITECTURE.md ARCHITECTURE: Update code map 2021-09-30 11:44:32 +00:00
Cargo.toml third_party/vmm_vhost: Add vmm_vhost code into /third_party/ 2021-11-10 08:42:11 +00:00
CONTRIBUTING.md CONTRIBUTING: Add more instruction on use of mdbook command 2021-11-01 15:32:26 +00:00
LICENSE add LICENSE and README 2017-04-17 14:06:21 -07:00
navbar.md navbar: Update navbar contents 2021-10-29 01:56:24 +00:00
OWNERS OWNERS: Remove tjeznach 2021-10-26 16:58:37 +00:00
README.md crosvm: Sprinkle notes on API search. 2021-11-08 07:21:20 +00:00
run_tests Deprecate old dev tooling scripts 2021-11-02 22:23:03 +00:00
rust-toolchain Uprev to rust 1.55.0 2021-10-19 19:12:52 +00:00
setup_cros_cargo.sh Deprecate old dev tooling scripts 2021-11-02 22:23:03 +00:00
test_all Deprecate old dev tooling scripts 2021-11-02 22:23:03 +00:00
unblocked_terms.txt unblocked_terms.txt: clean up trivial cases 2021-04-26 20:32:38 +00:00

crosvm - The Chrome OS Virtual Machine Monitor

crosvm is a virtual machine monitor (VMM) based on Linuxs KVM hypervisor, with a focus on simplicity, security, and speed. crosvm is intended to run Linux guests, originally as a security boundary for running native applications on the Chrome OS platform. Compared to QEMU, crosvm doesnt emulate architectures or real hardware, instead concentrating on paravirtualized devices, such as the virtio standard.

crosvm is currently used to run Linux/Android guests on Chrome OS devices.

Logo