summaryrefslogtreecommitdiff
path: root/libs/gui/SurfaceComposerClient.cpp
diff options
context:
space:
mode:
author Adithya Srinivasan <adsrini@google.com> 2021-01-14 23:49:46 +0000
committer Adithya Srinivasan <adsrini@google.com> 2021-02-04 18:27:41 +0000
commitb9a7dabfc3f6896986b54cf6b21bf1a483391256 (patch)
tree75874dfc21dba55ca11071292290893c78abd70f /libs/gui/SurfaceComposerClient.cpp
parentc00282a5df6e7c00bec0befcb98fd4ae9e33da43 (diff)
Fix Transaction tracking for FrameTimeline
The current setup only supports one SurfaceFrame per DrawingState for Transactions. This becomes problematic if more than one Transaction is submitted for the same vsync, on the same layer. On top of this, the Blast transactions can have a buffer that could result in a buffer drop. This change adds the support to hold multiple SurfaceFrames in the Layer's State. It also adds a bufferSurfaceFrame that's intended only for Blast Transactions with a Buffer. All other Transactions are tracked in the bufferlessSurfaceFrames. Additionally, this change also adds a lastLatchTime. It is needed for classifying BufferStuffing properly. Bug: 176106798 Test: open any app from the launcher and at the same time check dumpsys Change-Id: Id3b8369ca206f8b89be3041e5fc018f1f1be1d23 Merged-In: Id3b8369ca206f8b89be3041e5fc018f1f1be1d23
Diffstat (limited to 'libs/gui/SurfaceComposerClient.cpp')
0 files changed, 0 insertions, 0 deletions