commit | 71104fd37d95412b1ca53ae601a0775e900e11c0 | [log] [tgz] |
---|---|---|
author | Khushal <khushalsagar@chromium.org> | Wed Feb 27 04:39:34 2019 |
committer | Commit Bot <commit-bot@chromium.org> | Wed Feb 27 04:39:34 2019 |
tree | e4d77dbfd4fdbb8b040e1b1fa847a84e2d327cd8 | |
parent | 80f73e86fb9ed9ba2a43753bcf9fb67a9ce859f1 [diff] |
gpu: Fix partial damage update synchronization in BufferQueue. BufferQueue maintains tracking for damage in previous frames, and copies it to the buffer for the current frame for partial swap. But because the copy happens after generating the ready fence for the OutputSurface's overlay, this creates a synchronization bug where the display controller could try to read from this overlay while the GPU is still writing to it. Avoid this by notifying the OutputSurface of the damage for the current frame before the ready fence is generated. R=piman@chromium.org Bug: 889530 Change-Id: Ic9e099c0bea7b8c990d1485d581590ee3ce81b77 Reviewed-on: https://chromium-review.googlesource.com/c/1487884 Commit-Queue: Khushal <khushalsagar@chromium.org> Reviewed-by: Antoine Labour <piman@chromium.org> Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Cr-Commit-Position: refs/heads/master@{#635873}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .