commit | 105d68747b0a4702cda8c87ecf31f11a35e619f7 | [log] [tgz] |
---|---|---|
author | Shao-Chuan Lee <shaochuan@chromium.org> | Wed Apr 13 12:12:36 2022 +0900 |
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | Wed Apr 13 17:46:41 2022 +0000 |
tree | 870732acaecba42c33a51b4a84e683899f6a4dbb | |
parent | a1fac454ed4d296a850ab9f75dbbf3e6417d5f0c [diff] |
Revert "rutabaga_gfx: remove fence polling and enable async callback" This reverts commit a999284da2f8c6d3ef8667e557e27fd27ee29a06. This also introduces two extra `use` statements to fix the corresponding errors in the LUCI build, which did not occur in local builds. Reason for revert: caused deadlock in virglrenderer Original change's description: > rutabaga_gfx: remove fence polling and enable async callback > > Now that rutabaga users can provide a callback for fence > completion, fences no longer need to be polled on the main thread. > > Optional polling still occurs for Rutabaga Components that still > rely on it for other purposes (e.g. virglrenderer for GL query > checking). > > Also, use a BTreeMap rather a HashMap since we only expect a dozen > or so entries at most. In such cases, a BTreeMap is faster. > > * v1 (lfrb@collabora.com): remove all polling + add async_cb > * v2 (ryanneph@google.com): re-introduce optional polling to fix > virglrenderer that relies on it for GL query checking. > * v3 (ryanneph@google.com): replace timer-based polling with > eventfd-based poll() signaling for components that want to > use it. > > BUG=b:175527587 > TEST=glxgears and vkcube in a crosvm guest VM. > > Cq-Depend: chromium:3555854, chromium:3563893 > Change-Id: I8e0181317e954cd15e2b8dc04c9b1329b0a6e182 > Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2860746 > Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> > Tested-by: kokoro <noreply+kokoro@google.com> > Commit-Queue: Ryan Neph <ryanneph@google.com> BUG=b:175527587,b:228782431,b:228521246 TEST=arc.Notification.vm on kukui-arc-r TEST=dEQP-VK.wsi.android.swapchain.create#image_usage on dedede/kukui-arc-r Change-Id: I616e3f283a60fe6a260f796cddce67c548b5e304 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3584076 Reviewed-by: Kazuhiro Inaba <kinaba@chromium.org> Reviewed-by: Dennis Kempin <denniskempin@google.com> Reviewed-by: Ryan Neph <ryanneph@google.com> Tested-by: kokoro <noreply+kokoro@google.com> Commit-Queue: Ryan Neph <ryanneph@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.