mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2025-02-09 20:04:20 +00:00
bf6e7d9060
Virglrenderer must not unmap from any thread other than the virtio-gpu thread because virglrenderer is not thread-safe and EGL requires that only one thread own a context concurrently. For the VirglRenderer RutabagaComponent, we can unmap directly from the virtio-gpu thread. In fact, we can greatly simplify the use of ExternalMapping if we eliminate the associated map/unmap callbacks for all RutabagaComponents. Now VirtioGpu is responsible for ensuring that the map/unmap occurs and is registered/unregistered. Also, the shared `map_request: Arc<Mutex<ExternalMapping>>` spanning the KVM and virtio-gpu threads is no longer necessary. BUG=b:244626679 TEST=OpenGL and Vulkan gameplay with sandboxing disabled TEST=OpenGL and Vulkan gameplay on ChromeOS with sandboxing Change-Id: I4acaf4aabff3891536ca0439221cfbd021dba123 Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3888602 Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Commit-Queue: Ryan Neph <ryanneph@google.com> |
||
---|---|---|
.. | ||
src | ||
Cargo.toml |