No description
Find a file
Pierre-Clément Tosi 33fe685fc6 gdb: Make feature less x86_64-centric
Remove target_arch-specific #[cfg]s where the underlying code is
architecture-agnostic.

Introduce a GdbOps trait for architectures to implement.

Make use of the generic gdbstub::arch::Arch trait where relevant.

Import base::Tube unconditionally in arch/src/sys/unix.rs.

Expand crate::gdb::* in vm_control/src/lib.rs for clarity.

Keep target_arch checks in x86-specific code to exclude 32-bit builds as
those don't seem to provide GDB support.

BUG=b:222222882
BUG=chromium:1141812
TEST=tools/dev_container ./tools/run_tests

Change-Id: I3f5ceeeb9031bee222ecd388dddb815e256748e8
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3785464
Tested-by: Pierre-Clément Tosi <ptosi@google.com>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Auto-Submit: Pierre-Clément Tosi <ptosi@google.com>
Commit-Queue: Pierre-Clément Tosi <ptosi@google.com>
2022-09-01 16:24:00 +00:00
.cargo health-check: Add check for newline at ends of files 2022-08-18 00:17:04 +00:00
.devcontainer dev_container: Use host UID & GID for user in container 2022-08-23 23:16:09 +00:00
.github github: update contributing link 2022-07-29 22:54:01 +00:00
.vscode Add rust-analyzer config to .vscode/settings.json 2022-08-16 23:08:35 +00:00
aarch64 crosvm: Preserve platform devices in RunnableLinuxVm 2022-08-26 08:41:37 +00:00
acpi_tables aml: Use the shortest form possible to generate integers 2022-08-30 18:08:58 +00:00
anti_tamper crosvm: upstream windows src 2022-07-19 20:58:59 +00:00
arch gdb: Make feature less x86_64-centric 2022-09-01 16:24:00 +00:00
argh_helpers crosvm: Fix Windows arg parsing 2022-08-25 20:31:25 +00:00
base base: dedup EventReadResult 2022-08-31 21:29:08 +00:00
bin
bit_field Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
broker_ipc Reformat imports 2022-07-28 00:15:50 +00:00
ci/kokoro
common audio_streams_conformance_test: add playback test for NoopStream 2022-08-22 08:17:59 +00:00
cros_async cros_async: fix doc test failing 2022-08-16 02:09:32 +00:00
crosvm-fuzz Reformat imports 2022-07-28 00:15:50 +00:00
crosvm_control crosvm_control: Also create a static lib 2022-09-01 07:33:29 +00:00
crosvm_plugin Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
devices devices: vhost-user: device: hander: Remove duplicated run_handler 2022-09-01 15:05:40 +00:00
disk qcow: Turn QCOW support into a feature 2022-09-01 08:13:29 +00:00
docs/book docs: books: update instructions for using ffmpeg in the guest 2022-08-24 00:31:39 +00:00
fuse Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
gpu_display gpu_display: rework build.rs for cross compilation 2022-08-19 22:43:07 +00:00
hypervisor hypervisor: kvm: aarch64: KvmVcpuRegister: Support any kvm_regs 2022-09-01 14:16:59 +00:00
infra Roll recipe dependencies (trivial). 2022-09-01 06:26:19 +00:00
integration_tests dev_container: Use host UID & GID for user in container 2022-08-23 23:16:09 +00:00
io_uring Reformat imports 2022-07-28 00:15:50 +00:00
kernel_cmdline Reformat imports 2022-07-28 00:15:50 +00:00
kernel_loader Reformat imports 2022-07-28 00:15:50 +00:00
kvm Reformat imports 2022-07-28 00:15:50 +00:00
kvm_sys Reformat imports 2022-07-28 00:15:50 +00:00
libcras_stub
linux_input_sys Revert "x display: ST event emulation for MT events" 2022-08-09 00:11:50 +00:00
logo
media media: ffmpeg: Add a builder for decoding AvCodecContext. 2022-09-01 03:21:20 +00:00
metrics crosvm: resync with downstream after running clippy 2022-08-25 20:45:12 +00:00
net_sys Reformat imports 2022-07-28 00:15:50 +00:00
net_util crosvm: resync with downstream after running clippy 2022-08-25 20:45:12 +00:00
power_monitor Reformat imports 2022-07-28 00:15:50 +00:00
protos Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
qcow_utils qcow: Turn QCOW support into a feature 2022-09-01 08:13:29 +00:00
resources resources: optimize region coalescing 2022-08-03 02:09:50 +00:00
rutabaga_gfx rutabaga_gfx: add stream_renderer_vulkan_info 2022-08-31 18:03:28 +00:00
seccomp seccomp: allow setpriority on arm/aarch64 for gpu 2022-08-31 00:39:48 +00:00
serde_keyvalue serde_keyvalue: more natural signed number parsing 2022-08-27 03:27:48 +00:00
src gdb: Make feature less x86_64-centric 2022-09-01 16:24:00 +00:00
system_api_stub
tests Reformat imports 2022-07-28 00:15:50 +00:00
third_party vmm_vhost: Replace super:: with crate:: 2022-09-01 15:05:40 +00:00
tools vmm_vhost: Enable health-check for third_party/vmm_vhost 2022-09-01 15:05:31 +00:00
tpm2 Reformat imports 2022-07-28 00:15:50 +00:00
tpm2-sys tpm2-sys: build libtpm2 with -Wno-error 2022-07-28 00:26:00 +00:00
tracing health-check: Add check for newline at ends of files 2022-08-18 00:17:04 +00:00
tube_transporter Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
usb_sys Reformat imports 2022-07-28 00:15:50 +00:00
usb_util Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
vfio_sys direct_irq: support forwarding of ACPI fixed events 2022-08-09 09:24:31 +00:00
vhost Reformat imports 2022-07-28 00:15:50 +00:00
virtio_sys devices: virtio: Virtio over MMIO support 2022-08-26 12:22:31 +00:00
vm_control gdb: Make feature less x86_64-centric 2022-09-01 16:24:00 +00:00
vm_memory Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
win_audio crosvm: resync with downstream after running clippy 2022-08-25 20:45:12 +00:00
win_util Reformat imports 2022-07-28 00:15:50 +00:00
x86_64 gdb: Make feature less x86_64-centric 2022-09-01 16:24:00 +00:00
.dockerignore
.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
ARCHITECTURE.md arch: allocate reserved PCI addresses first 2022-08-01 18:57:44 +00:00
Cargo.lock gdb: Make feature less x86_64-centric 2022-09-01 16:24:00 +00:00
Cargo.toml qcow: Turn QCOW support into a feature 2022-09-01 08:13:29 +00:00
CONTRIBUTING.md contributing: fix "uploaad" typo 2022-08-01 23:30:44 +00:00
LICENSE
mypy.ini Add python configs for consistency between IDE and CI 2022-08-16 18:33:23 +00:00
navbar.md crosvm: update book and doc links to crosvm.dev 2022-07-29 22:54:01 +00:00
OWNERS Add rizhang@ to OWNERS 2022-08-17 01:14:13 +00:00
PRESUBMIT.cfg
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 crosvm: update book and doc links to crosvm.dev 2022-07-29 22:54:01 +00:00
run_tests
rust-toolchain rust-toolchain: update to 1.60.0 2022-07-28 17:46:00 +00:00
setup_cros_cargo.sh
test_all
unblocked_terms.txt

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