Skip to content

Draft: c/client: Implement wait image logic.

Previously wait image logic in client side is not implemented indeed, it just pipe down call into native swapchain wait image call and no actual blocking operation on the image, avoid writing to it before the compositor has finished reading from it.

This MR proposed a solution that

  1. compositor should be responsible for creating a fence after all rendering commands flushed into command buffer, and duplicate this fence into file descriptor(fd).
  2. Pass this fd from IPC server to IPC client side through IPC call ipc_call_swapchain_wait_image(...)/ipc_handle_swapchain_wait_image(...).
  3. client should create fence based on this fd and wait on it to avoid image access conflicts between apps and compostior.

In this patch, #2 and #3 is included.

Edited by Liu Knox

Merge request reports