Include 'mEarliestFreezableTimeMillis' in the activity dump.

Also, skip dumping slow uid dispatches info if the caller is
requesting dump for a particular package.

Bug: 285215797
Test: manual
Change-Id: Ia547337a614f57ae72d114fd700682c232e7bccc
This commit is contained in:
Sudheer Shanka
2023-05-31 18:14:13 -07:00
parent 5ed54a5019
commit a3531f1d22
2 changed files with 21 additions and 15 deletions

View File

@@ -18,6 +18,7 @@ package com.android.server.am;
import android.annotation.UptimeMillisLong;
import android.app.ActivityManagerInternal.OomAdjReason;
import android.util.TimeUtils;
import com.android.internal.annotations.GuardedBy;
import com.android.internal.annotations.VisibleForTesting;
@@ -320,5 +321,8 @@ final class ProcessCachedOptimizerRecord {
pw.print(prefix); pw.print("isFreezeExempt="); pw.print(mFreezeExempt);
pw.print(" isPendingFreeze="); pw.print(mPendingFreeze);
pw.print(" " + IS_FROZEN + "="); pw.println(mFrozen);
pw.print(prefix); pw.print("earliestFreezableTimeMs=");
TimeUtils.formatDuration(mEarliestFreezableTimeMillis, nowUptime, pw);
pw.println();
}
}

View File

@@ -429,21 +429,23 @@ public class UidObserverController {
}
}
pw.println();
pw.print(" mUidChangeDispatchCount=");
pw.print(mUidChangeDispatchCount);
pw.println();
pw.println(" Slow UID dispatches:");
for (int i = 0; i < count; i++) {
final UidObserverRegistration reg = (UidObserverRegistration)
mUidObservers.getRegisteredCallbackCookie(i);
pw.print(" ");
pw.print(mUidObservers.getRegisteredCallbackItem(i).getClass().getTypeName());
pw.print(": ");
pw.print(reg.mSlowDispatchCount);
pw.print(" / Max ");
pw.print(reg.mMaxDispatchTime);
pw.println("ms");
if (dumpPackage == null) {
pw.println();
pw.print(" mUidChangeDispatchCount=");
pw.print(mUidChangeDispatchCount);
pw.println();
pw.println(" Slow UID dispatches:");
for (int i = 0; i < count; i++) {
final UidObserverRegistration reg = (UidObserverRegistration)
mUidObservers.getRegisteredCallbackCookie(i);
pw.print(" ");
pw.print(mUidObservers.getRegisteredCallbackItem(i).getClass().getTypeName());
pw.print(": ");
pw.print(reg.mSlowDispatchCount);
pw.print(" / Max ");
pw.print(reg.mMaxDispatchTime);
pw.println("ms");
}
}
}
}