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

Commit d061730d authored by Suren Baghdasaryan's avatar Suren Baghdasaryan Committed by Gerrit Code Review
Browse files

Merge "Fix total memtrack Graphics and GL calculations"

parents 5cc4c3ff 1ec9894c
Loading
Loading
Loading
Loading
+10 −4
Original line number Diff line number Diff line
@@ -13386,6 +13386,8 @@ public class ActivityManagerService extends IActivityManager.Stub
                    }
                    endTime = SystemClock.currentThreadTimeMillis();
                    hasSwapPss = mi.hasSwappedOutPss;
                    memtrackGraphics = mi.getOtherPrivate(Debug.MemoryInfo.OTHER_GRAPHICS);
                    memtrackGl = mi.getOtherPrivate(Debug.MemoryInfo.OTHER_GL);
                } else {
                    reportType = ProcessStats.ADD_PSS_EXTERNAL;
                    startTime = SystemClock.currentThreadTimeMillis();
@@ -13539,6 +13541,8 @@ public class ActivityManagerService extends IActivityManager.Stub
                            if (!Debug.getMemoryInfo(st.pid, mi)) {
                                continue;
                            }
                            memtrackGraphics = mi.getOtherPrivate(Debug.MemoryInfo.OTHER_GRAPHICS);
                            memtrackGl = mi.getOtherPrivate(Debug.MemoryInfo.OTHER_GL);
                        } else {
                            long pss = Debug.getPss(st.pid, tmpLong, memtrackTmp);
                            if (pss == 0) {
@@ -14439,6 +14443,8 @@ public class ActivityManagerService extends IActivityManager.Stub
            });
        }
        final int statsCount = stats.size();
        long totalMemtrackGraphics = 0;
        long totalMemtrackGl = 0;
        for (int i = 0; i < statsCount; i++) {
            ProcessCpuTracker.Stats st = stats.get(i);
            long pss = Debug.getPss(st.pid, swaptrackTmp, memtrackTmp);
@@ -14449,6 +14455,8 @@ public class ActivityManagerService extends IActivityManager.Stub
                    mi.pss = pss;
                    mi.swapPss = swaptrackTmp[1];
                    mi.memtrack = memtrackTmp[0];
                    totalMemtrackGraphics += memtrackTmp[1];
                    totalMemtrackGl += memtrackTmp[2];
                    memInfos.add(mi);
                }
            }
@@ -14457,20 +14465,18 @@ public class ActivityManagerService extends IActivityManager.Stub
        long totalPss = 0;
        long totalSwapPss = 0;
        long totalMemtrack = 0;
        long totalMemtrackGraphics = 0;
        long totalMemtrackGl = 0;
        for (int i=0, N=memInfos.size(); i<N; i++) {
            ProcessMemInfo mi = memInfos.get(i);
            if (mi.pss == 0) {
                mi.pss = Debug.getPss(mi.pid, swaptrackTmp, memtrackTmp);
                mi.swapPss = swaptrackTmp[1];
                mi.memtrack = memtrackTmp[0];
                totalMemtrackGraphics += memtrackTmp[1];
                totalMemtrackGl += memtrackTmp[2];
            }
            totalPss += mi.pss;
            totalSwapPss += mi.swapPss;
            totalMemtrack += mi.memtrack;
            totalMemtrackGraphics += memtrackTmp[1];
            totalMemtrackGl += memtrackTmp[2];
        }
        Collections.sort(memInfos, new Comparator<ProcessMemInfo>() {
            @Override public int compare(ProcessMemInfo lhs, ProcessMemInfo rhs) {