diff options
author | chaviw <chaviw@google.com> | 2020-10-23 16:44:25 -0700 |
---|---|---|
committer | chaviw <chaviw@google.com> | 2020-12-21 16:37:35 -0800 |
commit | 351e9cf9bead5a3d975d30c9bee5b100bb82f4a4 (patch) | |
tree | c58edbb1fabfbec62e8b632902d1b87c889c7f3b /rs/java/android/renderscript/ProgramVertexFixedFunction.java | |
parent | 2b5f2d80ade532fc399813ebbea6e20f8c22689b (diff) |
Handle multiple relayout calls with blast sync
The issue is the following:
1. Call relayout from VRI. drawsNeededToReport = 1
2. SV also will need to be updated. drawsNeedToReport = 2
3. VRI is finished rendering, but SV is not. drawsNeedToReport = 1
4. VRI calls relayout again. drawsNeedToReport = 2
5. SV finishes drawing. drawsNeedToReport = 1
BBQ will get stuck since it's waiting indefinitey for a transaction
callback. The previous transaction can never get applied since we're
still waiting until drawsNeededToReport = 0.
This prevents situations like this from happening since it will not
allow a relayout to get called until the previous transaction has been
applied.
Test: Split screen with chrome
Bug: 167202096
Change-Id: I167a90ef00fa6677b3c55239e74eefb6a1384baf
Diffstat (limited to 'rs/java/android/renderscript/ProgramVertexFixedFunction.java')
0 files changed, 0 insertions, 0 deletions