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

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

Merge changes from topic "new-puller-migration"

* changes:
  GpuStats: migrate to new statsd native puller api (part 3)
  GpuStats: migrate to new statsd native puller api (part 2)
  GpuStats: migrate to new statsd native puller api (part 1)
parents 82b5b24a 29f8593e
Loading
Loading
Loading
Loading
+0 −70
Original line number Original line Diff line number Diff line
@@ -48,50 +48,6 @@ public:
        remote()->transact(BnGpuService::SET_GPU_STATS, data, &reply, IBinder::FLAG_ONEWAY);
        remote()->transact(BnGpuService::SET_GPU_STATS, data, &reply, IBinder::FLAG_ONEWAY);
    }
    }


    virtual status_t getGpuStatsGlobalInfo(std::vector<GpuStatsGlobalInfo>* outStats) const {
        if (!outStats) return UNEXPECTED_NULL;

        Parcel data, reply;
        status_t status;

        if ((status = data.writeInterfaceToken(IGpuService::getInterfaceDescriptor())) != OK)
            return status;

        if ((status = remote()->transact(BnGpuService::GET_GPU_STATS_GLOBAL_INFO, data, &reply)) !=
            OK)
            return status;

        int32_t result = 0;
        if ((status = reply.readInt32(&result)) != OK) return status;
        if (result != OK) return result;

        outStats->clear();
        return reply.readParcelableVector(outStats);
    }

    virtual status_t getGpuStatsAppInfo(std::vector<GpuStatsAppInfo>* outStats) const {
        if (!outStats) return UNEXPECTED_NULL;

        Parcel data, reply;
        status_t status;

        if ((status = data.writeInterfaceToken(IGpuService::getInterfaceDescriptor())) != OK) {
            return status;
        }

        if ((status = remote()->transact(BnGpuService::GET_GPU_STATS_APP_INFO, data, &reply)) !=
            OK) {
            return status;
        }

        int32_t result = 0;
        if ((status = reply.readInt32(&result)) != OK) return status;
        if (result != OK) return result;

        outStats->clear();
        return reply.readParcelableVector(outStats);
    }

    virtual void setTargetStats(const std::string& appPackageName, const uint64_t driverVersionCode,
    virtual void setTargetStats(const std::string& appPackageName, const uint64_t driverVersionCode,
                                const GpuStatsInfo::Stats stats, const uint64_t value) {
                                const GpuStatsInfo::Stats stats, const uint64_t value) {
        Parcel data, reply;
        Parcel data, reply;
@@ -150,32 +106,6 @@ status_t BnGpuService::onTransact(uint32_t code, const Parcel& data, Parcel* rep


            return OK;
            return OK;
        }
        }
        case GET_GPU_STATS_GLOBAL_INFO: {
            CHECK_INTERFACE(IGpuService, data, reply);

            std::vector<GpuStatsGlobalInfo> stats;
            const status_t result = getGpuStatsGlobalInfo(&stats);

            if ((status = reply->writeInt32(result)) != OK) return status;
            if (result != OK) return result;

            if ((status = reply->writeParcelableVector(stats)) != OK) return status;

            return OK;
        }
        case GET_GPU_STATS_APP_INFO: {
            CHECK_INTERFACE(IGpuService, data, reply);

            std::vector<GpuStatsAppInfo> stats;
            const status_t result = getGpuStatsAppInfo(&stats);

            if ((status = reply->writeInt32(result)) != OK) return status;
            if (result != OK) return result;

            if ((status = reply->writeParcelableVector(stats)) != OK) return status;

            return OK;
        }
        case SET_TARGET_STATS: {
        case SET_TARGET_STATS: {
            CHECK_INTERFACE(IGpuService, data, reply);
            CHECK_INTERFACE(IGpuService, data, reply);


+2 −11
Original line number Original line Diff line number Diff line
@@ -16,12 +16,11 @@


#pragma once
#pragma once


#include <vector>

#include <binder/IInterface.h>
#include <binder/IInterface.h>
#include <cutils/compiler.h>
#include <cutils/compiler.h>
#include <graphicsenv/GpuStatsInfo.h>
#include <graphicsenv/GpuStatsInfo.h>
#include <graphicsenv/GraphicsEnv.h>

#include <vector>


namespace android {
namespace android {


@@ -43,20 +42,12 @@ public:
    // set target stats.
    // set target stats.
    virtual void setTargetStats(const std::string& appPackageName, const uint64_t driverVersionCode,
    virtual void setTargetStats(const std::string& appPackageName, const uint64_t driverVersionCode,
                                const GpuStatsInfo::Stats stats, const uint64_t value = 0) = 0;
                                const GpuStatsInfo::Stats stats, const uint64_t value = 0) = 0;

    // get GPU global stats from GpuStats module.
    virtual status_t getGpuStatsGlobalInfo(std::vector<GpuStatsGlobalInfo>* outStats) const = 0;

    // get GPU app stats from GpuStats module.
    virtual status_t getGpuStatsAppInfo(std::vector<GpuStatsAppInfo>* outStats) const = 0;
};
};


class BnGpuService : public BnInterface<IGpuService> {
class BnGpuService : public BnInterface<IGpuService> {
public:
public:
    enum IGpuServiceTag {
    enum IGpuServiceTag {
        SET_GPU_STATS = IBinder::FIRST_CALL_TRANSACTION,
        SET_GPU_STATS = IBinder::FIRST_CALL_TRANSACTION,
        GET_GPU_STATS_GLOBAL_INFO,
        GET_GPU_STATS_APP_INFO,
        SET_TARGET_STATS,
        SET_TARGET_STATS,
        // Always append new enum to the end.
        // Always append new enum to the end.
    };
    };
+0 −10
Original line number Original line Diff line number Diff line
@@ -57,16 +57,6 @@ void GpuService::setGpuStats(const std::string& driverPackageName,
                                 isDriverLoaded, driverLoadingTime);
                                 isDriverLoaded, driverLoadingTime);
}
}


status_t GpuService::getGpuStatsGlobalInfo(std::vector<GpuStatsGlobalInfo>* outStats) const {
    mGpuStats->pullGlobalStats(outStats);
    return OK;
}

status_t GpuService::getGpuStatsAppInfo(std::vector<GpuStatsAppInfo>* outStats) const {
    mGpuStats->pullAppStats(outStats);
    return OK;
}

void GpuService::setTargetStats(const std::string& appPackageName, const uint64_t driverVersionCode,
void GpuService::setTargetStats(const std::string& appPackageName, const uint64_t driverVersionCode,
                                const GpuStatsInfo::Stats stats, const uint64_t value) {
                                const GpuStatsInfo::Stats stats, const uint64_t value) {
    mGpuStats->insertTargetStats(appPackageName, driverVersionCode, stats, value);
    mGpuStats->insertTargetStats(appPackageName, driverVersionCode, stats, value);
+0 −2
Original line number Original line Diff line number Diff line
@@ -48,8 +48,6 @@ private:
                     const std::string& appPackageName, const int32_t vulkanVersion,
                     const std::string& appPackageName, const int32_t vulkanVersion,
                     GpuStatsInfo::Driver driver, bool isDriverLoaded,
                     GpuStatsInfo::Driver driver, bool isDriverLoaded,
                     int64_t driverLoadingTime) override;
                     int64_t driverLoadingTime) override;
    status_t getGpuStatsGlobalInfo(std::vector<GpuStatsGlobalInfo>* outStats) const override;
    status_t getGpuStatsAppInfo(std::vector<GpuStatsAppInfo>* outStats) const override;
    void setTargetStats(const std::string& appPackageName, const uint64_t driverVersionCode,
    void setTargetStats(const std::string& appPackageName, const uint64_t driverVersionCode,
                        const GpuStatsInfo::Stats stats, const uint64_t value) override;
                        const GpuStatsInfo::Stats stats, const uint64_t value) override;


+8 −0
Original line number Original line Diff line number Diff line
@@ -7,9 +7,17 @@ cc_library_shared {
        "libcutils",
        "libcutils",
        "libgraphicsenv",
        "libgraphicsenv",
        "liblog",
        "liblog",
        "libprotoutil",
        "libstatslog",
        "libstatspull",
        "libstatssocket",
        "libutils",
        "libutils",
    ],
    ],
    export_include_dirs: ["include"],
    export_include_dirs: ["include"],
    export_shared_lib_headers: [
        "libstatspull",
        "libstatssocket",
    ],
    cppflags: [
    cppflags: [
        "-Wall",
        "-Wall",
        "-Werror",
        "-Werror",
Loading