summaryrefslogtreecommitdiff
path: root/core/java/android/app/ApplicationThreadNative.java
diff options
context:
space:
mode:
authorColin Cross <ccross@android.com>2016-02-02 16:51:15 -0800
committerColin Cross <ccross@android.com>2016-02-18 22:30:49 -0800
commitc4fb5f9d4b8012bc007f0c7e472d4ff4801254f5 (patch)
tree48310ef47df354ce78c2a46fb7cd124a8ef292bc /core/java/android/app/ApplicationThreadNative.java
parentacaf80910da70ebe645dad515f3641ec2de0fb43 (diff)
Add dumpsys meminfo --unreachable
dumpsys meminfo --unreachable will search the native heap for allocations that are unreachable. Bug: 27208635 Change-Id: I40ab1c261cb222ca71d04ab8408f355bcb18ed94 (cherry picked from commit 84b1e3554b36b7fbccf57330c93bf484985ae3d6)
Diffstat (limited to 'core/java/android/app/ApplicationThreadNative.java')
-rw-r--r--core/java/android/app/ApplicationThreadNative.java7
1 files changed, 5 insertions, 2 deletions
diff --git a/core/java/android/app/ApplicationThreadNative.java b/core/java/android/app/ApplicationThreadNative.java
index 59ecc03d1295..744ddf704161 100644
--- a/core/java/android/app/ApplicationThreadNative.java
+++ b/core/java/android/app/ApplicationThreadNative.java
@@ -548,11 +548,12 @@ public abstract class ApplicationThreadNative extends Binder
boolean dumpInfo = data.readInt() != 0;
boolean dumpDalvik = data.readInt() != 0;
boolean dumpSummaryOnly = data.readInt() != 0;
+ boolean dumpUnreachable = data.readInt() != 0;
String[] args = data.readStringArray();
if (fd != null) {
try {
dumpMemInfo(fd.getFileDescriptor(), mi, checkin, dumpInfo,
- dumpDalvik, dumpSummaryOnly, args);
+ dumpDalvik, dumpSummaryOnly, dumpUnreachable, args);
} finally {
try {
fd.close();
@@ -1328,7 +1329,8 @@ class ApplicationThreadProxy implements IApplicationThread {
}
public void dumpMemInfo(FileDescriptor fd, Debug.MemoryInfo mem, boolean checkin,
- boolean dumpInfo, boolean dumpDalvik, boolean dumpSummaryOnly, String[] args) throws RemoteException {
+ boolean dumpInfo, boolean dumpDalvik, boolean dumpSummaryOnly,
+ boolean dumpUnreachable, String[] args) throws RemoteException {
Parcel data = Parcel.obtain();
Parcel reply = Parcel.obtain();
data.writeInterfaceToken(IApplicationThread.descriptor);
@@ -1338,6 +1340,7 @@ class ApplicationThreadProxy implements IApplicationThread {
data.writeInt(dumpInfo ? 1 : 0);
data.writeInt(dumpDalvik ? 1 : 0);
data.writeInt(dumpSummaryOnly ? 1 : 0);
+ data.writeInt(dumpUnreachable ? 1 : 0);
data.writeStringArray(args);
mRemote.transact(DUMP_MEM_INFO_TRANSACTION, data, reply, 0);
reply.readException();