diff options
| author | 2020-12-03 23:52:02 -0800 | |
|---|---|---|
| committer | 2020-12-04 09:20:52 +0000 | |
| commit | 0d4205e6aa711c50b3a94a91d8159219c77e102c (patch) | |
| tree | c83bc387ae789073770f813abc44533dede8de8e | |
| parent | 1086c93f778b68b642b0a5536f23cbbaa0c9787f (diff) | |
Fix BatteryExternalStatsWorker UPDATE_ALL usage
In some places, BESW compares the update flag against UPDATE_ALL
in a way that will always be true, instead of seeing if it is
actually equal to it.
This would have led to far more frequent updateKernelWakelocksLocked
and updateKernelMemoryBandwidthLocked calls than intended.
Test: n/a
Bug: 174818202
Change-Id: I19a5cf80eee0768989dcea0c2f205dc9f749ac9f
| -rw-r--r-- | services/core/java/com/android/server/am/BatteryExternalStatsWorker.java | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/am/BatteryExternalStatsWorker.java b/services/core/java/com/android/server/am/BatteryExternalStatsWorker.java index 93dd1aa37a11..b3d48bb66ac9 100644 --- a/services/core/java/com/android/server/am/BatteryExternalStatsWorker.java +++ b/services/core/java/com/android/server/am/BatteryExternalStatsWorker.java @@ -345,7 +345,7 @@ class BatteryExternalStatsWorker implements BatteryStatsImpl.ExternalStatsSync { mUidsToRemove.clear(); mCurrentFuture = null; mUseLatestStates = true; - if ((updateFlags & UPDATE_ALL) != 0) { + if (updateFlags == UPDATE_ALL) { cancelSyncDueToBatteryLevelChangeLocked(); } if ((updateFlags & UPDATE_CPU) != 0) { @@ -517,7 +517,7 @@ class BatteryExternalStatsWorker implements BatteryStatsImpl.ExternalStatsSync { mStats.updateCpuTimeLocked(onBattery, onBatteryScreenOff); } - if ((updateFlags & UPDATE_ALL) != 0) { + if (updateFlags == UPDATE_ALL) { mStats.updateKernelWakelocksLocked(elapsedRealtimeUs); mStats.updateKernelMemoryBandwidthLocked(elapsedRealtimeUs); } |