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

Commit e2c9bf4d authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Grant CPU_TIME during service bringup and teardown" into main

parents c24712f9 cbb5bd72
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -1958,6 +1958,10 @@ public abstract class OomAdjuster {
            // Process has user perceptible activities.
            return PROCESS_CAPABILITY_CPU_TIME;
        }
        if (app.mServices.numberOfExecutingServices() > 0) {
            // Ensure that services get cpu time during start-up and tear-down.
            return PROCESS_CAPABILITY_CPU_TIME;
        }
        if (app.mServices.hasForegroundServices()) {
            return PROCESS_CAPABILITY_CPU_TIME;
        }
+19 −0
Original line number Diff line number Diff line
@@ -898,6 +898,25 @@ public class MockingOomAdjusterTests {
        assertNoCpuTime(app);
    }

    @SuppressWarnings("GuardedBy")
    @Test
    @EnableFlags(Flags.FLAG_CPU_TIME_CAPABILITY_BASED_FREEZE_POLICY)
    public void testUpdateOomAdjFreezeState_executingServices() {
        final ProcessRecord app = makeDefaultProcessRecord(MOCKAPP_PID, MOCKAPP_UID,
                MOCKAPP_PROCESSNAME, MOCKAPP_PACKAGENAME, true);

        updateOomAdj(app);
        assertNoCpuTime(app);

        mProcessStateController.startExecutingService(app.mServices, mock(ServiceRecord.class));
        updateOomAdj(app);
        assertCpuTime(app);

        mProcessStateController.stopAllExecutingServices(app.mServices);
        updateOomAdj(app);
        assertNoCpuTime(app);
    }

    @SuppressWarnings("GuardedBy")
    @Test
    @EnableFlags(Flags.FLAG_CPU_TIME_CAPABILITY_BASED_FREEZE_POLICY)