No description
Find a file
Daniel Verkamp f50029e071 kernel_loader: accept physical address offset
This interprets the p_paddr field of ELF program headers as an offset
into physical RAM on aarch64 systems, which is a change in behavior. We
pass an offset of 0 on x86-64, so it makes no difference there.

BUG=b:254601048
BUG=b:255697205
TEST=cargo test -p kernel_loader

Change-Id: I9ebaa285c4cde1f70cb7752e91ff4520e06dc82f
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/4035738
Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
Commit-Queue: Daniel Verkamp <dverkamp@chromium.org>
2022-11-28 19:41:53 +00:00
.cargo Remove needless_return clippy suppression 2022-11-10 18:15:58 +00:00
.devcontainer dev_container: Add mdformat-tables to dependency 2022-11-15 22:36:38 +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 kernel_loader: accept physical address offset 2022-11-28 19:41:53 +00:00
acpi_tables acpi: Add More AML objects 2022-10-11 13:32:01 +00:00
anti_tamper Update all copyright headers to match new style 2022-09-13 18:41:29 +00:00
arch config: parse --userspace-msr with serde_keyvalue 2022-11-28 19:18:06 +00:00
argh_helpers Update all copyright headers to match new style 2022-09-13 18:41:29 +00:00
base base: syslog: Preserve stderr FD when spawning 2022-11-28 19:12:37 +00:00
bit_field Update all copyright headers to match new style 2022-09-13 18:41:29 +00:00
broker_ipc crash-report: Build with feature crash-report 2022-09-28 14:45:00 +00:00
common crosvm: improve suspend implementation 2022-11-16 21:38:29 +00:00
crash_report device: vhost-user: Bring up Windows GPU 2022-11-21 20:05:59 +00:00
cros_async Fix straggler needless_return violations 2022-11-21 19:00:07 +00:00
cros_fdt arch: split fdt code into its own crate 2022-10-19 17:43:19 +00:00
cros_tracing tracing: rename tracing to cros_tracing. 2022-10-17 20:49:16 +00:00
crosvm-fuzz kernel_loader: accept physical address offset 2022-11-28 19:41:53 +00:00
crosvm_cli crosvm_cli: improve documentation for exit codes. 2022-11-11 20:46:19 +00:00
crosvm_control Update all copyright headers to match new style 2022-09-13 18:41:29 +00:00
crosvm_plugin Remove plugin-render-server feature 2022-10-14 20:31:19 +00:00
devices devices: pci: stub: parse arguments with serde_keyvalue 2022-11-28 18:55:40 +00:00
disk disk/qcow: Write less blocks for testing 2022-11-09 18:39:33 +00:00
docs/book docs: book: document how to specify command-line options and configuration files 2022-11-24 09:28:57 +00:00
e2e_tests e2e_tests: Add vhost-user block with devices command 2022-11-24 09:16:00 +00:00
fuse Update all copyright headers to match new style 2022-09-13 18:41:29 +00:00
gpu_display devices: gpu: Remove kiwi tubes 2022-11-21 19:51:34 +00:00
hypervisor Fix needless return violations 2022-11-10 18:10:31 +00:00
infra Roll recipe dependencies (trivial). 2022-11-28 17:47:35 +00:00
io_uring crosvm bindgen: regenerate with missing_safety_doc 2022-11-15 20:43:50 +00:00
kernel_cmdline Update all copyright headers to match new style 2022-09-13 18:41:29 +00:00
kernel_loader kernel_loader: accept physical address offset 2022-11-28 19:41:53 +00:00
kvm Add clippy tag for safety docs 2022-11-12 01:27:46 +00:00
kvm_sys crosvm bindgen: regenerate with missing_safety_doc 2022-11-15 20:43:50 +00:00
libcras_stub tree-wide: apply cargo fmt --nightly 2022-10-03 21:39:26 +00:00
linux_input_sys Update all copyright headers to match new style 2022-09-13 18:41:29 +00:00
logo README: Use PNG logo image 2021-10-29 01:56:23 +00:00
media crosvm bindgen: regenerate with missing_safety_doc 2022-11-15 20:43:50 +00:00
metrics device: vhost-user: Bring up Windows GPU 2022-11-21 20:05:59 +00:00
net_sys crosvm bindgen: regenerate with missing_safety_doc 2022-11-15 20:43:50 +00:00
net_util LSC: safe removal of needless_returns 2022-11-09 18:27:14 +00:00
power_monitor power_monitor: Enable feature in all-linux 2022-09-20 21:06:47 +00:00
prebuilts test_runner: Add separate cargo target dir for each platform 2022-10-31 21:33:33 +00:00
proto_build_tools proto_build_tools: add crate for proto build tools. 2022-11-12 01:02:23 +00:00
protos protos: migrate to new build tool & cleanup. 2022-11-12 01:02:36 +00:00
qcow_utils Add clippy tag for safety docs 2022-11-12 01:27:46 +00:00
resources resources: reject unknown fields when deserializing AddressRange 2022-10-24 02:56:12 +00:00
rutabaga_gfx device: vhost-user: Bring up Windows GPU 2022-11-21 20:05:59 +00:00
sandbox device: vhost-user: Bring up Windows GPU 2022-11-21 20:05:59 +00:00
seccomp seccomp: allow clone3 to video_device on x86 2022-11-24 09:40:27 +00:00
serde_keyvalue serde_keyvalue: allow parsing of inner structs 2022-10-26 17:41:37 +00:00
src crosvm: remove argument module 2022-11-28 19:22:30 +00:00
swap swap: fix for VMs with highmem 2022-11-22 02:08:53 +00:00
system_api Fix compilation with vtpm enabled 2022-09-29 17:17:21 +00:00
tests tests: plugin: add clone3 and rseq to seccomp policy 2022-11-17 18:59:56 +00:00
third_party vmm_vhost: slave_req_hander: Wait before vhost-user message body 2022-11-24 04:21:56 +00:00
tools book: Fix footnote escape from mdformat 2022-11-16 01:40:29 +00:00
tpm2 Update all copyright headers to match new style 2022-09-13 18:41:29 +00:00
tpm2-sys Fix straggler needless_return violations 2022-11-21 19:00:07 +00:00
tube_transporter base: cross platform Event API 2022-10-19 20:17:42 +00:00
usb_sys Update all copyright headers to match new style 2022-09-13 18:41:29 +00:00
usb_util Replace common/assertions with static_assertions 2022-10-31 21:33:33 +00:00
vfio_sys crosvm bindgen: regenerate with missing_safety_doc 2022-11-15 20:43:50 +00:00
vhost vhost: Move tests into an integration test 2022-11-04 06:49:36 +00:00
virtio_sys crosvm bindgen: regenerate with missing_safety_doc 2022-11-15 20:43:50 +00:00
vm_control crosvm: update CLI syntax for specifying DPI for displays. 2022-11-24 17:43:55 +00:00
vm_memory vm_memory: guest_memory: Remove continuation passing style of do_in_region 2022-11-15 20:46:18 +00:00
win_audio metrics: migrate to proto_build_tools. 2022-11-12 01:02:23 +00:00
win_util device: vhost-user: Bring up Windows GPU 2022-11-21 20:05:59 +00:00
x86_64 kernel_loader: accept physical address offset 2022-11-28 19:41:53 +00:00
.dockerignore add docker supported builds and tests 2019-05-15 13:36:19 -07:00
.gitignore Add python configs for consistency between IDE and CI 2022-08-16 18:33:23 +00:00
.gitmodules health-check: Add infra checks 2022-08-18 00:17:04 +00:00
.rustfmt.toml rustfmt, win_util: update to 2021 edition 2022-05-31 23:35:02 +00:00
ARCHITECTURE.md Rename integration_tests to e2e_tests 2022-11-03 22:49:39 +00:00
build.rs build.rs: find compile_seccomp_policy via which 2022-11-02 20:18:42 +00:00
Cargo.lock crosvm: add JSON configuration file support 2022-11-17 15:08:54 +00:00
Cargo.toml crosvm: add JSON configuration file support 2022-11-17 15:08:54 +00:00
CONTRIBUTING.md CONTRIBUTING: Add a section about commit messages' format 2022-10-19 06:22:42 +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 Add rizhang@ to OWNERS 2022-08-17 01:14:13 +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 docs: Replace crbug link with issuetracker.google.com 2022-10-18 06:22:41 +00:00
rust-toolchain dev_container: Upgrade to debian bookworm 2022-09-14 22:32:36 +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