commit | cb6e74a094d9d0f2897233d91f07161fd394dce3 | [log] [tgz] |
---|---|---|
author | Takaya Saeki <takayas@chromium.org> | Tue Sep 20 20:31:41 2022 +0000 |
committer | crosvm LUCI <crosvm-scoped@luci-project-accounts.iam.gserviceaccount.com> | Thu Sep 29 05:12:12 2022 +0000 |
tree | d39f909cd2bac318b366836b3dc5e4083f8dadbe | |
parent | c706b5badbf0076a53e40973cf5ab523d7f15d45 [diff] |
cros_async: add a command-line option to switch Executor backend Currently Executor internally decides which backend to use, such as FdExecutor vs URingExecutor on Linux. This makes it hard to test both FdExecutor and URingExecutor. In addition, we came across the uring instability issue (b:238965061), thus we need a way to explicitly switch the polling backend to mitigate the issue. This commit adds a command-line option to explicitly configure the Executor's polling backend. BUG=b:239154263 TEST=confirmed crosvm --async-executor correcly switchs the Executor for `crosvm --async-executor epoll (or uring) device gpu --socket /tmp/gpu.sock` command. Used additional debug log to tell which executor is running, which is not commited Change-Id: Ib310d9edc8ab6005f1b7f210b03668b9a45fa73f Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3811014 Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org> Commit-Queue: Takaya Saeki <takayas@chromium.org> Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Reviewed-by: Noah Gold <nkgold@google.com>
crosvm is a virtual machine monitor (VMM) based on Linux’s 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 doesn’t 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.