Loading core/java/android/app/ActivityThread.java +8 −4 Original line number Diff line number Diff line Loading @@ -60,6 +60,7 @@ import android.os.IBinder; import android.os.Looper; import android.os.Message; import android.os.MessageQueue; import android.os.Parcel; import android.os.ParcelFileDescriptor; import android.os.PersistableBundle; import android.os.Process; Loading Loading @@ -965,6 +966,8 @@ public final class ActivityThread { int binderLocalObjectCount = Debug.getBinderLocalObjectCount(); int binderProxyObjectCount = Debug.getBinderProxyObjectCount(); int binderDeathObjectCount = Debug.getBinderDeathObjectCount(); long parcelSize = Parcel.getGlobalAllocSize(); long parcelCount = Parcel.getGlobalAllocCount(); long openSslSocketCount = Debug.countInstancesOfClass(OpenSSLSocketImpl.class); SQLiteDebug.PagerStats stats = SQLiteDebug.getDatabaseInfo(); Loading Loading @@ -1023,9 +1026,10 @@ public final class ActivityThread { printRow(pw, TWO_COUNT_COLUMNS, "Local Binders:", binderLocalObjectCount, "Proxy Binders:", binderProxyObjectCount); printRow(pw, ONE_COUNT_COLUMN, "Death Recipients:", binderDeathObjectCount); printRow(pw, ONE_COUNT_COLUMN, "OpenSSL Sockets:", openSslSocketCount); printRow(pw, TWO_COUNT_COLUMNS, "Parcel memory:", parcelSize/1024, "Parcel count:", parcelCount); printRow(pw, TWO_COUNT_COLUMNS, "Death Recipients:", binderDeathObjectCount, "OpenSSL Sockets:", openSslSocketCount); // SQLite mem info pw.println(" "); Loading Loading @@ -1948,7 +1952,7 @@ public final class ActivityThread { if (dumpFullInfo) { printRow(pw, HEAP_FULL_COLUMN, "", "Pss", "Pss", "Shared", "Private", "Shared", "Private", "Swapped", "Heap", "Heap", "Heap"); printRow(pw, HEAP_FULL_COLUMN, "", "Total", "Clean", "Dirty", "", printRow(pw, HEAP_FULL_COLUMN, "", "Total", "Clean", "Dirty", "Dirty", "Clean", "Clean", "Dirty", "Size", "Alloc", "Free"); printRow(pw, HEAP_FULL_COLUMN, "", "------", "------", "------", "------", "------", "------", "------", "------", "------", "------"); Loading core/java/android/os/Parcel.java +6 −0 Original line number Diff line number Diff line Loading @@ -340,6 +340,12 @@ public final class Parcel { } } /** @hide */ public static native long getGlobalAllocSize(); /** @hide */ public static native long getGlobalAllocCount(); /** * Returns the total amount of data contained in the parcel. */ Loading core/java/com/android/internal/app/ProcessStats.java +1 −0 Original line number Diff line number Diff line Loading @@ -2746,6 +2746,7 @@ public final class ProcessStats implements Parcelable { pw.print("total"); dumpAdjTimesCheckin(pw, ",", mMemFactorDurations, mMemFactor, mStartTime, now); pw.println(); if (mSysMemUsageTable != null) { pw.print("sysmemusage"); for (int i=0; i<mSysMemUsageTableSize; i++) { Loading core/jni/android_os_Parcel.cpp +13 −0 Original line number Diff line number Diff line Loading @@ -688,6 +688,16 @@ static void android_os_Parcel_enforceInterface(JNIEnv* env, jclass clazz, jlong "Binder invocation to an incorrect interface"); } static jlong android_os_Parcel_getGlobalAllocSize(JNIEnv* env, jclass clazz) { return Parcel::getGlobalAllocSize(); } static jlong android_os_Parcel_getGlobalAllocCount(JNIEnv* env, jclass clazz) { return Parcel::getGlobalAllocCount(); } // ---------------------------------------------------------------------------- static const JNINativeMethod gParcelMethods[] = { Loading Loading @@ -737,6 +747,9 @@ static const JNINativeMethod gParcelMethods[] = { {"nativeHasFileDescriptors", "(J)Z", (void*)android_os_Parcel_hasFileDescriptors}, {"nativeWriteInterfaceToken", "(JLjava/lang/String;)V", (void*)android_os_Parcel_writeInterfaceToken}, {"nativeEnforceInterface", "(JLjava/lang/String;)V", (void*)android_os_Parcel_enforceInterface}, {"getGlobalAllocSize", "()J", (void*)android_os_Parcel_getGlobalAllocSize}, {"getGlobalAllocCount", "()J", (void*)android_os_Parcel_getGlobalAllocCount}, }; const char* const kParcelPathName = "android/os/Parcel"; Loading Loading
core/java/android/app/ActivityThread.java +8 −4 Original line number Diff line number Diff line Loading @@ -60,6 +60,7 @@ import android.os.IBinder; import android.os.Looper; import android.os.Message; import android.os.MessageQueue; import android.os.Parcel; import android.os.ParcelFileDescriptor; import android.os.PersistableBundle; import android.os.Process; Loading Loading @@ -965,6 +966,8 @@ public final class ActivityThread { int binderLocalObjectCount = Debug.getBinderLocalObjectCount(); int binderProxyObjectCount = Debug.getBinderProxyObjectCount(); int binderDeathObjectCount = Debug.getBinderDeathObjectCount(); long parcelSize = Parcel.getGlobalAllocSize(); long parcelCount = Parcel.getGlobalAllocCount(); long openSslSocketCount = Debug.countInstancesOfClass(OpenSSLSocketImpl.class); SQLiteDebug.PagerStats stats = SQLiteDebug.getDatabaseInfo(); Loading Loading @@ -1023,9 +1026,10 @@ public final class ActivityThread { printRow(pw, TWO_COUNT_COLUMNS, "Local Binders:", binderLocalObjectCount, "Proxy Binders:", binderProxyObjectCount); printRow(pw, ONE_COUNT_COLUMN, "Death Recipients:", binderDeathObjectCount); printRow(pw, ONE_COUNT_COLUMN, "OpenSSL Sockets:", openSslSocketCount); printRow(pw, TWO_COUNT_COLUMNS, "Parcel memory:", parcelSize/1024, "Parcel count:", parcelCount); printRow(pw, TWO_COUNT_COLUMNS, "Death Recipients:", binderDeathObjectCount, "OpenSSL Sockets:", openSslSocketCount); // SQLite mem info pw.println(" "); Loading Loading @@ -1948,7 +1952,7 @@ public final class ActivityThread { if (dumpFullInfo) { printRow(pw, HEAP_FULL_COLUMN, "", "Pss", "Pss", "Shared", "Private", "Shared", "Private", "Swapped", "Heap", "Heap", "Heap"); printRow(pw, HEAP_FULL_COLUMN, "", "Total", "Clean", "Dirty", "", printRow(pw, HEAP_FULL_COLUMN, "", "Total", "Clean", "Dirty", "Dirty", "Clean", "Clean", "Dirty", "Size", "Alloc", "Free"); printRow(pw, HEAP_FULL_COLUMN, "", "------", "------", "------", "------", "------", "------", "------", "------", "------", "------"); Loading
core/java/android/os/Parcel.java +6 −0 Original line number Diff line number Diff line Loading @@ -340,6 +340,12 @@ public final class Parcel { } } /** @hide */ public static native long getGlobalAllocSize(); /** @hide */ public static native long getGlobalAllocCount(); /** * Returns the total amount of data contained in the parcel. */ Loading
core/java/com/android/internal/app/ProcessStats.java +1 −0 Original line number Diff line number Diff line Loading @@ -2746,6 +2746,7 @@ public final class ProcessStats implements Parcelable { pw.print("total"); dumpAdjTimesCheckin(pw, ",", mMemFactorDurations, mMemFactor, mStartTime, now); pw.println(); if (mSysMemUsageTable != null) { pw.print("sysmemusage"); for (int i=0; i<mSysMemUsageTableSize; i++) { Loading
core/jni/android_os_Parcel.cpp +13 −0 Original line number Diff line number Diff line Loading @@ -688,6 +688,16 @@ static void android_os_Parcel_enforceInterface(JNIEnv* env, jclass clazz, jlong "Binder invocation to an incorrect interface"); } static jlong android_os_Parcel_getGlobalAllocSize(JNIEnv* env, jclass clazz) { return Parcel::getGlobalAllocSize(); } static jlong android_os_Parcel_getGlobalAllocCount(JNIEnv* env, jclass clazz) { return Parcel::getGlobalAllocCount(); } // ---------------------------------------------------------------------------- static const JNINativeMethod gParcelMethods[] = { Loading Loading @@ -737,6 +747,9 @@ static const JNINativeMethod gParcelMethods[] = { {"nativeHasFileDescriptors", "(J)Z", (void*)android_os_Parcel_hasFileDescriptors}, {"nativeWriteInterfaceToken", "(JLjava/lang/String;)V", (void*)android_os_Parcel_writeInterfaceToken}, {"nativeEnforceInterface", "(JLjava/lang/String;)V", (void*)android_os_Parcel_enforceInterface}, {"getGlobalAllocSize", "()J", (void*)android_os_Parcel_getGlobalAllocSize}, {"getGlobalAllocCount", "()J", (void*)android_os_Parcel_getGlobalAllocCount}, }; const char* const kParcelPathName = "android/os/Parcel"; Loading