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

Commit 9bc115d9 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "GpuStats: plumb Vulkan api version" into qt-dev

parents bbd8ad6f 794d295a
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -34,6 +34,7 @@ status_t GpuStatsGlobalInfo::writeToParcel(Parcel* parcel) const {
    if ((status = parcel->writeInt32(glLoadingFailureCount)) != OK) return status;
    if ((status = parcel->writeInt32(vkLoadingCount)) != OK) return status;
    if ((status = parcel->writeInt32(vkLoadingFailureCount)) != OK) return status;
    if ((status = parcel->writeInt32(vulkanVersion)) != OK) return status;
    return OK;
}

@@ -47,6 +48,7 @@ status_t GpuStatsGlobalInfo::readFromParcel(const Parcel* parcel) {
    if ((status = parcel->readInt32(&glLoadingFailureCount)) != OK) return status;
    if ((status = parcel->readInt32(&vkLoadingCount)) != OK) return status;
    if ((status = parcel->readInt32(&vkLoadingFailureCount)) != OK) return status;
    if ((status = parcel->readInt32(&vulkanVersion)) != OK) return status;
    return OK;
}

@@ -60,6 +62,7 @@ std::string GpuStatsGlobalInfo::toString() const {
    StringAppendF(&result, "glLoadingFailureCount = %d\n", glLoadingFailureCount);
    StringAppendF(&result, "vkLoadingCount = %d\n", vkLoadingCount);
    StringAppendF(&result, "vkLoadingFailureCount = %d\n", vkLoadingFailureCount);
    StringAppendF(&result, "vulkanVersion = %d\n", vulkanVersion);
    return result;
}

+10 −6
Original line number Diff line number Diff line
@@ -162,7 +162,8 @@ void GraphicsEnv::setDriverPathAndSphalLibraries(const std::string path,

void GraphicsEnv::setGpuStats(const std::string& driverPackageName,
                              const std::string& driverVersionName, uint64_t driverVersionCode,
                              int64_t driverBuildTime, const std::string& appPackageName) {
                              int64_t driverBuildTime, const std::string& appPackageName,
                              const int vulkanVersion) {
    ATRACE_CALL();

    std::lock_guard<std::mutex> lock(mStatsLock);
@@ -171,15 +172,17 @@ void GraphicsEnv::setGpuStats(const std::string& driverPackageName,
          "\tdriverVersionName[%s]\n"
          "\tdriverVersionCode[%" PRIu64 "]\n"
          "\tdriverBuildTime[%" PRId64 "]\n"
          "\tappPackageName[%s]\n",
          "\tappPackageName[%s]\n"
          "\tvulkanVersion[%d]\n",
          driverPackageName.c_str(), driverVersionName.c_str(), driverVersionCode, driverBuildTime,
          appPackageName.c_str());
          appPackageName.c_str(), vulkanVersion);

    mGpuStats.driverPackageName = driverPackageName;
    mGpuStats.driverVersionName = driverVersionName;
    mGpuStats.driverVersionCode = driverVersionCode;
    mGpuStats.driverBuildTime = driverBuildTime;
    mGpuStats.appPackageName = appPackageName;
    mGpuStats.vulkanVersion = vulkanVersion;
}

void GraphicsEnv::setDriverToLoad(GraphicsEnv::Driver driver) {
@@ -270,19 +273,20 @@ void GraphicsEnv::sendGpuStatsLocked(GraphicsEnv::Driver driver, bool isDriverLo
          "\tdriverVersionCode[%" PRIu64 "]\n"
          "\tdriverBuildTime[%" PRId64 "]\n"
          "\tappPackageName[%s]\n"
          "\tvulkanVersion[%d]\n"
          "\tdriver[%d]\n"
          "\tisDriverLoaded[%d]\n"
          "\tdriverLoadingTime[%" PRId64 "]",
          mGpuStats.driverPackageName.c_str(), mGpuStats.driverVersionName.c_str(),
          mGpuStats.driverVersionCode, mGpuStats.driverBuildTime, mGpuStats.appPackageName.c_str(),
          static_cast<int32_t>(driver), isDriverLoaded, driverLoadingTime);
          mGpuStats.vulkanVersion, static_cast<int32_t>(driver), isDriverLoaded, driverLoadingTime);

    const sp<IGpuService> gpuService = getGpuService();
    if (gpuService) {
        gpuService->setGpuStats(mGpuStats.driverPackageName, mGpuStats.driverVersionName,
                                mGpuStats.driverVersionCode, mGpuStats.driverBuildTime,
                                mGpuStats.appPackageName, driver, isDriverLoaded,
                                driverLoadingTime);
                                mGpuStats.appPackageName, mGpuStats.vulkanVersion, driver,
                                isDriverLoaded, driverLoadingTime);
    }
}

+8 −4
Original line number Diff line number Diff line
@@ -30,8 +30,8 @@ public:
    virtual void setGpuStats(const std::string& driverPackageName,
                             const std::string& driverVersionName, uint64_t driverVersionCode,
                             int64_t driverBuildTime, const std::string& appPackageName,
                             GraphicsEnv::Driver driver, bool isDriverLoaded,
                             int64_t driverLoadingTime) {
                             const int32_t vulkanVersion, GraphicsEnv::Driver driver,
                             bool isDriverLoaded, int64_t driverLoadingTime) {
        Parcel data, reply;
        data.writeInterfaceToken(IGpuService::getInterfaceDescriptor());

@@ -40,6 +40,7 @@ public:
        data.writeUint64(driverVersionCode);
        data.writeInt64(driverBuildTime);
        data.writeUtf8AsUtf16(appPackageName);
        data.writeInt32(vulkanVersion);
        data.writeInt32(static_cast<int32_t>(driver));
        data.writeBool(isDriverLoaded);
        data.writeInt64(driverLoadingTime);
@@ -118,6 +119,9 @@ status_t BnGpuService::onTransact(uint32_t code, const Parcel& data, Parcel* rep
            std::string appPackageName;
            if ((status = data.readUtf8FromUtf16(&appPackageName)) != OK) return status;

            int32_t vulkanVersion;
            if ((status = data.readInt32(&vulkanVersion)) != OK) return status;

            int32_t driver;
            if ((status = data.readInt32(&driver)) != OK) return status;

@@ -128,8 +132,8 @@ status_t BnGpuService::onTransact(uint32_t code, const Parcel& data, Parcel* rep
            if ((status = data.readInt64(&driverLoadingTime)) != OK) return status;

            setGpuStats(driverPackageName, driverVersionName, driverVersionCode, driverBuildTime,
                        appPackageName, static_cast<GraphicsEnv::Driver>(driver), isDriverLoaded,
                        driverLoadingTime);
                        appPackageName, vulkanVersion, static_cast<GraphicsEnv::Driver>(driver),
                        isDriverLoaded, driverLoadingTime);

            return OK;
        }
+1 −0
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@ public:
    int32_t glLoadingFailureCount = 0;
    int32_t vkLoadingCount = 0;
    int32_t vkLoadingFailureCount = 0;
    int32_t vulkanVersion = 0;
};

/*
+3 −1
Original line number Diff line number Diff line
@@ -50,6 +50,7 @@ private:
        uint64_t driverVersionCode;
        int64_t driverBuildTime;
        std::string appPackageName;
        int32_t vulkanVersion;
        Driver glDriverToLoad;
        Driver glDriverFallback;
        Driver vkDriverToLoad;
@@ -61,6 +62,7 @@ private:
                driverVersionCode(0),
                driverBuildTime(0),
                appPackageName(""),
                vulkanVersion(0),
                glDriverToLoad(Driver::NONE),
                glDriverFallback(Driver::NONE),
                vkDriverToLoad(Driver::NONE),
@@ -84,7 +86,7 @@ public:
    android_namespace_t* getDriverNamespace();
    void setGpuStats(const std::string& driverPackageName, const std::string& driverVersionName,
                     uint64_t versionCode, int64_t driverBuildTime,
                     const std::string& appPackageName);
                     const std::string& appPackageName, const int32_t vulkanVersion);
    void setDriverToLoad(Driver driver);
    void setDriverLoaded(Api api, bool isDriverLoaded, int64_t driverLoadingTime);
    void clearDriverLoadingInfo(Api api);
Loading