From 7c41bf7092b75dba6029cd3bbc842d3a2661b0aa Mon Sep 17 00:00:00 2001 From: Jamie Gennis Date: Wed, 17 Oct 2012 09:29:47 -0700 Subject: SurfaceFlinger: change the animation timeout This change changes the animation transaction timeout from 500us to 5s. Bug: 7362633 Change-Id: I9bed8e74f726dae2daa398afc29babcea00d5b04 --- services/surfaceflinger/SurfaceFlinger.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'services') diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp index 13b2c6b..8e569be 100644 --- a/services/surfaceflinger/SurfaceFlinger.cpp +++ b/services/surfaceflinger/SurfaceFlinger.cpp @@ -1664,6 +1664,7 @@ void SurfaceFlinger::setTransactionState( const Vector& displays, uint32_t flags) { + ATRACE_CALL(); Mutex::Autolock _l(mStateLock); uint32_t transactionFlags = 0; @@ -1671,11 +1672,12 @@ void SurfaceFlinger::setTransactionState( // For window updates that are part of an animation we must wait for // previous animation "frames" to be handled. while (mAnimTransactionPending) { - status_t err = mTransactionCV.waitRelative(mStateLock, 500 * 1000); + status_t err = mTransactionCV.waitRelative(mStateLock, s2ns(5)); if (CC_UNLIKELY(err != NO_ERROR)) { // just in case something goes wrong in SF, return to the - // caller after a few hundred microseconds. - ALOGW_IF(err == TIMED_OUT, "setTransactionState timed out!"); + // caller after a few seconds. + ALOGW_IF(err == TIMED_OUT, "setTransactionState timed out " + "waiting for previous animation frame"); mAnimTransactionPending = false; break; } -- cgit v1.1