Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 6d414b56 authored by Alec Mouri's avatar Alec Mouri
Browse files

[SurfaceFlinger] Adjust missed frame tracking

Before, missed frame tracking may be inaccurate if a frame takes longer
than one vsync and either an invalidate message is not immediately
scheduled afterwards, or the frame takes almost as long as two vsyncs
but manages to be on time to be presented for that second vsync. Those
scenarios can cause visual jank, but they are not tracked by missed
frames which affects testing.

* Rename the previous missedFrames to pendingFrames
* pendingFrames is used to check for backpressure propagation so there
is no change to device behavior
* Compute a new missedFrames count by relaxing the check for
pendingFrames - if the expected present time of the previous frame was
earlier than the actual present time then that frame was missed. We add
half a vsync of slop to correct for scheduling drift.

Bug: 143647283
Test: boots
Test: systrace
Change-Id: I0f76d06737f5182c512ca6f36b332b68192250c3
parent 89290018
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment