No description
Find a file
David Stevens dc790f39c8 arch: refactor pci range generation
Add a method to SystemAllocator that returns a vector of all pools and
use it to generate the PCI ranges in build_vm. This also fixes a bug
where x86 used the size as the end address for the high_mmio region.

BUG=b:181736020
TEST=tast run trogdor|hatch arc.Boot.vm

Change-Id: Id4a300ec61c15bc08fb069b80428b22461ca935b
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3516668
Reviewed-by: Junichi Uekawa <uekawa@chromium.org>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: David Stevens <stevensd@chromium.org>
2022-03-17 01:58:14 +00:00
.cargo clippy: fix devices crate 2022-02-07 22:22:39 +00:00
.devcontainer Make vscode devcontainer usable 2022-01-25 21:30:49 +00:00
.github github: Change target directory for cargo-doc 2022-02-22 05:41:52 +00:00
aarch64 arch: refactor pci range generation 2022-03-17 01:58:14 +00:00
acpi_tables acpi: support fixed power button in vPM1 2022-03-10 16:59:19 +00:00
arch pstore: reserve ramoops region in system allocator 2022-03-17 01:58:13 +00:00
base Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
bin Deprecate old dev tooling scripts 2021-11-02 22:23:03 +00:00
bit_field crosvm: migrate to Rust 2021 edition 2022-03-09 01:16:03 +00:00
ci/kokoro Enable windows tests for a few crates 2022-02-18 03:18:58 +00:00
common upstream windows vmm_vhost 2022-03-17 01:56:08 +00:00
crosvm-fuzz Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
crosvm_control Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
crosvm_plugin Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
devices pstore: reserve ramoops region in system allocator 2022-03-17 01:58:13 +00:00
disk Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
docs/book COIL: Migrate master to HEAD 2022-03-16 01:01:11 +00:00
fuse fuse: Add FuseConfig builder API 2022-03-10 20:17:31 +00:00
gpu_display Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
hypervisor Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
infra/config infra: Initial LUCI configuration 2022-02-24 23:21:10 +00:00
integration_tests crosvm: migrate to Rust 2021 edition 2022-03-09 01:16:03 +00:00
kernel_cmdline crosvm: migrate to Rust 2021 edition 2022-03-09 01:16:03 +00:00
kernel_loader Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
kvm Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
kvm_sys Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
libcras_stub crosvm: migrate to Rust 2021 edition 2022-03-09 01:16:03 +00:00
libvda crosvm: migrate to Rust 2021 edition 2022-03-09 01:16:03 +00:00
linux_input_sys Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
logo README: Use PNG logo image 2021-10-29 01:56:23 +00:00
net_sys Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
net_util Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
power_monitor Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
protos crosvm: migrate to Rust 2021 edition 2022-03-09 01:16:03 +00:00
qcow_utils Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
resources arch: refactor pci range generation 2022-03-17 01:58:14 +00:00
rutabaga_gfx Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
seccomp seccomp: use common_device.policy in tpm_device.policy 2022-02-23 19:23:31 +00:00
src pstore: reserve ramoops region in system allocator 2022-03-17 01:58:13 +00:00
system_api_stub crosvm: migrate to Rust 2021 edition 2022-03-09 01:16:03 +00:00
tests crosvm: Fix running plugins integration tests 2022-03-10 01:00:38 +00:00
third_party upstream windows vmm_vhost 2022-03-17 01:56:08 +00:00
tools Refactoring script to move common/base/ to base/ 2022-03-17 00:01:27 +00:00
tpm2 crosvm: migrate to Rust 2021 edition 2022-03-09 01:16:03 +00:00
tpm2-sys crosvm: migrate to Rust 2021 edition 2022-03-09 01:16:03 +00:00
usb_sys Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
usb_util Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
vfio_sys Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
vhost Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
virtio_sys Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
vm_control Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
vm_memory Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
x86_64 arch: refactor pci range generation 2022-03-17 01:58:14 +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.md: fix repeated word typo 2022-02-25 22:41:16 +00:00
Cargo.toml Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
CONTRIBUTING.md CONTRIBUTING: Add links to mdbook 2022-02-01 10:39:32 +00:00
LICENSE add LICENSE and README 2017-04-17 14:06:21 -07:00
navbar.md docs: Use mdformat to format markdown files 2022-01-27 21:29:11 +00:00
OWNERS Add uekawa to OWNERS 2022-03-16 08:01:36 +00:00
README.chromeos.md docs: Use mdformat to format markdown files 2022-01-27 21:29:11 +00:00
README.md docs: Use mdformat to format markdown files 2022-01-27 21:29:11 +00:00
run_tests Deprecate old dev tooling scripts 2021-11-02 22:23:03 +00:00
rust-toolchain Upgrade rust toolchain version to 1.58.1 2022-02-04 02:20:36 +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