From 0d5c60edf11fdded738acf3f78a0c667599cd60d Mon Sep 17 00:00:00 2001 From: Jamie Gennis Date: Wed, 9 Oct 2013 17:49:37 -0700 Subject: [PATCH] DispSync: don't compensate for wakeup latency This change removes the wakeup latency compensation from the software-generated vsync events. Choreographer can't handle timestamps in the future, so don't aim for early wake-ups with the expectation that the actual wake-up will be late. Bug: 11153576 --- services/surfaceflinger/DispSync.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/services/surfaceflinger/DispSync.cpp b/services/surfaceflinger/DispSync.cpp index 7e6713851..bff304e3e 100644 --- a/services/surfaceflinger/DispSync.cpp +++ b/services/surfaceflinger/DispSync.cpp @@ -110,7 +110,7 @@ public: } nextEventTime = computeNextEventTimeLocked(now); - targetTime = nextEventTime - mWakeupLatency; + targetTime = nextEventTime; bool isWakeup = false; @@ -228,7 +228,7 @@ private: nsecs_t t = computeListenerNextEventTimeLocked(mEventListeners[i], ref); - if (t - mWakeupLatency < now) { + if (t < now) { CallbackInvocation ci; ci.mCallback = mEventListeners[i].mCallback; ci.mEventTime = t;