Loading core/java/android/os/Debug.java +8 −0 Original line number Diff line number Diff line Loading @@ -2559,6 +2559,14 @@ public final class Debug */ public static native long getDmabufTotalExportedKb(); /** * Return total memory size in kilobytes for DMA-BUFs exported from the DMA-BUF * heaps frameworks or -1 in the case of an error. * * @hide */ public static native long getDmabufHeapTotalExportedKb(); /** * Return memory size in kilobytes allocated for ION heaps or -1 if * /sys/kernel/ion/total_heaps_kb could not be read. Loading core/jni/android_os_Debug.cpp +12 −0 Original line number Diff line number Diff line Loading @@ -826,6 +826,16 @@ static jlong android_os_Debug_getDmabufTotalExportedKb(JNIEnv* env, jobject claz return dmabufTotalSizeKb; } static jlong android_os_Debug_getDmabufHeapTotalExportedKb(JNIEnv* env, jobject clazz) { jlong dmabufHeapTotalSizeKb = -1; uint64_t size; if (meminfo::ReadDmabufHeapTotalExportedKb(&size)) { dmabufHeapTotalSizeKb = size; } return dmabufHeapTotalSizeKb; } static jlong android_os_Debug_getIonPoolsSizeKb(JNIEnv* env, jobject clazz) { jlong poolsSizeKb = -1; uint64_t size; Loading Loading @@ -983,6 +993,8 @@ static const JNINativeMethod gMethods[] = { (void*)android_os_Debug_getDmabufTotalExportedKb }, { "getGpuDmaBufUsageKb", "()J", (void*)android_os_Debug_getGpuDmaBufUsageKb }, { "getDmabufHeapTotalExportedKb", "()J", (void*)android_os_Debug_getDmabufHeapTotalExportedKb }, { "getIonPoolsSizeKb", "()J", (void*)android_os_Debug_getIonPoolsSizeKb }, { "getDmabufMappedSizeKb", "()J", Loading services/core/java/com/android/server/am/ActivityManagerService.java +19 −0 Original line number Diff line number Diff line Loading @@ -13767,6 +13767,15 @@ public class ActivityManagerService extends IActivityManager.Stub totalPss -= totalMemtrackGraphics; totalPss += dmabufMapped; } // totalDmabufHeapExported is included in totalExportedDmabuf above and hence do not // need to be added to kernelUsed. final long totalDmabufHeapExported = Debug.getDmabufHeapTotalExportedKb(); if (totalDmabufHeapExported >= 0) { pw.print("DMA-BUF Heaps: "); pw.println(stringifyKBSize(totalDmabufHeapExported)); } final long totalDmabufHeapPool = Debug.getDmabufHeapPoolsSizeKb(); if (totalDmabufHeapPool >= 0) { pw.print("DMA-BUF Heaps pool: "); Loading Loading @@ -14619,6 +14628,16 @@ public class ActivityManagerService extends IActivityManager.Stub totalPss -= totalMemtrackGraphics; totalPss += dmabufMapped; } // These are included in the totalExportedDmabuf above and hence do not need to be added // to kernelUsed. final long totalExportedDmabufHeap = Debug.getDmabufHeapTotalExportedKb(); if (totalExportedDmabufHeap >= 0) { memInfoBuilder.append("DMA-BUF Heap: "); memInfoBuilder.append(stringifyKBSize(totalExportedDmabufHeap)); memInfoBuilder.append("\n"); } final long totalDmabufHeapPool = Debug.getDmabufHeapPoolsSizeKb(); if (totalDmabufHeapPool >= 0) { memInfoBuilder.append("DMA-BUF Heaps pool: "); Loading
core/java/android/os/Debug.java +8 −0 Original line number Diff line number Diff line Loading @@ -2559,6 +2559,14 @@ public final class Debug */ public static native long getDmabufTotalExportedKb(); /** * Return total memory size in kilobytes for DMA-BUFs exported from the DMA-BUF * heaps frameworks or -1 in the case of an error. * * @hide */ public static native long getDmabufHeapTotalExportedKb(); /** * Return memory size in kilobytes allocated for ION heaps or -1 if * /sys/kernel/ion/total_heaps_kb could not be read. Loading
core/jni/android_os_Debug.cpp +12 −0 Original line number Diff line number Diff line Loading @@ -826,6 +826,16 @@ static jlong android_os_Debug_getDmabufTotalExportedKb(JNIEnv* env, jobject claz return dmabufTotalSizeKb; } static jlong android_os_Debug_getDmabufHeapTotalExportedKb(JNIEnv* env, jobject clazz) { jlong dmabufHeapTotalSizeKb = -1; uint64_t size; if (meminfo::ReadDmabufHeapTotalExportedKb(&size)) { dmabufHeapTotalSizeKb = size; } return dmabufHeapTotalSizeKb; } static jlong android_os_Debug_getIonPoolsSizeKb(JNIEnv* env, jobject clazz) { jlong poolsSizeKb = -1; uint64_t size; Loading Loading @@ -983,6 +993,8 @@ static const JNINativeMethod gMethods[] = { (void*)android_os_Debug_getDmabufTotalExportedKb }, { "getGpuDmaBufUsageKb", "()J", (void*)android_os_Debug_getGpuDmaBufUsageKb }, { "getDmabufHeapTotalExportedKb", "()J", (void*)android_os_Debug_getDmabufHeapTotalExportedKb }, { "getIonPoolsSizeKb", "()J", (void*)android_os_Debug_getIonPoolsSizeKb }, { "getDmabufMappedSizeKb", "()J", Loading
services/core/java/com/android/server/am/ActivityManagerService.java +19 −0 Original line number Diff line number Diff line Loading @@ -13767,6 +13767,15 @@ public class ActivityManagerService extends IActivityManager.Stub totalPss -= totalMemtrackGraphics; totalPss += dmabufMapped; } // totalDmabufHeapExported is included in totalExportedDmabuf above and hence do not // need to be added to kernelUsed. final long totalDmabufHeapExported = Debug.getDmabufHeapTotalExportedKb(); if (totalDmabufHeapExported >= 0) { pw.print("DMA-BUF Heaps: "); pw.println(stringifyKBSize(totalDmabufHeapExported)); } final long totalDmabufHeapPool = Debug.getDmabufHeapPoolsSizeKb(); if (totalDmabufHeapPool >= 0) { pw.print("DMA-BUF Heaps pool: "); Loading Loading @@ -14619,6 +14628,16 @@ public class ActivityManagerService extends IActivityManager.Stub totalPss -= totalMemtrackGraphics; totalPss += dmabufMapped; } // These are included in the totalExportedDmabuf above and hence do not need to be added // to kernelUsed. final long totalExportedDmabufHeap = Debug.getDmabufHeapTotalExportedKb(); if (totalExportedDmabufHeap >= 0) { memInfoBuilder.append("DMA-BUF Heap: "); memInfoBuilder.append(stringifyKBSize(totalExportedDmabufHeap)); memInfoBuilder.append("\n"); } final long totalDmabufHeapPool = Debug.getDmabufHeapPoolsSizeKb(); if (totalDmabufHeapPool >= 0) { memInfoBuilder.append("DMA-BUF Heaps pool: ");