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

Commit 7c60b886 authored by Leon Scroggins's avatar Leon Scroggins Committed by Android (Google) Code Review
Browse files

Merge "Read prop for Skia tracing after boot"

parents 77136173 a37ca99f
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -194,6 +194,8 @@ public:
    // Returns the tid of the renderengine thread if it's threaded, and std::nullopt otherwise
    virtual std::optional<pid_t> getRenderEngineTid() const { return std::nullopt; }

    virtual void setEnableTracing(bool /*tracingEnabled*/) {}

protected:
    RenderEngine() : RenderEngine(RenderEngineType::GLES) {}

+4 −4
Original line number Diff line number Diff line
@@ -20,15 +20,15 @@

#include "SkiaRenderEngine.h"

#include <android-base/properties.h>
#include <src/core/SkTraceEventCommon.h>

namespace android {
namespace renderengine {
namespace skia {
SkiaRenderEngine::SkiaRenderEngine(RenderEngineType type) : RenderEngine(type) {
    SkAndroidFrameworkTraceUtil::setEnableTracing(
            base::GetBoolProperty(PROPERTY_SKIA_ATRACE_ENABLED, false));
SkiaRenderEngine::SkiaRenderEngine(RenderEngineType type) : RenderEngine(type) {}

void SkiaRenderEngine::setEnableTracing(bool tracingEnabled) {
    SkAndroidFrameworkTraceUtil::setEnableTracing(tracingEnabled);
}
} // namespace skia
} // namespace renderengine
+1 −0
Original line number Diff line number Diff line
@@ -47,6 +47,7 @@ public:
    virtual int getContextPriority() override { return 0; }
    virtual void assertShadersCompiled(int numShaders) {}
    virtual int reportShadersCompiled() { return 0; }
    virtual void setEnableTracing(bool tracingEnabled) override;

protected:
    virtual void mapExternalTextureBuffer(const sp<GraphicBuffer>& /*buffer*/,
+12 −0
Original line number Diff line number Diff line
@@ -403,6 +403,18 @@ std::optional<pid_t> RenderEngineThreaded::getRenderEngineTid() const {
    return std::make_optional(tidFuture.get());
}

void RenderEngineThreaded::setEnableTracing(bool tracingEnabled) {
    // This function is designed so it can run asynchronously, so we do not need to wait
    // for the futures.
    {
        std::lock_guard lock(mThreadMutex);
        mFunctionCalls.push([tracingEnabled](renderengine::RenderEngine& instance) {
            ATRACE_NAME("REThreaded::setEnableTracing");
            instance.setEnableTracing(tracingEnabled);
        });
    }
    mCondition.notify_one();
}
} // namespace threaded
} // namespace renderengine
} // namespace android
+1 −0
Original line number Diff line number Diff line
@@ -67,6 +67,7 @@ public:
    bool supportsBackgroundBlur() override;
    void onActiveDisplaySizeChanged(ui::Size size) override;
    std::optional<pid_t> getRenderEngineTid() const override;
    void setEnableTracing(bool tracingEnabled) override;

protected:
    void mapExternalTextureBuffer(const sp<GraphicBuffer>& buffer, bool isRenderable) override;
Loading