Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f3471306 authored by Sudheer Shanka's avatar Sudheer Shanka Committed by Android (Google) Code Review
Browse files

Merge "Update KernelUidCpuFreqTimeReader to handle uid removals." into oc-dev

parents 695f21a6 6d8dcec8
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -3518,6 +3518,7 @@ public class BatteryStatsImpl extends BatteryStats {
    public void removeIsolatedUidLocked(int isolatedUid) {
        mIsolatedUids.delete(isolatedUid);
        mKernelUidCpuTimeReader.removeUid(isolatedUid);
        mKernelUidCpuFreqTimeReader.removeUid(isolatedUid);
    }

    public int mapUid(int uid) {
@@ -10351,6 +10352,9 @@ public class BatteryStatsImpl extends BatteryStats {
                    public void onUidCpuFreqTime(int uid, long[] cpuFreqTimeMs) {
                        uid = mapUid(uid);
                        if (Process.isIsolated(uid)) {
                            mKernelUidCpuFreqTimeReader.removeUid(uid);
                            Slog.d(TAG, "Got freq readings for an isolated uid with"
                                    + " no mapping to owning uid: " + uid);
                            return;
                        }
                        final Uid u = getUidStatsLocked(uid);
@@ -11019,6 +11023,7 @@ public class BatteryStatsImpl extends BatteryStats {
     */
    public void removeUidStatsLocked(int uid) {
        mKernelUidCpuTimeReader.removeUid(uid);
        mKernelUidCpuFreqTimeReader.removeUid(uid);
        mUidStats.remove(uid);
    }

+4 −0
Original line number Diff line number Diff line
@@ -72,6 +72,10 @@ public class KernelUidCpuFreqTimeReader {
        }
    }

    public void removeUid(int uid) {
        mLastUidCpuFreqTimeMs.delete(uid);
    }

    @VisibleForTesting
    public void readDelta(BufferedReader reader, @Nullable Callback callback) throws IOException {
        String line = reader.readLine();