Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 76f78706 authored by JW Wang's avatar JW Wang Committed by Automerger Merge Worker
Browse files

Merge "Add logs to profile the performance of staged-install on boot (1/n)"...

Merge "Add logs to profile the performance of staged-install on boot (1/n)" into sc-dev am: 02b1a056 am: ed26f39b am: b29b8629

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14516715

Change-Id: Ib2ed0f839969e145152a9c04041631b5fe84fb7a
parents 55e13059 b29b8629
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -48,12 +48,14 @@ import android.os.Message;
import android.os.PowerManager;
import android.os.RemoteException;
import android.os.SystemProperties;
import android.os.Trace;
import android.os.UserHandle;
import android.text.TextUtils;
import android.util.ArraySet;
import android.util.IntArray;
import android.util.Slog;
import android.util.SparseArray;
import android.util.TimingsTraceLog;
import android.util.apk.ApkSignatureVerifier;

import com.android.internal.annotations.GuardedBy;
@@ -513,7 +515,11 @@ public class StagingManager {
        }
        // The APEX part of the session is activated, proceed with the installation of APKs.
        Slog.d(TAG, "Installing APK packages in session " + session.sessionId());
        TimingsTraceLog t = new TimingsTraceLog(
                "StagingManagerTiming", Trace.TRACE_TAG_PACKAGE_MANAGER);
        t.traceBegin("installApksInSession");
        installApksInSession(session);
        t.traceEnd();

        Slog.d(TAG, "Marking session " + session.sessionId() + " as applied");
        session.setSessionApplied();
@@ -839,6 +845,10 @@ public class StagingManager {
    }

    void restoreSessions(@NonNull List<StagedSession> sessions, boolean isDeviceUpgrading) {
        TimingsTraceLog t = new TimingsTraceLog(
                "StagingManagerTiming", Trace.TRACE_TAG_PACKAGE_MANAGER);
        t.traceBegin("restoreSessions");

        // Do not resume sessions if boot completed already
        if (SystemProperties.getBoolean("sys.boot_completed", false)) {
            return;
@@ -971,6 +981,7 @@ public class StagingManager {
                        supportsCheckpoint, needsCheckpoint);
            }
        }
        t.traceEnd();
    }

    private void logFailedApexSessionsIfNecessary() {