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

Commit de4883ba authored by Tim Murray's avatar Tim Murray Committed by android-build-merger
Browse files

Update SurfaceFlinger FIFO configuration. am: acff43dc am: 4d818bf2

am: 618f8aba

Change-Id: Ie003b648afb3b63abf8335d4332c22fcdd98c1d5
parents 1f81e804 618f8aba
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -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 = 1;
    if (sched_setscheduler(mThread->getTid(), SCHED_FIFO, &param) != 0) {
        ALOGE("Couldn't set SCHED_FIFO for DispSyncThread");
    }


    reset();
    beginResync();
+1 −6
Original line number Diff line number Diff line
@@ -479,18 +479,13 @@ void SurfaceFlinger::init() {
        mSFEventThread = new EventThread(sfVsyncSrc, *this);
        mEventQueue.setEventThread(mSFEventThread);

        // set EventThread and SFEventThread to SCHED_FIFO for minimum jitter
        // set SFEventThread to SCHED_FIFO to minimize jitter
        struct sched_param param = {0};
        param.sched_priority = 1;
        if (sched_setscheduler(mEventThread->getTid(), SCHED_FIFO, &param) != 0) {
            ALOGE("Couldn't set SCHED_FIFO for EventThread");
        }

        if (sched_setscheduler(mSFEventThread->getTid(), SCHED_FIFO, &param) != 0) {
            ALOGE("Couldn't set SCHED_FIFO for SFEventThread");
        }


        // Get a RenderEngine for the given display / config (can't fail)
        mRenderEngine = RenderEngine::create(mEGLDisplay,
                HAL_PIXEL_FORMAT_RGBA_8888);
+1 −5
Original line number Diff line number Diff line
@@ -475,13 +475,9 @@ void SurfaceFlinger::init() {
    mSFEventThread = new EventThread(sfVsyncSrc, *this);
    mEventQueue.setEventThread(mSFEventThread);

    // set EventThread and SFEventThread to SCHED_FIFO for minimum jitter
    // set SFEventThread to SCHED_FIFO to minimize jitter
    struct sched_param param = {0};
    param.sched_priority = 1;
    if (sched_setscheduler(mEventThread->getTid(), SCHED_FIFO, &param) != 0) {
        ALOGE("Couldn't set SCHED_FIFO for EventThread");
    }

    if (sched_setscheduler(mSFEventThread->getTid(), SCHED_FIFO, &param) != 0) {
        ALOGE("Couldn't set SCHED_FIFO for SFEventThread");
    }
+1 −1
Original line number Diff line number Diff line
@@ -64,7 +64,7 @@ int main(int, char**) {
    sm->addService(String16(GpuService::SERVICE_NAME), gpuservice, false);

    struct sched_param param = {0};
    param.sched_priority = 1;
    param.sched_priority = 2;
    if (sched_setscheduler(0, SCHED_FIFO, &param) != 0) {
        ALOGE("Couldn't set SCHED_FIFO");
    }