diff options
| author | 2021-10-22 08:53:11 +0000 | |
|---|---|---|
| committer | 2021-11-02 06:07:23 +0000 | |
| commit | fc690e2a2d1d3cf08d71a02c4ecd14665c0f2039 (patch) | |
| tree | 5f544acfda56e768309fb124b5c73dbc0825084d /libs/jpegrecoverymap/jpegencoderhelper.cpp | |
| parent | 5f852b9c9bca236b01f8d59853d29fb6b6ee89b6 (diff) | |
Dispatch vsync when receiving vsync timeout to handle vsync loss.
Currently we do not have a mechanism to guarantee the arrival of the vsync signal. The vsync signal loss may occur when the renderNodeAnimator is running. The render thread took a long time to perform drawing without time to read the pipe, and the pipe was filled with other signals like configChanged, causing surfaceflinger to miss a vsync signal.
If a vsync lost, causing DisplayEventDispatcher::mWaitingForVsync to be true, resulting in DisplayEventDispatcher::scheduleVsync can no longer schedule another vsync. So we need to dispatch vsync when receiving vsync timeout.
Bug: 204097701
Test: Manual
Change-Id: Ibfa7a301ea17ebd58cae6b790a61d66c3d2e43fd
Signed-off-by: shicheng <shicheng@xiaomi.com>
Diffstat (limited to 'libs/jpegrecoverymap/jpegencoderhelper.cpp')
0 files changed, 0 insertions, 0 deletions