summaryrefslogtreecommitdiff
path: root/services/surfaceflinger/DispSync.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'services/surfaceflinger/DispSync.cpp')
-rw-r--r--services/surfaceflinger/DispSync.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/services/surfaceflinger/DispSync.cpp b/services/surfaceflinger/DispSync.cpp
index 37b642015f..1a9820d95e 100644
--- a/services/surfaceflinger/DispSync.cpp
+++ b/services/surfaceflinger/DispSync.cpp
@@ -383,6 +383,13 @@ DispSync::DispSync(const char* name) :
mThread(new DispSyncThread(name)) {
mThread->run("DispSync", PRIORITY_URGENT_DISPLAY + PRIORITY_MORE_FAVORABLE);
+ // set DispSync to SCHED_FIFO to minimize jitter
+ struct sched_param param = {0};
+ param.sched_priority = 2;
+ if (sched_setscheduler(mThread->getTid(), SCHED_FIFO, &param) != 0) {
+ ALOGE("Couldn't set SCHED_FIFO for DispSyncThread");
+ }
+
reset();
beginResync();