diff --git a/core/java/com/android/internal/os/BatteryStatsImpl.java b/core/java/com/android/internal/os/BatteryStatsImpl.java index 3599e64da4f13..e59cf8408963d 100644 --- a/core/java/com/android/internal/os/BatteryStatsImpl.java +++ b/core/java/com/android/internal/os/BatteryStatsImpl.java @@ -3632,7 +3632,12 @@ public class BatteryStatsImpl extends BatteryStats { } public void noteUidProcessStateLocked(int uid, int state) { - uid = mapUid(uid); + int parentUid = mapUid(uid); + if (uid != parentUid) { + // Isolated UIDs process state is already rolled up into parent, so no need to track + // Otherwise the parent's process state will get downgraded incorrectly + return; + } getUidStatsLocked(uid).updateUidProcessStateLocked(state); }