Loading services/surfaceflinger/SurfaceFlinger.cpp +10 −4 Original line number Diff line number Diff line Loading @@ -1000,6 +1000,7 @@ void SurfaceFlinger::setActiveConfigInternal() { } bool SurfaceFlinger::performSetActiveConfig() NO_THREAD_SAFETY_ANALYSIS { ATRACE_CALL(); // we may be in the process of changing the active state if (mWaitForNextInvalidate) { mWaitForNextInvalidate = false; Loading Loading @@ -1512,6 +1513,7 @@ void SurfaceFlinger::resetDisplayState() { } void SurfaceFlinger::updateVrFlinger() { ATRACE_CALL(); if (!mVrFlinger) return; bool vrFlingerRequestsDisplay = mVrFlingerRequestsDisplay; Loading Loading @@ -1606,13 +1608,16 @@ void SurfaceFlinger::onMessageReceived(int32_t what) { // of video detection feature. mScheduler->incrementFrameCounter(); } bool frameMissed = !mHadClientComposition && mPreviousPresentFence != Fence::NO_FENCE && bool frameMissed = mPreviousPresentFence != Fence::NO_FENCE && (mPreviousPresentFence->getStatus() == Fence::Status::Unsignaled); mFrameMissedCount += frameMissed; ATRACE_INT("FrameMissed", static_cast<int>(frameMissed)); bool hwcFrameMissed = !mHadClientComposition && frameMissed; if (frameMissed) { ATRACE_INT("FrameMissed", static_cast<int>(frameMissed)); mFrameMissedCount++; mTimeStats->incrementMissedFrames(); } // For now, only propagate backpressure when missing a hwc frame. if (hwcFrameMissed) { if (mPropagateBackpressure) { signalLayerUpdate(); break; Loading Loading @@ -1647,6 +1652,7 @@ void SurfaceFlinger::onMessageReceived(int32_t what) { } bool SurfaceFlinger::handleMessageTransaction() { ATRACE_CALL(); uint32_t transactionFlags = peekTransactionFlags(); // Apply any ready transactions in the queues if there are still transactions that have not been Loading Loading
services/surfaceflinger/SurfaceFlinger.cpp +10 −4 Original line number Diff line number Diff line Loading @@ -1000,6 +1000,7 @@ void SurfaceFlinger::setActiveConfigInternal() { } bool SurfaceFlinger::performSetActiveConfig() NO_THREAD_SAFETY_ANALYSIS { ATRACE_CALL(); // we may be in the process of changing the active state if (mWaitForNextInvalidate) { mWaitForNextInvalidate = false; Loading Loading @@ -1512,6 +1513,7 @@ void SurfaceFlinger::resetDisplayState() { } void SurfaceFlinger::updateVrFlinger() { ATRACE_CALL(); if (!mVrFlinger) return; bool vrFlingerRequestsDisplay = mVrFlingerRequestsDisplay; Loading Loading @@ -1606,13 +1608,16 @@ void SurfaceFlinger::onMessageReceived(int32_t what) { // of video detection feature. mScheduler->incrementFrameCounter(); } bool frameMissed = !mHadClientComposition && mPreviousPresentFence != Fence::NO_FENCE && bool frameMissed = mPreviousPresentFence != Fence::NO_FENCE && (mPreviousPresentFence->getStatus() == Fence::Status::Unsignaled); mFrameMissedCount += frameMissed; ATRACE_INT("FrameMissed", static_cast<int>(frameMissed)); bool hwcFrameMissed = !mHadClientComposition && frameMissed; if (frameMissed) { ATRACE_INT("FrameMissed", static_cast<int>(frameMissed)); mFrameMissedCount++; mTimeStats->incrementMissedFrames(); } // For now, only propagate backpressure when missing a hwc frame. if (hwcFrameMissed) { if (mPropagateBackpressure) { signalLayerUpdate(); break; Loading Loading @@ -1647,6 +1652,7 @@ void SurfaceFlinger::onMessageReceived(int32_t what) { } bool SurfaceFlinger::handleMessageTransaction() { ATRACE_CALL(); uint32_t transactionFlags = peekTransactionFlags(); // Apply any ready transactions in the queues if there are still transactions that have not been Loading