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

Commit 76554eb4 authored by Vishnu Nair's avatar Vishnu Nair
Browse files

SF: Identify layers with buffers when dumping offscreen list

Test: adb shell su root dumpsys SurfaceFlinger
Bug: 238781169
Change-Id: I6b1d051fedc5883df814fe5edc8aaa766cbd06f8
parent 52363196
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -1472,8 +1472,9 @@ void Layer::getFrameStats(FrameStats* outStats) const {
    mFrameTracker.getStats(outStats);
}

void Layer::dumpCallingUidPid(std::string& result) const {
    StringAppendF(&result, "Layer %s (%s) ownerPid:%d ownerUid:%d\n", getName().c_str(), getType(),
void Layer::dumpOffscreenDebugInfo(std::string& result) const {
    std::string hasBuffer = hasBufferOrSidebandStream() ? " (contains buffer)" : "";
    StringAppendF(&result, "Layer %s%s pid:%d uid:%d\n", getName().c_str(), hasBuffer.c_str(),
                  mOwnerPid, mOwnerUid);
}

+1 −1
Original line number Diff line number Diff line
@@ -634,7 +634,7 @@ public:

    void miniDump(std::string& result, const DisplayDevice&) const;
    void dumpFrameStats(std::string& result) const;
    void dumpCallingUidPid(std::string& result) const;
    void dumpOffscreenDebugInfo(std::string& result) const;
    void clearFrameStats();
    void logFrameStats();
    void getFrameStats(FrameStats* outStats) const;
+1 −1
Original line number Diff line number Diff line
@@ -5143,7 +5143,7 @@ void SurfaceFlinger::dumpOffscreenLayers(std::string& result) {
        std::string result;
        for (Layer* offscreenLayer : mOffscreenLayers) {
            offscreenLayer->traverse(LayerVector::StateSet::Drawing,
                                     [&](Layer* layer) { layer->dumpCallingUidPid(result); });
                                     [&](Layer* layer) { layer->dumpOffscreenDebugInfo(result); });
        }
        return result;
    });