No description
Find a file
Zihan Chen bbc4f68ebb crosvm: Convert DataInit to zerocopy 10/n
We are down to only 30 `unsafe impl DataInit` across our repo now!

TEST=CQ

BUG=b:204409584

Change-Id: I1b6cf95b2a15eac194f3b464330009fd898a0bfa
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/4356907
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Auto-Submit: Zihan Chen <zihanchen@google.com>
Commit-Queue: Daniel Verkamp <dverkamp@chromium.org>
2023-03-24 18:12:38 +00:00
.cargo tools: Do not use pip to install python packages 2023-02-27 19:24:18 +00:00
.config tools/run_tests2: Prepare for CI usage 2023-02-09 00:09:02 +00:00
.devcontainer dev_container: Add latest tag when pushing images 2023-03-15 21:02:13 +00:00
.github Cleanup: Remove old, deprecated and no longer used files 2022-09-20 21:05:57 +00:00
.vscode Document feature flags and introduce new feature sets 2022-10-14 20:31:19 +00:00
aarch64 crosvm: fdt: Add option to dump generated devicetree blob 2023-03-16 18:16:28 +00:00
acpi_tables acpi: Mark structs as repr(C, packed) 2023-02-08 21:32:43 +00:00
anti_tamper kiwi: clean anti_tamper and metrics related code 2023-01-04 00:08:27 +00:00
arch crosvm: fdt: Add option to dump generated devicetree blob 2023-03-16 18:16:28 +00:00
argh_helpers Update all copyright headers to match new style 2022-09-13 18:41:29 +00:00
audio_util audio_util: Implement FileStream for AudioStream 2023-03-21 07:46:05 +00:00
base hypervisor: Add snapshot to vCPU x86_64 2023-03-23 17:15:47 +00:00
bit_field crosvm: Uprev rust toolchain and dev container 2023-02-08 20:26:30 +00:00
broker_ipc Fix remaining Chrome/Chromium OS instances 2023-01-03 22:14:30 +00:00
common cros_asyncv2: use tempfile::tempdir in tests 2023-03-17 20:02:41 +00:00
crash_report metrics: Add missing process types 2023-02-22 20:01:38 +00:00
cros_async base: use SafeDescriptor in unix socket wrappers 2023-03-17 18:12:49 +00:00
cros_fdt crosvm: fdt: Add option to dump generated devicetree blob 2023-03-16 18:16:28 +00:00
cros_tracing cros_tracing: do not print errors in push_descriptors() 2023-02-21 20:31:28 +00:00
crosvm-fuzz devices: virtio: block: parallelize by multiple worker threads 2023-03-03 00:23:05 +00:00
crosvm_cli vhost-user: snd: Implement Windows broker & device setup 2023-02-28 21:34:01 +00:00
crosvm_control crosvm_control: Add Build Time C Compilation Check 2023-03-16 00:01:44 +00:00
crosvm_plugin Add conditional compilation for unix-only crates 2023-01-19 21:21:59 +00:00
devices crosvm: Convert DataInit to zerocopy 10/n 2023-03-24 18:12:38 +00:00
disk disk: add try_clone method to DiskFile trait 2023-03-02 08:52:56 +00:00
docs/book crosvm: add --vsock command-line option and config-file parameter. 2023-03-22 09:19:18 +00:00
e2e_tests e2e_tests: add "crosvm devices --vsock" integration tests 2023-03-22 09:23:13 +00:00
fuse devices: Add trace points for passthroughfs 2023-03-10 02:20:14 +00:00
gpu_display crosvm: Convert DataInit to zerocopy 10/n 2023-03-24 18:12:38 +00:00
hypervisor hypervisor: Add restore to x86/x86-64 Vcpu 2023-03-23 20:55:00 +00:00
infra Roll recipe dependencies (trivial). 2023-03-24 04:54:52 +00:00
io_uring bindgen: update kernel bindings to Linux 6.1 2023-02-23 21:31:44 +00:00
jail crosvm: add vsock support for the devices command 2023-03-22 09:23:10 +00:00
kernel_cmdline Rust 1.65: Fix clippy derive_partial_eq_without_eq lints 2022-12-01 01:32:30 +00:00
kernel_loader crosvm: Convert DataInit to zerocopy 10/n 2023-03-24 18:12:38 +00:00
kvm bindgen: update kernel bindings to Linux 6.1 2023-02-23 21:31:44 +00:00
kvm_sys hypervisor: Add get_xsave and set_xsave support to x86. 2023-03-03 00:30:04 +00:00
libcras_stub devices: snd: Use PCM device client_type and stream_type for CRAS 2023-03-02 06:22:40 +00:00
linux_input_sys crosvm: Convert DataInit to zerocopy 10/n 2023-03-24 18:12:38 +00:00
logo
media media: cros-codecs: vaapi: factorize job management code of submit_picture 2023-03-02 12:34:43 +00:00
metrics metrics: Add missing process types 2023-02-22 20:01:38 +00:00
net_sys Fix remaining Chrome/Chromium OS instances 2023-01-03 22:14:30 +00:00
net_util base: fix unsafe overlapped read/write marked safe. 2023-03-14 18:42:38 +00:00
power_monitor power_monitor: refactor to use ReadNotifier 2023-01-03 22:37:36 +00:00
prebuilts prebuilds/testvm: Retry downloads 2023-03-09 23:04:20 +00:00
proto_build_tools proto_build_tools: dont fail silently 2023-01-31 18:03:00 +00:00
protos Add conditional compilation for unix-only crates 2023-01-19 21:21:59 +00:00
qcow_utils Add conditional compilation for unix-only crates 2023-01-19 21:21:59 +00:00
resources resource: system_allocator: introduce GPE allocator 2023-02-06 22:02:37 +00:00
rutabaga_gfx gpu: remove unneeded preprocessor flags 2023-03-23 16:17:37 +00:00
sandbox vhost-user: snd: Implement Windows broker & device setup 2023-02-28 21:34:01 +00:00
serde_keyvalue Fix remaining Chrome/Chromium OS instances 2023-01-03 22:14:30 +00:00
src crosvm: use RC for registered tubes 2023-03-24 16:43:58 +00:00
swap swap: use named memfd for staging memory 2023-03-22 06:42:35 +00:00
system_api Fix remaining Chrome/Chromium OS instances 2023-01-03 22:14:30 +00:00
tests Enable parallel execution of plugin and e2e tests 2023-01-26 20:38:57 +00:00
third_party crosvm: Convert DataInit to zerocopy 10/n 2023-03-24 18:12:38 +00:00
tools Revert "presubmit: Run x86 tests on vm by default" 2023-03-17 21:25:52 +00:00
tpm2 Add conditional compilation for unix-only crates 2023-01-19 21:21:59 +00:00
tpm2-sys Uprev the libtpm2 to 96017dcdb110 2023-03-07 04:05:49 +00:00
tube_transporter crosvm: Uprev rust toolchain and dev container 2023-02-08 20:26:30 +00:00
usb_sys Fix remaining Chrome/Chromium OS instances 2023-01-03 22:14:30 +00:00
usb_util crosvm: Partially convert DataInit to zerocopy (2/n) 2023-02-07 23:08:23 +00:00
vfio_sys bindgen: update kernel bindings to Linux 6.1 2023-02-23 21:31:44 +00:00
vhost Fix remaining Chrome/Chromium OS instances 2023-01-03 22:14:30 +00:00
virtio_sys bindgen: update kernel bindings to Linux 6.1 2023-02-23 21:31:44 +00:00
vm_control hypervisor: Add restore to x86/x86-64 Vcpu 2023-03-23 20:55:00 +00:00
vm_memory vm_memory: option to set MADV_DONTFORK on guest memory 2023-02-16 18:23:47 +00:00
win_audio devices: virtio: snd: Implement file backend for VirtioSnd 2023-03-21 07:46:05 +00:00
win_util base: move read/write wrappers to their own module. 2023-03-14 18:24:44 +00:00
x86_64 crosvm: fdt: Add option to dump generated devicetree blob 2023-03-16 18:16:28 +00:00
.dockerignore
.envrc Automatically register tools/ on PATH 2023-03-03 00:33:15 +00:00
.gitignore Automatically register tools/ on PATH 2023-03-03 00:33:15 +00:00
.gitmodules health-check: Add infra checks 2022-08-18 00:17:04 +00:00
.rustfmt.toml
ARCHITECTURE.md jail: create jail crate from jail_helpers.rs 2023-02-14 00:24:55 +00:00
Cargo.lock Cargo.lock: update minijail bindgen dependency version 2023-03-23 20:23:52 +00:00
Cargo.toml aarch64: MTK GenieZone hypervisor enablement as Crosvm backend 2023-03-22 18:04:47 +00:00
CONTRIBUTING.md book: Reviewed CONTRIBUTING.md 2023-03-03 02:28:37 +00:00
DIR_METADATA DIR_METADATA: Add public buganizer component 2022-09-21 17:43:59 +00:00
LICENSE Update all copyright headers to match new style 2022-09-13 18:41:29 +00:00
mypy.ini Add python configs for consistency between IDE and CI 2022-08-16 18:33:23 +00:00
OWNERS Require council review for changes to Cargo.lock 2022-12-01 18:50:48 +00:00
OWNERS_COUNCIL Require council review for changes to Cargo.lock 2022-12-01 18:50:48 +00:00
PRESUBMIT.cfg Cleanup: Remove old, deprecated and no longer used files 2022-09-20 21:05:57 +00:00
pyproject.toml Add python configs for consistency between IDE and CI 2022-08-16 18:33:23 +00:00
README.chromeos.md crosvm: update book and doc links to crosvm.dev 2022-07-29 22:54:01 +00:00
README.md Fix remaining Chrome/Chromium OS instances 2023-01-03 22:14:30 +00:00
rust-toolchain rust-toolchain: Add llvm-tools-preview 2023-02-10 20:47:41 +00:00

crosvm - The ChromeOS 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 ChromeOS 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 ChromeOS devices.

Logo