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

Commit 9cda1dd0 authored by Xin Guan's avatar Xin Guan
Browse files

JobScheduler: Cleanup FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER

Bug: 409866873
Test: atest FrameworksMockingServicesTests:com.android.server.job.controllers.QuotaControllerTest
Flag: EXEMPT trunk flag cleanup
Change-Id: I39c4be2b80eb58050c0e5913c8992a1faa2b37d9
parent 388f0cd6
Loading
Loading
Loading
Loading
+0 −10
Original line number Diff line number Diff line
@@ -80,16 +80,6 @@ flag {
    }
}

flag {
    name: "additional_quota_for_system_installer"
    namespace: "backstage_power"
    description: "Offer additional quota for system installer"
    bug: "398264531"
    metadata {
        purpose: PURPOSE_BUGFIX
    }
}

flag {
    name: "deviceidlejobcontroller_off_main_thread"
    namespace: "backstage_power"
+8 −13
Original line number Diff line number Diff line
@@ -1107,7 +1107,6 @@ public final class QuotaController extends StateController {
        final long baseLimitMs = mAllowedTimePerPeriodMs[standbyBucket];
        if (Flags.adjustQuotaDefaultConstants()
                && !isCompatOverridedForQuotaConstantAdjustment()
                && Flags.additionalQuotaForSystemInstaller()
                && standbyBucket == EXEMPTED_INDEX
                && mSystemInstallers.contains(userId, pkgName)) {
            return baseLimitMs + mAllowedTimePeriodAdditionaInstallerMs;
@@ -4103,7 +4102,6 @@ public final class QuotaController extends StateController {
                mShouldReevaluateConstraints = true;
            }

            if (Flags.additionalQuotaForSystemInstaller()) {
            // The additions must be in the range
            // [0 minutes, exempted window size - active limit].
            long newAdditionInstallerMs = Math.max(0,
@@ -4114,7 +4112,6 @@ public final class QuotaController extends StateController {
                mShouldReevaluateConstraints = true;
            }
        }
        }

        private void updateRateLimitingConstantsLocked() {
            if (mRateLimitingConstantsUpdated) {
@@ -4559,8 +4556,6 @@ public final class QuotaController extends StateController {
        pw.println("Aconfig Flags:");
        pw.println("    " + Flags.FLAG_ADJUST_QUOTA_DEFAULT_CONSTANTS
                + ": " + Flags.adjustQuotaDefaultConstants());
        pw.println("    " + Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER
                + ": " + Flags.additionalQuotaForSystemInstaller());
        pw.println();

        pw.println("Current elapsed time: " + sElapsedRealtimeClock.millis());
+1 −9
Original line number Diff line number Diff line
@@ -2042,8 +2042,7 @@ public class QuotaControllerTest {


    @Test
    @EnableFlags({Flags.FLAG_ADJUST_QUOTA_DEFAULT_CONSTANTS,
            Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER})
    @EnableFlags(Flags.FLAG_ADJUST_QUOTA_DEFAULT_CONSTANTS)
    public void testGetTimeUntilQuotaConsumedLocked_Installer_Tuning() {
        PackageInfo pi = new PackageInfo();
        pi.packageName = SOURCE_PACKAGE;
@@ -3780,7 +3779,6 @@ public class QuotaControllerTest {
        assertEquals(84 * SECOND_IN_MILLIS, mQuotaController.getEJGracePeriodTempAllowlistMs());
        assertEquals(83 * SECOND_IN_MILLIS, mQuotaController.getEJGracePeriodTopAppMs());

        mSetFlagsRule.enableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);
        setDeviceConfigLong(QcConstants.KEY_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS,
                6 * MINUTE_IN_MILLIS);
        assertEquals(6 * MINUTE_IN_MILLIS,
@@ -3888,12 +3886,10 @@ public class QuotaControllerTest {
        assertEquals(0, mQuotaController.getEJGracePeriodTempAllowlistMs());
        assertEquals(0, mQuotaController.getEJGracePeriodTopAppMs());

        mSetFlagsRule.enableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);
        setDeviceConfigLong(QcConstants.KEY_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS,
                -MINUTE_IN_MILLIS);
        assertEquals(0,
                mQuotaController.getAllowedTimePeriodAdditionInstallerMs());
        mSetFlagsRule.disableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);

        // Invalid configurations.
        // In_QUOTA_BUFFER should never be greater than ALLOWED_TIME_PER_PERIOD
@@ -3913,14 +3909,12 @@ public class QuotaControllerTest {
        assertTrue(mQuotaController.getAllowedTimePeriodAdditionInstallerMs()
                <= mQuotaController.getAllowedTimePerPeriodMs()[FREQUENT_INDEX]);

        mSetFlagsRule.enableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);
        // ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER should never be greater than
        // ALLOWED_TIME_PER_PERIOD.
        setDeviceConfigLong(QcConstants.KEY_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS,
                 15 * MINUTE_IN_MILLIS);
        assertTrue(mQuotaController.getInQuotaBufferMs()
                <= mQuotaController.getAllowedTimePerPeriodMs()[EXEMPTED_INDEX]);
        mSetFlagsRule.disableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);

        // Test larger than a day. Controller should cap at one day.
        setDeviceConfigLong(QcConstants.KEY_ALLOWED_TIME_PER_PERIOD_EXEMPTED_MS,
@@ -4001,11 +3995,9 @@ public class QuotaControllerTest {
        assertEquals(HOUR_IN_MILLIS, mQuotaController.getEJGracePeriodTempAllowlistMs());
        assertEquals(HOUR_IN_MILLIS, mQuotaController.getEJGracePeriodTopAppMs());

        mSetFlagsRule.enableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);
        setDeviceConfigLong(QcConstants.KEY_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS,
                25 * HOUR_IN_MILLIS);
        assertEquals(0, mQuotaController.getAllowedTimePeriodAdditionInstallerMs());
        mSetFlagsRule.disableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);
    }

    /** Tests that TimingSessions aren't saved when the device is charging. */