From 21be43e142a6fcb3283d7b2da14eb39b690cf643 Mon Sep 17 00:00:00 2001 From: John Reck Date: Thu, 14 Aug 2014 10:25:16 -0700 Subject: [PATCH] Fix hwuitask & RT priorities Bug: 15993695 Change-Id: Ib6f07237cb834e8d10f3074f8fb206d27f91859a --- libs/hwui/renderthread/RenderThread.cpp | 6 ++++++ libs/hwui/thread/TaskManager.cpp | 10 ++++++++++ libs/hwui/thread/TaskManager.h | 1 + 3 files changed, 17 insertions(+) diff --git a/libs/hwui/renderthread/RenderThread.cpp b/libs/hwui/renderthread/RenderThread.cpp index 03e98d5b2f03b..68033dca7c553 100644 --- a/libs/hwui/renderthread/RenderThread.cpp +++ b/libs/hwui/renderthread/RenderThread.cpp @@ -18,6 +18,9 @@ #include "RenderThread.h" +#if defined(HAVE_PTHREADS) +#include +#endif #include #include @@ -244,6 +247,9 @@ void RenderThread::requestVsync() { } bool RenderThread::threadLoop() { +#if defined(HAVE_PTHREADS) + setpriority(PRIO_PROCESS, 0, PRIORITY_DISPLAY); +#endif initThreadLocals(); int timeoutMillis = -1; diff --git a/libs/hwui/thread/TaskManager.cpp b/libs/hwui/thread/TaskManager.cpp index 3d2b0d948c131..cb5401cb86e8d 100644 --- a/libs/hwui/thread/TaskManager.cpp +++ b/libs/hwui/thread/TaskManager.cpp @@ -15,6 +15,9 @@ */ #include +#if defined(HAVE_PTHREADS) +#include +#endif #include "TaskManager.h" #include "Task.h" @@ -79,6 +82,13 @@ bool TaskManager::addTaskBase(const sp& task, const sp tasks; diff --git a/libs/hwui/thread/TaskManager.h b/libs/hwui/thread/TaskManager.h index f2a216fd2bdf1..5a933abc1dc2a 100644 --- a/libs/hwui/thread/TaskManager.h +++ b/libs/hwui/thread/TaskManager.h @@ -84,6 +84,7 @@ private: void exit(); private: + virtual status_t readyToRun(); virtual bool threadLoop(); // Lock for the list of tasks