summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Suren Baghdasaryan <surenb@google.com> 2020-05-13 17:09:39 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2020-05-13 17:09:39 +0000
commit49644a3404282d659f46acdcb15ef38b86c1e90a (patch)
tree28b209ce22e025e4fe22fec897ac45dfb4d7fbba
parent2619a020dd66912458c2eb83f4129d13d33d117d (diff)
parentb55e856e592ab5eb703f42b4fd6c6144717acc0d (diff)
Merge "Fix Lost RAM calculation by accounting for ION mapped heaps" into rvc-dev
-rw-r--r--services/core/java/com/android/server/am/ActivityManagerService.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index d914bda3eff4..930f124cd687 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -13597,7 +13597,9 @@ public class ActivityManagerService extends IActivityManager.Stub
pw.print(" unmapped + ");
pw.print(stringifyKBSize(ionPool));
pw.println(" pools)");
- kernelUsed += ionUnmapped;
+ // Note: mapped ION memory is not accounted in PSS due to VM_PFNMAP flag being
+ // set on ION VMAs, therefore consider the entire ION heap as used kernel memory
+ kernelUsed += ionHeap;
}
final long lostRAM = memInfo.getTotalSizeKb() - (totalPss - totalSwapPss)
- memInfo.getFreeSizeKb() - memInfo.getCachedSizeKb()
@@ -14403,7 +14405,9 @@ public class ActivityManagerService extends IActivityManager.Stub
memInfoBuilder.append(" ION: ");
memInfoBuilder.append(stringifyKBSize(ionHeap + ionPool));
memInfoBuilder.append("\n");
- kernelUsed += ionUnmapped;
+ // Note: mapped ION memory is not accounted in PSS due to VM_PFNMAP flag being
+ // set on ION VMAs, therefore consider the entire ION heap as used kernel memory
+ kernelUsed += ionHeap;
}
memInfoBuilder.append(" Used RAM: ");
memInfoBuilder.append(stringifyKBSize(