Reland "ExternalVkImageBacking: fix concurrent read problem"
This is a reland of 0c9696bf Original change's description: > ExternalVkImageBacking: fix concurrent read problem > > Concurrent read access from both GL and Vulkan is not allowed. > Get rid of the concurrent read problem by releasing the texture > from GL temporarily, when a Vulkan read is requested. And resume > GL read access, when the Vulkan read access is over. > Current chrome GL and Vulkan concurrent read pattern is - Blink holds > and caches read access for a backing shared image for a WebGL or > 2D canvas. SkiaOutputSurfaceImplOnGpu only requests read access just > before playing back DDL and releases the read access after playing back > DDL and before SwapBuffers. The GPU will not schedule other tasks > between playing back DDL and SwapBuffers. So it should be safe to > temporarily pause GL read access. > > Bug: 1104231 > Change-Id: I729eeebd5196bc5387ac148133b5926358bb4b53 > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2311330 > Reviewed-by: Vasiliy Telezhnikov <vasilyt@chromium.org> > Commit-Queue: Peng Huang <penghuang@chromium.org> > Cr-Commit-Position: refs/heads/master@{#791022} Bug: 1104231 Change-Id: Ia916f250ca30b3c2b8a07016d2530fad79385aa9 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2316399Reviewed-by:Vasiliy Telezhnikov <vasilyt@chromium.org> Commit-Queue: Peng Huang <penghuang@chromium.org> Cr-Commit-Position: refs/heads/master@{#791520}
Showing
Please register or sign in to comment