summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorJamie Gennis <jgennis@google.com>2012-10-17 09:29:47 -0700
committerJamie Gennis <jgennis@google.com>2012-10-17 09:40:07 -0700
commit7c41bf7092b75dba6029cd3bbc842d3a2661b0aa (patch)
tree5653e1c2f5d3638bec44000f913b5a480370ccad /services
parent7f79a2bd5c92bc626890dc16ffb8cd2de934e5fb (diff)
downloadframeworks_native-7c41bf7092b75dba6029cd3bbc842d3a2661b0aa.zip
frameworks_native-7c41bf7092b75dba6029cd3bbc842d3a2661b0aa.tar.gz
frameworks_native-7c41bf7092b75dba6029cd3bbc842d3a2661b0aa.tar.bz2
SurfaceFlinger: change the animation timeout
This change changes the animation transaction timeout from 500us to 5s. Bug: 7362633 Change-Id: I9bed8e74f726dae2daa398afc29babcea00d5b04
Diffstat (limited to 'services')
-rw-r--r--services/surfaceflinger/SurfaceFlinger.cpp8
1 files changed, 5 insertions, 3 deletions
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<DisplayState>& 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;
}