Loading apex/jobscheduler/service/aconfig/job.aconfig +0 −10 Original line number Diff line number Diff line Loading @@ -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" Loading apex/jobscheduler/service/java/com/android/server/job/controllers/QuotaController.java +8 −13 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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, Loading @@ -4114,7 +4112,6 @@ public final class QuotaController extends StateController { mShouldReevaluateConstraints = true; } } } private void updateRateLimitingConstantsLocked() { if (mRateLimitingConstantsUpdated) { Loading Loading @@ -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()); Loading services/tests/mockingservicestests/src/com/android/server/job/controllers/QuotaControllerTest.java +1 −9 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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, Loading Loading @@ -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 Loading @@ -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, Loading Loading @@ -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. */ Loading Loading
apex/jobscheduler/service/aconfig/job.aconfig +0 −10 Original line number Diff line number Diff line Loading @@ -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" Loading
apex/jobscheduler/service/java/com/android/server/job/controllers/QuotaController.java +8 −13 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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, Loading @@ -4114,7 +4112,6 @@ public final class QuotaController extends StateController { mShouldReevaluateConstraints = true; } } } private void updateRateLimitingConstantsLocked() { if (mRateLimitingConstantsUpdated) { Loading Loading @@ -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()); Loading
services/tests/mockingservicestests/src/com/android/server/job/controllers/QuotaControllerTest.java +1 −9 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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, Loading Loading @@ -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 Loading @@ -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, Loading Loading @@ -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. */ Loading