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

Commit 44c20b34 authored by Suren Baghdasaryan's avatar Suren Baghdasaryan Committed by Automerger Merge Worker
Browse files

Merge "Fix total memtrack Graphics and GL calculations" am: d061730d am: 355bd7d9

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1604881

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: If10eb20b7dfbe070536afded8ad0e25747a3ed5a
parents 763ecd2a 355bd7d9
Loading
Loading
Loading
Loading
+10 −4
Original line number Original line Diff line number Diff line
@@ -13384,6 +13384,8 @@ public class ActivityManagerService extends IActivityManager.Stub
                    }
                    }
                    endTime = SystemClock.currentThreadTimeMillis();
                    endTime = SystemClock.currentThreadTimeMillis();
                    hasSwapPss = mi.hasSwappedOutPss;
                    hasSwapPss = mi.hasSwappedOutPss;
                    memtrackGraphics = mi.getOtherPrivate(Debug.MemoryInfo.OTHER_GRAPHICS);
                    memtrackGl = mi.getOtherPrivate(Debug.MemoryInfo.OTHER_GL);
                } else {
                } else {
                    reportType = ProcessStats.ADD_PSS_EXTERNAL;
                    reportType = ProcessStats.ADD_PSS_EXTERNAL;
                    startTime = SystemClock.currentThreadTimeMillis();
                    startTime = SystemClock.currentThreadTimeMillis();
@@ -13537,6 +13539,8 @@ public class ActivityManagerService extends IActivityManager.Stub
                            if (!Debug.getMemoryInfo(st.pid, mi)) {
                            if (!Debug.getMemoryInfo(st.pid, mi)) {
                                continue;
                                continue;
                            }
                            }
                            memtrackGraphics = mi.getOtherPrivate(Debug.MemoryInfo.OTHER_GRAPHICS);
                            memtrackGl = mi.getOtherPrivate(Debug.MemoryInfo.OTHER_GL);
                        } else {
                        } else {
                            long pss = Debug.getPss(st.pid, tmpLong, memtrackTmp);
                            long pss = Debug.getPss(st.pid, tmpLong, memtrackTmp);
                            if (pss == 0) {
                            if (pss == 0) {
@@ -14437,6 +14441,8 @@ public class ActivityManagerService extends IActivityManager.Stub
            });
            });
        }
        }
        final int statsCount = stats.size();
        final int statsCount = stats.size();
        long totalMemtrackGraphics = 0;
        long totalMemtrackGl = 0;
        for (int i = 0; i < statsCount; i++) {
        for (int i = 0; i < statsCount; i++) {
            ProcessCpuTracker.Stats st = stats.get(i);
            ProcessCpuTracker.Stats st = stats.get(i);
            long pss = Debug.getPss(st.pid, swaptrackTmp, memtrackTmp);
            long pss = Debug.getPss(st.pid, swaptrackTmp, memtrackTmp);
@@ -14447,6 +14453,8 @@ public class ActivityManagerService extends IActivityManager.Stub
                    mi.pss = pss;
                    mi.pss = pss;
                    mi.swapPss = swaptrackTmp[1];
                    mi.swapPss = swaptrackTmp[1];
                    mi.memtrack = memtrackTmp[0];
                    mi.memtrack = memtrackTmp[0];
                    totalMemtrackGraphics += memtrackTmp[1];
                    totalMemtrackGl += memtrackTmp[2];
                    memInfos.add(mi);
                    memInfos.add(mi);
                }
                }
            }
            }
@@ -14455,20 +14463,18 @@ public class ActivityManagerService extends IActivityManager.Stub
        long totalPss = 0;
        long totalPss = 0;
        long totalSwapPss = 0;
        long totalSwapPss = 0;
        long totalMemtrack = 0;
        long totalMemtrack = 0;
        long totalMemtrackGraphics = 0;
        long totalMemtrackGl = 0;
        for (int i=0, N=memInfos.size(); i<N; i++) {
        for (int i=0, N=memInfos.size(); i<N; i++) {
            ProcessMemInfo mi = memInfos.get(i);
            ProcessMemInfo mi = memInfos.get(i);
            if (mi.pss == 0) {
            if (mi.pss == 0) {
                mi.pss = Debug.getPss(mi.pid, swaptrackTmp, memtrackTmp);
                mi.pss = Debug.getPss(mi.pid, swaptrackTmp, memtrackTmp);
                mi.swapPss = swaptrackTmp[1];
                mi.swapPss = swaptrackTmp[1];
                mi.memtrack = memtrackTmp[0];
                mi.memtrack = memtrackTmp[0];
                totalMemtrackGraphics += memtrackTmp[1];
                totalMemtrackGl += memtrackTmp[2];
            }
            }
            totalPss += mi.pss;
            totalPss += mi.pss;
            totalSwapPss += mi.swapPss;
            totalSwapPss += mi.swapPss;
            totalMemtrack += mi.memtrack;
            totalMemtrack += mi.memtrack;
            totalMemtrackGraphics += memtrackTmp[1];
            totalMemtrackGl += memtrackTmp[2];
        }
        }
        Collections.sort(memInfos, new Comparator<ProcessMemInfo>() {
        Collections.sort(memInfos, new Comparator<ProcessMemInfo>() {
            @Override public int compare(ProcessMemInfo lhs, ProcessMemInfo rhs) {
            @Override public int compare(ProcessMemInfo lhs, ProcessMemInfo rhs) {