diff options
| author | 2021-06-11 10:47:39 -0700 | |
|---|---|---|
| committer | 2021-06-11 10:47:39 -0700 | |
| commit | ca99b6869f4a7c1d6417eba0ce610270f7bfa605 (patch) | |
| tree | 7ed3fbfc067f2051e9f48f914d88bc8a9bf2ed8e | |
| parent | 271c600617c66e97afca9354843b54b1b02a4865 (diff) | |
Fix divide by zero
Fix: 190638632
Test: Boot
Change-Id: Ib21141ef549f11692258cf8f062cea0bbfba84c1
| -rw-r--r-- | services/core/java/com/android/server/am/ActivityManagerService.java | 2 | ||||
| -rw-r--r-- | services/core/java/com/android/server/am/ProcessList.java | 6 |
2 files changed, 4 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index c841fa3b057c..4c25d957155e 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -14309,7 +14309,7 @@ public class ActivityManagerService extends IActivityManager.Stub private boolean checkExcessivePowerUsageLPr(final long uptimeSince, boolean doCpuKills, final long cputimeUsed, final String processName, final String description, final int cpuLimit, final ProcessRecord app) { - if (DEBUG_POWER) { + if (DEBUG_POWER && (uptimeSince > 0)) { StringBuilder sb = new StringBuilder(128); sb.append("CPU for "); sb.append(description); diff --git a/services/core/java/com/android/server/am/ProcessList.java b/services/core/java/com/android/server/am/ProcessList.java index 3bfd62b60c89..8ebc987a59f4 100644 --- a/services/core/java/com/android/server/am/ProcessList.java +++ b/services/core/java/com/android/server/am/ProcessList.java @@ -4289,8 +4289,8 @@ public final class ProcessList { if (state.getSetProcState() >= ActivityManager.PROCESS_STATE_SERVICE) { long lastCpuTime = r.mProfile.mLastCpuTime.get(); - if (lastCpuTime != 0) { - long uptimeSince = curUptime - service.mLastPowerCheckUptime; + long uptimeSince = curUptime - service.mLastPowerCheckUptime; + if (lastCpuTime != 0 && uptimeSince > 0) { long timeUsed = r.mProfile.mCurCpuTime.get() - lastCpuTime; long cpuTimeToken = proto.start(ProcessOomProto.Detail.SERVICE_RUN_TIME); proto.write(ProcessOomProto.Detail.CpuRunTime.OVER_MS, uptimeSince); @@ -4427,7 +4427,7 @@ public final class ProcessList { if (state.getSetProcState() >= ActivityManager.PROCESS_STATE_SERVICE) { long lastCpuTime = r.mProfile.mLastCpuTime.get(); - if (lastCpuTime != 0) { + if (lastCpuTime != 0 && uptimeSince > 0) { long timeUsed = r.mProfile.mCurCpuTime.get() - lastCpuTime; pw.print(prefix); pw.print(" "); |