From 91b8d2d1ea18f47a455a8c386ee2511b123f7e22 Mon Sep 17 00:00:00 2001 From: Erik Wolsheimer Date: Wed, 28 Mar 2018 16:27:54 -0700 Subject: Make hwc_vsync thread realtime Bug: 68395248 Change-Id: I4ac93464aa2ccf416577b4067ed658b525089983 --- libhwcomposer/hwc_vsync.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libhwcomposer/hwc_vsync.cpp b/libhwcomposer/hwc_vsync.cpp index ed7198766..275ff371e 100644 --- a/libhwcomposer/hwc_vsync.cpp +++ b/libhwcomposer/hwc_vsync.cpp @@ -114,8 +114,11 @@ static void *vsync_loop(void *param) char thread_name[64] = HWC_VSYNC_THREAD_NAME; prctl(PR_SET_NAME, (unsigned long) &thread_name, 0, 0, 0); - setpriority(PRIO_PROCESS, 0, HAL_PRIORITY_URGENT_DISPLAY + - android::PRIORITY_MORE_FAVORABLE); + struct sched_param sched_param = {0}; + sched_param.sched_priority = 5; + if (sched_setscheduler(gettid(), SCHED_FIFO, &sched_param) != 0) { + ALOGE("Couldn't set SCHED_FIFO for hwc_vsync"); + } android_set_rt_ioprio(0, 1); char vdata[MAX_DATA]; -- cgit v1.2.3