CachedAppOptimizer: don't take AM lock when freezer is not enabled

Freezing and unfreezing don't reqiure the AM lock when freezer is not
enabled.

Test: boot, no lock contention on unfreezeTemporarily
Bug: 161866124

Change-Id: Ic650456aa8938db38b368042ce3f42fa43e7a130
Merged-In: Ic650456aa8938db38b368042ce3f42fa43e7a130
This commit is contained in:
Tim Murray
2021-01-15 13:22:48 -08:00
committed by Marco Ballesio
parent 43ad2093d4
commit 8f5e000257

View File

@@ -722,10 +722,12 @@ public final class CachedAppOptimizer {
// This will ensure app will be out of the freezer for at least FREEZE_TIMEOUT_MS
void unfreezeTemporarily(ProcessRecord app) {
synchronized (mAm) {
if (app.frozen) {
unfreezeAppLocked(app);
freezeAppAsync(app);
if (mUseFreezer) {
synchronized (mAm) {
if (app.frozen) {
unfreezeAppLocked(app);
freezeAppAsync(app);
}
}
}
}