Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cfcdaa5c authored by Marissa Wall's avatar Marissa Wall
Browse files

surfaceflinger: Frame missed count added to dumpsys SF

Bug: 80090729
Test: adb shell dumpsys SurfaceFlinger

Change-Id: I36a38a54c600abefd279a9d2698a96d9df80ca68
parent a9b4fa2d
Loading
Loading
Loading
Loading
+3 −0
Original line number Original line Diff line number Diff line
@@ -1466,6 +1466,7 @@ void SurfaceFlinger::onMessageReceived(int32_t what) {
                    mPreviousPresentFence != Fence::NO_FENCE &&
                    mPreviousPresentFence != Fence::NO_FENCE &&
                    (mPreviousPresentFence->getSignalTime() ==
                    (mPreviousPresentFence->getSignalTime() ==
                            Fence::SIGNAL_TIME_PENDING);
                            Fence::SIGNAL_TIME_PENDING);
            mFrameMissedCount += frameMissed;
            ATRACE_INT("FrameMissed", static_cast<int>(frameMissed));
            ATRACE_INT("FrameMissed", static_cast<int>(frameMissed));
            if (frameMissed) {
            if (frameMissed) {
                mTimeStats.incrementMissedFrames();
                mTimeStats.incrementMissedFrames();
@@ -4340,6 +4341,8 @@ void SurfaceFlinger::dumpAllLocked(const Vector<String16>& args, size_t& index,
    dumpStaticScreenStats(result);
    dumpStaticScreenStats(result);
    result.append("\n");
    result.append("\n");


    result.appendFormat("Missed frame count: %u\n\n", mFrameMissedCount.load());

    dumpBufferingStats(result);
    dumpBufferingStats(result);


    /*
    /*
+1 −0
Original line number Original line Diff line number Diff line
@@ -840,6 +840,7 @@ private:
    LayerStats mLayerStats;
    LayerStats mLayerStats;
    TimeStats& mTimeStats = TimeStats::getInstance();
    TimeStats& mTimeStats = TimeStats::getInstance();
    bool mUseHwcVirtualDisplays = false;
    bool mUseHwcVirtualDisplays = false;
    std::atomic<uint32_t> mFrameMissedCount{0};


    // Restrict layers to use two buffers in their bufferqueues.
    // Restrict layers to use two buffers in their bufferqueues.
    bool mLayerTripleBufferingDisabled = false;
    bool mLayerTripleBufferingDisabled = false;