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

Commit 2bb4966d authored by Sudheer Shanka's avatar Sudheer Shanka Committed by android-build-merger
Browse files

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

am: f3471306

Change-Id: Ic001bfa12fecb00b24d7170c841af21531bab28a
parents be261948 f3471306
Loading
Loading
Loading
Loading
+5 −0
Original line number Original line Diff line number Diff line
@@ -3525,6 +3525,7 @@ public class BatteryStatsImpl extends BatteryStats {
    public void removeIsolatedUidLocked(int isolatedUid) {
    public void removeIsolatedUidLocked(int isolatedUid) {
        mIsolatedUids.delete(isolatedUid);
        mIsolatedUids.delete(isolatedUid);
        mKernelUidCpuTimeReader.removeUid(isolatedUid);
        mKernelUidCpuTimeReader.removeUid(isolatedUid);
        mKernelUidCpuFreqTimeReader.removeUid(isolatedUid);
    }
    }


    public int mapUid(int uid) {
    public int mapUid(int uid) {
@@ -10358,6 +10359,9 @@ public class BatteryStatsImpl extends BatteryStats {
                    public void onUidCpuFreqTime(int uid, long[] cpuFreqTimeMs) {
                    public void onUidCpuFreqTime(int uid, long[] cpuFreqTimeMs) {
                        uid = mapUid(uid);
                        uid = mapUid(uid);
                        if (Process.isIsolated(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;
                            return;
                        }
                        }
                        final Uid u = getUidStatsLocked(uid);
                        final Uid u = getUidStatsLocked(uid);
@@ -11026,6 +11030,7 @@ public class BatteryStatsImpl extends BatteryStats {
     */
     */
    public void removeUidStatsLocked(int uid) {
    public void removeUidStatsLocked(int uid) {
        mKernelUidCpuTimeReader.removeUid(uid);
        mKernelUidCpuTimeReader.removeUid(uid);
        mKernelUidCpuFreqTimeReader.removeUid(uid);
        mUidStats.remove(uid);
        mUidStats.remove(uid);
    }
    }


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


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

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