mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2025-02-11 04:26:38 +00:00
The cross-domain context is specialized for cross domain allocation/resource sharing. It takes direct inspiration from the pioneering virtio_wl device and tries to incorporate similiar functionality into virtio_gpu. The goal here is just to introduce the building blocks so we can continue experimenting. In particular, this change: * hooked up the RutabagaChannels. This is typically a socket to Wayland or Mojo for the camera use case. * added CROSS_DOMAIN_CMD_INIT and CROSS_DOMAIN_CMD_GET_IMAGE_REQS to the cross-domain protocol. Further commands (such as CROSS_DOMAIN_SEND) will be needed, but that requires more Sommelier refactorings. * added a path to RutabagaGralloc to allocate via minigbm or shared memory. * Recieves responses via a shared ring buffer of type BLOB_MEM_GUEST. The synchronization protocol looks positively primitive compared to the revolutionary Address Space Graphics (ASG) algorithm [1], but it may be sufficient for the Wayland use case. [1] https://goto.google.com/address-space-graphics BUG=b:146066070, b:173630595, b:150239451 TEST=launch virtual machine with 2D mode TEST=launch virtual machine with 3D mode TEST=run sommelier with "wl-dmabuf" and "wl-shm" Change-Id: I46784f17040494ce3a646bdbde516800aa64bd5d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2626488 Tested-by: kokoro <noreply+kokoro@google.com> Tested-by: Gurchetan Singh <gurchetansingh@chromium.org> Commit-Queue: Gurchetan Singh <gurchetansingh@chromium.org> Reviewed-by: Zach Reizner <zachr@chromium.org> |
||
---|---|---|
.. | ||
src | ||
.build_test_serial | ||
Cargo.toml |