New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 877684 link

Starred by 2 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Fuchsia
Pri: 2
Type: Bug

Blocked on:
issue 878010
issue 878011



Sign in to add a comment

VulkanSurface usage from SkiaRenderer is not synchronized correctly

Project Member Reported by spang@chromium.org, Aug 24

Issue description

There are a couple of synchronization problems with gpu::VulkanSurface and its usage from SkiaRenderer:

(1) there's no barrier to transition image layout to VK_IMAGE_LAYOUT_PRESENT_SRC_KHR before the present
(2) it appears that we're using the swapchain image as a render target without waiting on the acquire semaphore

The first issue completely breaks rendering on fuchsia (see https://chromium-review.googlesource.com/c/chromium/src/+/1188976 for a WIP fix)

Part of the issue is that the code in //gpu/vulkan is extremely simplistic. For example gpu::VulkanSwapchain assumes all accesses to the acquired image can happen from a single command buffer managed by the swap chain and submitted inside SwapBuffers().
 
Cc: vmi...@chromium.org ericrk@chromium.org
I agree. I think we need to have the semaphores/fences/whatever be part of the APIs here. I'm happy to do the gpu/vulkan side if someone can work on the SkiaRenderer side.
Status: Available (was: Untriaged)
someone on SkiaAdapter team will do the SkiaRenderer side.
Blockedon: 878010 878011
Cc: backer@chromium.org weiliangc@chromium.org
Cc: robertphillips@chromium.org egdaniel@chromium.org

Sign in to add a comment