Loading cmds/installd/dexopt.cpp +0 −5 Original line number Diff line number Diff line Loading @@ -1273,11 +1273,6 @@ class Dex2oatFileWrapper { Dex2oatFileWrapper maybe_open_app_image(const char* out_oat_path, bool generate_app_image, bool is_public, int uid, bool is_secondary_dex) { // We don't create an image for secondary dex files. if (is_secondary_dex) { return Dex2oatFileWrapper(); } const std::string image_path = create_image_filename(out_oat_path); if (image_path.empty()) { // Happens when the out_oat_path has an unknown extension. Loading libs/renderengine/gl/GLFramebuffer.cpp +0 −25 Original line number Diff line number Diff line Loading @@ -32,23 +32,14 @@ namespace renderengine { namespace gl { GLFramebuffer::GLFramebuffer(GLESRenderEngine& engine) : GLFramebuffer(engine, false /* multiTarget */) {} GLFramebuffer::GLFramebuffer(GLESRenderEngine& engine, bool multiTarget) : mEngine(engine), mEGLDisplay(engine.getEGLDisplay()), mEGLImage(EGL_NO_IMAGE_KHR) { glGenTextures(1, &mTextureName); if (multiTarget) { glGenTextures(1, &mSecondaryTextureName); } glGenFramebuffers(1, &mFramebufferName); } GLFramebuffer::~GLFramebuffer() { glDeleteFramebuffers(1, &mFramebufferName); glDeleteTextures(1, &mTextureName); if (mSecondaryTextureName != -1) { glDeleteTextures(1, &mSecondaryTextureName); } } bool GLFramebuffer::setNativeWindowBuffer(ANativeWindowBuffer* nativeBuffer, bool isProtected, Loading Loading @@ -87,28 +78,12 @@ void GLFramebuffer::allocateBuffers(uint32_t width, uint32_t height) { glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_MIRRORED_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_MIRRORED_REPEAT); const bool multiTarget = mSecondaryTextureName != -1; if (multiTarget) { glBindTexture(GL_TEXTURE_2D, mSecondaryTextureName); glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_RGB, GL_UNSIGNED_BYTE, nullptr); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_MIRRORED_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_MIRRORED_REPEAT); } mBufferHeight = height; mBufferWidth = width; mEngine.checkErrors("Allocating Fbo texture"); bind(); glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, mTextureName, 0); if (multiTarget) { glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT1_EXT, GL_TEXTURE_2D, mSecondaryTextureName, 0); GLenum buffers[] = {GL_COLOR_ATTACHMENT0_EXT, GL_COLOR_ATTACHMENT1_EXT}; glDrawBuffers(2, buffers); } mStatus = glCheckFramebufferStatus(GL_FRAMEBUFFER); unbind(); glBindTexture(GL_TEXTURE_2D, 0); Loading libs/renderengine/gl/GLFramebuffer.h +0 −2 Original line number Diff line number Diff line Loading @@ -42,7 +42,6 @@ public: void allocateBuffers(uint32_t width, uint32_t height); EGLImageKHR getEGLImage() const { return mEGLImage; } uint32_t getTextureName() const { return mTextureName; } uint32_t getSecondaryTextureName() const { return mSecondaryTextureName; } uint32_t getFramebufferName() const { return mFramebufferName; } int32_t getBufferHeight() const { return mBufferHeight; } int32_t getBufferWidth() const { return mBufferWidth; } Loading @@ -59,7 +58,6 @@ private: bool usingFramebufferCache = false; GLenum mStatus = GL_FRAMEBUFFER_UNSUPPORTED; uint32_t mTextureName, mFramebufferName; uint32_t mSecondaryTextureName = -1; int32_t mBufferHeight = 0; int32_t mBufferWidth = 0; Loading services/gpuservice/gpustats/GpuStats.cpp +16 −9 Original line number Diff line number Diff line Loading @@ -30,17 +30,12 @@ namespace android { GpuStats::GpuStats() { AStatsManager_registerPullAtomCallback(android::util::GPU_STATS_GLOBAL_INFO, GpuStats::pullAtomCallback, nullptr, this); AStatsManager_registerPullAtomCallback(android::util::GPU_STATS_APP_INFO, GpuStats::pullAtomCallback, nullptr, this); } GpuStats::~GpuStats() { if (mStatsdRegistered) { AStatsManager_unregisterPullAtomCallback(android::util::GPU_STATS_GLOBAL_INFO); AStatsManager_unregisterPullAtomCallback(android::util::GPU_STATS_APP_INFO); } } static void addLoadingCount(GpuStatsInfo::Driver driver, bool isDriverLoaded, GpuStatsGlobalInfo* const outGlobalInfo) { Loading Loading @@ -97,6 +92,7 @@ void GpuStats::insertDriverStats(const std::string& driverPackageName, ATRACE_CALL(); std::lock_guard<std::mutex> lock(mLock); registerStatsdCallbacksIfNeeded(); ALOGV("Received:\n" "\tdriverPackageName[%s]\n" "\tdriverVersionName[%s]\n" Loading Loading @@ -150,6 +146,7 @@ void GpuStats::insertTargetStats(const std::string& appPackageName, const std::string appStatsKey = appPackageName + std::to_string(driverVersionCode); std::lock_guard<std::mutex> lock(mLock); registerStatsdCallbacksIfNeeded(); if (!mAppStats.count(appStatsKey)) { return; } Loading Loading @@ -179,6 +176,16 @@ void GpuStats::interceptSystemDriverStatsLocked() { mGlobalStats[0].glesVersion = property_get_int32("ro.opengles.version", 0); } void GpuStats::registerStatsdCallbacksIfNeeded() { if (!mStatsdRegistered) { AStatsManager_registerPullAtomCallback(android::util::GPU_STATS_GLOBAL_INFO, GpuStats::pullAtomCallback, nullptr, this); AStatsManager_registerPullAtomCallback(android::util::GPU_STATS_APP_INFO, GpuStats::pullAtomCallback, nullptr, this); mStatsdRegistered = true; } } void GpuStats::dump(const Vector<String16>& args, std::string* result) { ATRACE_CALL(); Loading services/gpuservice/gpustats/include/gpustats/GpuStats.h +4 −1 Original line number Diff line number Diff line Loading @@ -30,7 +30,6 @@ namespace android { class GpuStats { public: GpuStats(); ~GpuStats(); // Insert new gpu driver stats into global stats and app stats. Loading Loading @@ -66,12 +65,16 @@ private: void dumpAppLocked(std::string* result); // Append cpuVulkanVersion and glesVersion to system driver stats void interceptSystemDriverStatsLocked(); // Registers statsd callbacks if they have not already been registered void registerStatsdCallbacksIfNeeded(); // Below limits the memory usage of GpuStats to be less than 10KB. This is // the preferred number for statsd while maintaining nice data quality. static const size_t MAX_NUM_APP_RECORDS = 100; // GpuStats access should be guarded by mLock. std::mutex mLock; // True if statsd callbacks have been registered. bool mStatsdRegistered = false; // Key is driver version code. std::unordered_map<uint64_t, GpuStatsGlobalInfo> mGlobalStats; // Key is <app package name>+<driver version code>. Loading Loading
cmds/installd/dexopt.cpp +0 −5 Original line number Diff line number Diff line Loading @@ -1273,11 +1273,6 @@ class Dex2oatFileWrapper { Dex2oatFileWrapper maybe_open_app_image(const char* out_oat_path, bool generate_app_image, bool is_public, int uid, bool is_secondary_dex) { // We don't create an image for secondary dex files. if (is_secondary_dex) { return Dex2oatFileWrapper(); } const std::string image_path = create_image_filename(out_oat_path); if (image_path.empty()) { // Happens when the out_oat_path has an unknown extension. Loading
libs/renderengine/gl/GLFramebuffer.cpp +0 −25 Original line number Diff line number Diff line Loading @@ -32,23 +32,14 @@ namespace renderengine { namespace gl { GLFramebuffer::GLFramebuffer(GLESRenderEngine& engine) : GLFramebuffer(engine, false /* multiTarget */) {} GLFramebuffer::GLFramebuffer(GLESRenderEngine& engine, bool multiTarget) : mEngine(engine), mEGLDisplay(engine.getEGLDisplay()), mEGLImage(EGL_NO_IMAGE_KHR) { glGenTextures(1, &mTextureName); if (multiTarget) { glGenTextures(1, &mSecondaryTextureName); } glGenFramebuffers(1, &mFramebufferName); } GLFramebuffer::~GLFramebuffer() { glDeleteFramebuffers(1, &mFramebufferName); glDeleteTextures(1, &mTextureName); if (mSecondaryTextureName != -1) { glDeleteTextures(1, &mSecondaryTextureName); } } bool GLFramebuffer::setNativeWindowBuffer(ANativeWindowBuffer* nativeBuffer, bool isProtected, Loading Loading @@ -87,28 +78,12 @@ void GLFramebuffer::allocateBuffers(uint32_t width, uint32_t height) { glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_MIRRORED_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_MIRRORED_REPEAT); const bool multiTarget = mSecondaryTextureName != -1; if (multiTarget) { glBindTexture(GL_TEXTURE_2D, mSecondaryTextureName); glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_RGB, GL_UNSIGNED_BYTE, nullptr); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_MIRRORED_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_MIRRORED_REPEAT); } mBufferHeight = height; mBufferWidth = width; mEngine.checkErrors("Allocating Fbo texture"); bind(); glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, mTextureName, 0); if (multiTarget) { glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT1_EXT, GL_TEXTURE_2D, mSecondaryTextureName, 0); GLenum buffers[] = {GL_COLOR_ATTACHMENT0_EXT, GL_COLOR_ATTACHMENT1_EXT}; glDrawBuffers(2, buffers); } mStatus = glCheckFramebufferStatus(GL_FRAMEBUFFER); unbind(); glBindTexture(GL_TEXTURE_2D, 0); Loading
libs/renderengine/gl/GLFramebuffer.h +0 −2 Original line number Diff line number Diff line Loading @@ -42,7 +42,6 @@ public: void allocateBuffers(uint32_t width, uint32_t height); EGLImageKHR getEGLImage() const { return mEGLImage; } uint32_t getTextureName() const { return mTextureName; } uint32_t getSecondaryTextureName() const { return mSecondaryTextureName; } uint32_t getFramebufferName() const { return mFramebufferName; } int32_t getBufferHeight() const { return mBufferHeight; } int32_t getBufferWidth() const { return mBufferWidth; } Loading @@ -59,7 +58,6 @@ private: bool usingFramebufferCache = false; GLenum mStatus = GL_FRAMEBUFFER_UNSUPPORTED; uint32_t mTextureName, mFramebufferName; uint32_t mSecondaryTextureName = -1; int32_t mBufferHeight = 0; int32_t mBufferWidth = 0; Loading
services/gpuservice/gpustats/GpuStats.cpp +16 −9 Original line number Diff line number Diff line Loading @@ -30,17 +30,12 @@ namespace android { GpuStats::GpuStats() { AStatsManager_registerPullAtomCallback(android::util::GPU_STATS_GLOBAL_INFO, GpuStats::pullAtomCallback, nullptr, this); AStatsManager_registerPullAtomCallback(android::util::GPU_STATS_APP_INFO, GpuStats::pullAtomCallback, nullptr, this); } GpuStats::~GpuStats() { if (mStatsdRegistered) { AStatsManager_unregisterPullAtomCallback(android::util::GPU_STATS_GLOBAL_INFO); AStatsManager_unregisterPullAtomCallback(android::util::GPU_STATS_APP_INFO); } } static void addLoadingCount(GpuStatsInfo::Driver driver, bool isDriverLoaded, GpuStatsGlobalInfo* const outGlobalInfo) { Loading Loading @@ -97,6 +92,7 @@ void GpuStats::insertDriverStats(const std::string& driverPackageName, ATRACE_CALL(); std::lock_guard<std::mutex> lock(mLock); registerStatsdCallbacksIfNeeded(); ALOGV("Received:\n" "\tdriverPackageName[%s]\n" "\tdriverVersionName[%s]\n" Loading Loading @@ -150,6 +146,7 @@ void GpuStats::insertTargetStats(const std::string& appPackageName, const std::string appStatsKey = appPackageName + std::to_string(driverVersionCode); std::lock_guard<std::mutex> lock(mLock); registerStatsdCallbacksIfNeeded(); if (!mAppStats.count(appStatsKey)) { return; } Loading Loading @@ -179,6 +176,16 @@ void GpuStats::interceptSystemDriverStatsLocked() { mGlobalStats[0].glesVersion = property_get_int32("ro.opengles.version", 0); } void GpuStats::registerStatsdCallbacksIfNeeded() { if (!mStatsdRegistered) { AStatsManager_registerPullAtomCallback(android::util::GPU_STATS_GLOBAL_INFO, GpuStats::pullAtomCallback, nullptr, this); AStatsManager_registerPullAtomCallback(android::util::GPU_STATS_APP_INFO, GpuStats::pullAtomCallback, nullptr, this); mStatsdRegistered = true; } } void GpuStats::dump(const Vector<String16>& args, std::string* result) { ATRACE_CALL(); Loading
services/gpuservice/gpustats/include/gpustats/GpuStats.h +4 −1 Original line number Diff line number Diff line Loading @@ -30,7 +30,6 @@ namespace android { class GpuStats { public: GpuStats(); ~GpuStats(); // Insert new gpu driver stats into global stats and app stats. Loading Loading @@ -66,12 +65,16 @@ private: void dumpAppLocked(std::string* result); // Append cpuVulkanVersion and glesVersion to system driver stats void interceptSystemDriverStatsLocked(); // Registers statsd callbacks if they have not already been registered void registerStatsdCallbacksIfNeeded(); // Below limits the memory usage of GpuStats to be less than 10KB. This is // the preferred number for statsd while maintaining nice data quality. static const size_t MAX_NUM_APP_RECORDS = 100; // GpuStats access should be guarded by mLock. std::mutex mLock; // True if statsd callbacks have been registered. bool mStatsdRegistered = false; // Key is driver version code. std::unordered_map<uint64_t, GpuStatsGlobalInfo> mGlobalStats; // Key is <app package name>+<driver version code>. Loading