diff options
| author | 2022-06-21 03:42:48 +0000 | |
|---|---|---|
| committer | 2022-06-21 03:42:48 +0000 | |
| commit | c2cbdc7065d2ccf05a313bd65c5061cc8b6b0c7f (patch) | |
| tree | aa916d02b755512b223f12eb322d28f1e4fcfcc1 | |
| parent | 29267e1b30548887b85eaceae216b28a09974c8f (diff) | |
| parent | f24ac73825332388241f7b7244f9eaad30351d77 (diff) | |
Merge "Recheck the condition before really killing" am: f24ac73825
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2121361
Change-Id: I3d1793941c3a96133b51e787008e1c6fb82566fd
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
| -rw-r--r-- | services/core/java/com/android/server/am/ActivityManagerService.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index e28170f63795..683b730b4f45 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -14372,6 +14372,10 @@ public class ActivityManagerService extends IActivityManager.Stub app.processName, app.toShortString(), cpuLimit, app)) { mHandler.post(() -> { synchronized (ActivityManagerService.this) { + if (app.getThread() == null + || app.mState.getSetProcState() < ActivityManager.PROCESS_STATE_HOME) { + return; + } app.killLocked("excessive cpu " + cpuTimeUsed + " during " + uptimeSince + " dur=" + checkDur + " limit=" + cpuLimit, ApplicationExitInfo.REASON_EXCESSIVE_RESOURCE_USAGE, @@ -14397,6 +14401,10 @@ public class ActivityManagerService extends IActivityManager.Stub app.processName, r.toString(), cpuLimit, app)) { mHandler.post(() -> { synchronized (ActivityManagerService.this) { + if (app.getThread() == null + || app.mState.getSetProcState() < ActivityManager.PROCESS_STATE_HOME) { + return; + } mPhantomProcessList.killPhantomProcessGroupLocked(app, r, ApplicationExitInfo.REASON_EXCESSIVE_RESOURCE_USAGE, ApplicationExitInfo.SUBREASON_EXCESSIVE_CPU, |