No description
Find a file
Ryuichiro Chiba 4f0aed19ec devices: usb: Handle stall error
crosvm ignores STALL error returned from usbdevfs during transfer ring
operations.
xHC shall handle this error and manage the state of the endpoint which
the error occurs (see xHCI spec 4.8.3).
This CL handles the error and reports it to the guest driver.

BUG=b:283932324
TEST=`./tools/presubmit`
TEST=termina vm receives a STALL error when the error occurs

Change-Id: Ibeafb1a07ed8ebbca60438931877493c1cea7551
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/4554561
Commit-Queue: Ryuichiro Chiba <chibar@chromium.org>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
2023-05-29 03:27:13 +00:00
.cargo clippy: Disallow len_without_is_empty and len_zero 2023-05-22 21:27:21 +00:00
.config
.devcontainer dev_container: Always run as root inside container 2023-04-25 21:33:42 +00:00
.github
.vscode
aarch64 swap: garbage collect uffds for detached hot plug devices 2023-05-26 01:39:50 +00:00
acpi_tables acpi: aml: make the BufferData public 2023-05-05 22:26:02 +00:00
anti_tamper
arch swap: garbage collect uffds for detached hot plug devices 2023-05-26 01:39:50 +00:00
argh_helpers
audio_util tree-wide: apply nightly rustfmt 2023-03-27 21:30:45 +00:00
base Upgrade to 1.68.2: Fix clippy nits 2023-05-25 18:28:14 +00:00
bit_field bit_field: suppress clippy cast warnings 2023-04-10 23:41:28 +00:00
broker_ipc
common data_model: windows: panic if IoBuf len is too large 2023-05-25 23:26:57 +00:00
crash_report
cros_async Upgrade to 1.68.2: Fix clippy nits 2023-05-25 18:28:14 +00:00
cros_fdt
cros_tracing cros_tracing: Fix missing fully qualified names 2023-05-24 04:49:56 +00:00
cros_tracing_types Upstream cros_tracing_types. 2023-05-11 18:08:00 +00:00
crosvm_cli crosvm_cli: reserve new control server exit code. 2023-05-16 23:05:32 +00:00
crosvm_control clippy: Disallow new_without_default 2023-05-22 21:14:06 +00:00
crosvm_plugin base: tube: send/recv for srteam socket to use io::Result 2023-05-23 10:29:53 +00:00
devices devices: usb: Handle stall error 2023-05-29 03:27:13 +00:00
disk devices: virtio: block: use fdatasync for FLUSH 2023-05-12 18:15:54 +00:00
docs/book docs: Add virtio-fs document in crosvm book 2023-05-19 01:45:15 +00:00
e2e_tests vhost-user: return the active Queue from stop_queue 2023-05-19 17:56:12 +00:00
fuse clippy fixes for Rust 1.69 2023-05-26 01:52:39 +00:00
fuzz fuzz: improve virtqueue fuzzer coverage 2023-05-23 00:24:32 +00:00
gpu_display clippy: Disallow new_without_default 2023-05-22 21:14:06 +00:00
hypervisor geniezone: Pass dtb config to hypervisor 2023-05-25 18:42:14 +00:00
infra Roll recipe dependencies (trivial). 2023-05-26 22:59:40 +00:00
io_uring io_uring: refactor prep_next_sqe to remove an argument no longer used 2023-05-19 01:34:54 +00:00
jail jail: Compile seccomp policies in parallel 2023-05-25 19:13:12 +00:00
kernel_cmdline
kernel_loader tree-wide: remove unnecessary casts 2023-04-17 23:43:59 +00:00
kvm clippy: Disallow len_without_is_empty and len_zero 2023-05-22 21:27:21 +00:00
kvm_sys kvm_sys: finish KVM_SYSTEM_EVENT_S2IDLE removal 2023-05-09 18:17:17 +00:00
libcras_stub
linux_input_sys
logo
media clippy: Disallow len_without_is_empty and len_zero 2023-05-22 21:27:21 +00:00
metrics Upgrade to 1.68.2: Fix clippy nits 2023-05-25 18:28:14 +00:00
net_sys
net_util e2e_tests: snapshot vhost user tests 2023-05-15 21:11:42 +00:00
perfetto perfetto: minor build fixes. 2023-05-16 22:30:45 +00:00
power_monitor Cargo.toml: upgrade protobuf 2.x -> 3.x 2023-04-28 19:32:01 +00:00
prebuilts
proto_build_tools Cargo.toml: upgrade protobuf 2.x -> 3.x 2023-04-28 19:32:01 +00:00
protos balloon: use protos for registered events 2023-05-22 19:28:45 +00:00
qcow_utils qcow_utils: Enable disk/qcow feature 2023-05-11 16:30:19 +00:00
resources
riscv64 swap: garbage collect uffds for detached hot plug devices 2023-05-26 01:39:50 +00:00
rutabaga_gfx rutabaga_gfx: Override to use pkg_config-provided virglrenderer 2023-05-25 17:16:09 +00:00
sandbox
serde_keyvalue
src swap: garbage collect uffds for detached hot plug devices 2023-05-26 01:39:50 +00:00
swap swap: add tests for UffdList 2023-05-26 01:56:34 +00:00
system_api Cargo.toml: upgrade protobuf 2.x -> 3.x 2023-04-28 19:32:01 +00:00
tests
third_party vhost_user: Implement sleep for vhost user devices 2023-05-19 18:40:39 +00:00
tools Upgrade to 1.68.2: Set default version and rebuild container 2023-05-25 18:30:55 +00:00
tpm2
tpm2-sys
tube_transporter
usb_sys
usb_util devices: usb: Handle stall error 2023-05-29 03:27:13 +00:00
vfio_sys
vhost tree-wide: remove unnecessary casts 2023-04-17 23:43:59 +00:00
virtio_sys
vm_control vm_control: move snapshot logic to do_snapshot function 2023-05-25 00:46:57 +00:00
vm_memory Update bitflags dependency to 2.2.1. 2023-04-27 17:22:36 +00:00
win_audio net_util/win_audio: Do not use cfg conditional compilation in build.rs 2023-05-09 20:27:26 +00:00
win_util win_util: move SYSTEM_INFO helpers to base 2023-05-17 19:25:32 +00:00
x86_64 swap: garbage collect uffds for detached hot plug devices 2023-05-26 01:39:50 +00:00
.dockerignore
.envrc
.gitignore
.gitmodules
.rustfmt.toml
ARCHITECTURE.md
Cargo.lock jail: Compile seccomp policies in parallel 2023-05-25 19:13:12 +00:00
Cargo.toml balloon: use protos for registered events 2023-05-22 19:28:45 +00:00
CONTRIBUTING.md docs: Have style guide as a separate section 2023-05-16 16:03:03 +00:00
DIR_METADATA
LICENSE
mypy.ini
OWNERS OWNERS: Add takayas@ to OWNERS 2023-04-24 11:15:25 +00:00
OWNERS_COUNCIL
PRESUBMIT.cfg
pyproject.toml
README.chromeos.md
README.md
rust-toolchain Upgrade to 1.68.2: Set default version and rebuild container 2023-05-25 18:30:55 +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