summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFyodor Kupolov <fkupolov@google.com>2017-08-10 17:00:43 -0700
committerFyodor Kupolov <fkupolov@google.com>2017-08-14 11:23:29 -0700
commit6e3461b67cae27a42a4d77fa277ba2d844ea0cde (patch)
treea3adf041c8c171ba753829a53e92bde4dfe55e5a
parenta2991d045d549fb7570619ae658a23f10bee172e (diff)
Log timings for shutdown stages
Renamed BootTimingsTraceLog to TimingsTraceLog. It is now used for boot and shutdown logging. Added measurements for main stages of shutdown in the system server: ShutdownTiming: SendShutdownBroadcast took to complete: 734ms ShutdownTiming: ShutdownActivityManager took to complete: 203ms ShutdownTiming: ShutdownPackageManager took to complete: 17ms ShutdownTiming: ShutdownBt took to complete: 533ms ShutdownTiming: ShutdownRadio took to complete: 534ms ShutdownTiming: ShutdownNfc took to complete: 1536ms ShutdownTiming: ShutdownRadios took to complete: 1538ms ShutdownTiming: ShutdownStorageManager took to complete: 906ms ShutdownTiming: SystemServerShutdown took to complete: 3918ms Bug: 64569080 Test: shutdown/reboot and check logs Change-Id: I636c045852cd1ed6be1c58af6608f70e95756389
-rw-r--r--config/compiled-classes-phone2
-rw-r--r--config/preloaded-classes2
-rw-r--r--core/java/android/util/TimingsTraceLog.java (renamed from core/java/android/util/BootTimingsTraceLog.java)31
-rw-r--r--core/java/com/android/internal/os/WrapperInit.java4
-rw-r--r--core/java/com/android/internal/os/ZygoteInit.java9
-rw-r--r--packages/SystemUI/src/com/android/systemui/SystemUIApplication.java6
-rw-r--r--services/art-profile2
-rw-r--r--services/core/java/com/android/server/am/ActivityManagerService.java4
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerService.java4
-rw-r--r--services/core/java/com/android/server/power/ShutdownThread.java34
-rw-r--r--services/java/com/android/server/SystemServer.java13
11 files changed, 71 insertions, 40 deletions
diff --git a/config/compiled-classes-phone b/config/compiled-classes-phone
index 548dc3896aa2..c8297286b784 100644
--- a/config/compiled-classes-phone
+++ b/config/compiled-classes-phone
@@ -4183,7 +4183,7 @@ android.util.Base64
android.util.Base64$Coder
android.util.Base64$Decoder
android.util.Base64$Encoder
-android.util.BootTimingsTraceLog
+android.util.TimingsTraceLog
android.util.ByteStringUtils
android.util.ContainerHelpers
android.util.DebugUtils
diff --git a/config/preloaded-classes b/config/preloaded-classes
index 96122319c8cf..b6be0ee80877 100644
--- a/config/preloaded-classes
+++ b/config/preloaded-classes
@@ -2276,7 +2276,7 @@ android.util.Base64
android.util.Base64$Coder
android.util.Base64$Decoder
android.util.Base64$Encoder
-android.util.BootTimingsTraceLog
+android.util.TimingsTraceLog
android.util.ContainerHelpers
android.util.DisplayMetrics
android.util.EventLog
diff --git a/core/java/android/util/BootTimingsTraceLog.java b/core/java/android/util/TimingsTraceLog.java
index 7a702a92d3b1..36e9f77bb831 100644
--- a/core/java/android/util/BootTimingsTraceLog.java
+++ b/core/java/android/util/TimingsTraceLog.java
@@ -11,7 +11,7 @@
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
- * limitations under the License
+ * limitations under the License.
*/
package android.util;
@@ -24,22 +24,26 @@ import java.util.ArrayDeque;
import java.util.Deque;
/**
- * Helper class for reporting boot timing metrics.
+ * Helper class for reporting boot and shutdown timing metrics.
* @hide
*/
-public class BootTimingsTraceLog {
+public class TimingsTraceLog {
// Debug boot time for every step if it's non-user build.
private static final boolean DEBUG_BOOT_TIME = !Build.IS_USER;
- private final Deque<Pair<String, Long>> mStartTimes
- = DEBUG_BOOT_TIME ? new ArrayDeque<>() : null;
+ private final Deque<Pair<String, Long>> mStartTimes =
+ DEBUG_BOOT_TIME ? new ArrayDeque<>() : null;
private final String mTag;
private long mTraceTag;
- public BootTimingsTraceLog(String tag, long traceTag) {
+ public TimingsTraceLog(String tag, long traceTag) {
mTag = tag;
mTraceTag = traceTag;
}
+ /**
+ * Begin tracing named section
+ * @param name name to appear in trace
+ */
public void traceBegin(String name) {
Trace.traceBegin(mTraceTag, name);
if (DEBUG_BOOT_TIME) {
@@ -47,6 +51,10 @@ public class BootTimingsTraceLog {
}
}
+ /**
+ * End tracing previously {@link #traceBegin(String) started} section.
+ * Also {@link #logDuration logs} the duration.
+ */
public void traceEnd() {
Trace.traceEnd(mTraceTag);
if (!DEBUG_BOOT_TIME) {
@@ -57,8 +65,13 @@ public class BootTimingsTraceLog {
return;
}
Pair<String, Long> event = mStartTimes.pop();
- // Log the duration so it can be parsed by external tools for performance reporting
- Slog.d(mTag, event.first + " took to complete: "
- + (SystemClock.elapsedRealtime() - event.second) + "ms");
+ logDuration(event.first, (SystemClock.elapsedRealtime() - event.second));
+ }
+
+ /**
+ * Log the duration so it can be parsed by external tools for performance reporting
+ */
+ public void logDuration(String name, long timeMs) {
+ Slog.d(mTag, name + " took to complete: " + timeMs + "ms");
}
}
diff --git a/core/java/com/android/internal/os/WrapperInit.java b/core/java/com/android/internal/os/WrapperInit.java
index 89328b21ccf5..49010802c784 100644
--- a/core/java/com/android/internal/os/WrapperInit.java
+++ b/core/java/com/android/internal/os/WrapperInit.java
@@ -23,7 +23,7 @@ import android.system.Os;
import android.system.OsConstants;
import android.system.StructCapUserData;
import android.system.StructCapUserHeader;
-import android.util.BootTimingsTraceLog;
+import android.util.TimingsTraceLog;
import android.util.Slog;
import dalvik.system.VMRuntime;
import java.io.DataOutputStream;
@@ -80,7 +80,7 @@ public class WrapperInit {
}
// Mimic system Zygote preloading.
- ZygoteInit.preload(new BootTimingsTraceLog("WrapperInitTiming",
+ ZygoteInit.preload(new TimingsTraceLog("WrapperInitTiming",
Trace.TRACE_TAG_DALVIK));
// Launch the application.
diff --git a/core/java/com/android/internal/os/ZygoteInit.java b/core/java/com/android/internal/os/ZygoteInit.java
index 948f20311905..25e90ad13a25 100644
--- a/core/java/com/android/internal/os/ZygoteInit.java
+++ b/core/java/com/android/internal/os/ZygoteInit.java
@@ -43,7 +43,7 @@ import android.system.ErrnoException;
import android.system.Os;
import android.system.OsConstants;
import android.text.Hyphenator;
-import android.util.BootTimingsTraceLog;
+import android.util.TimingsTraceLog;
import android.util.EventLog;
import android.util.Log;
import android.util.Slog;
@@ -54,7 +54,6 @@ import com.android.internal.logging.MetricsLogger;
import com.android.internal.util.Preconditions;
import dalvik.system.DexFile;
-import dalvik.system.PathClassLoader;
import dalvik.system.VMRuntime;
import dalvik.system.ZygoteHooks;
@@ -120,7 +119,7 @@ public class ZygoteInit {
private static boolean sPreloadComplete;
- static void preload(BootTimingsTraceLog bootTimingsTraceLog) {
+ static void preload(TimingsTraceLog bootTimingsTraceLog) {
Log.d(TAG, "begin preload");
bootTimingsTraceLog.traceBegin("BeginIcuCachePinning");
beginIcuCachePinning();
@@ -153,7 +152,7 @@ public class ZygoteInit {
Preconditions.checkState(!sPreloadComplete);
Log.i(TAG, "Lazily preloading resources.");
- preload(new BootTimingsTraceLog("ZygoteInitTiming_lazy", Trace.TRACE_TAG_DALVIK));
+ preload(new TimingsTraceLog("ZygoteInitTiming_lazy", Trace.TRACE_TAG_DALVIK));
}
private static void beginIcuCachePinning() {
@@ -719,7 +718,7 @@ public class ZygoteInit {
}
String bootTimeTag = Process.is64Bit() ? "Zygote64Timing" : "Zygote32Timing";
- BootTimingsTraceLog bootTimingsTraceLog = new BootTimingsTraceLog(bootTimeTag,
+ TimingsTraceLog bootTimingsTraceLog = new TimingsTraceLog(bootTimeTag,
Trace.TRACE_TAG_DALVIK);
bootTimingsTraceLog.traceBegin("ZygoteInit");
RuntimeInit.enableDdms();
diff --git a/packages/SystemUI/src/com/android/systemui/SystemUIApplication.java b/packages/SystemUI/src/com/android/systemui/SystemUIApplication.java
index d8da5ed71894..49a076f07a25 100644
--- a/packages/SystemUI/src/com/android/systemui/SystemUIApplication.java
+++ b/packages/SystemUI/src/com/android/systemui/SystemUIApplication.java
@@ -30,10 +30,9 @@ import android.os.SystemProperties;
import android.os.Trace;
import android.os.UserHandle;
import android.util.ArraySet;
-import android.util.BootTimingsTraceLog;
+import android.util.TimingsTraceLog;
import android.util.Log;
-import com.android.systemui.fragments.FragmentService;
import com.android.systemui.globalactions.GlobalActionsComponent;
import com.android.systemui.keyboard.KeyboardUI;
import com.android.systemui.keyguard.KeyguardViewMediator;
@@ -52,7 +51,6 @@ import com.android.systemui.stackdivider.Divider;
import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.phone.StatusBar;
import com.android.systemui.statusbar.phone.StatusBarWindowManager;
-import com.android.systemui.tuner.TunerService;
import com.android.systemui.usb.StorageNotification;
import com.android.systemui.util.NotificationChannels;
import com.android.systemui.util.leak.GarbageMonitor;
@@ -194,7 +192,7 @@ public class SystemUIApplication extends Application implements SysUiServiceProv
Log.v(TAG, "Starting SystemUI services for user " +
Process.myUserHandle().getIdentifier() + ".");
- BootTimingsTraceLog log = new BootTimingsTraceLog("SystemUIBootTiming",
+ TimingsTraceLog log = new TimingsTraceLog("SystemUIBootTiming",
Trace.TRACE_TAG_APP);
log.traceBegin("StartServices");
final int N = services.length;
diff --git a/services/art-profile b/services/art-profile
index 140465a1c35e..28762a8932db 100644
--- a/services/art-profile
+++ b/services/art-profile
@@ -5445,7 +5445,7 @@ PLcom/android/server/am/ActivityManagerService;->stopAppSwitches()V
PLcom/android/server/am/ActivityManagerService;->stopAssociationLocked(ILjava/lang/String;ILandroid/content/ComponentName;)V
PLcom/android/server/am/ActivityManagerService;->stopService(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;I)I
PLcom/android/server/am/ActivityManagerService;->stopServiceToken(Landroid/content/ComponentName;Landroid/os/IBinder;I)Z
-PLcom/android/server/am/ActivityManagerService;->systemReady(Ljava/lang/Runnable;Landroid/util/BootTimingsTraceLog;)V
+PLcom/android/server/am/ActivityManagerService;->systemReady(Ljava/lang/Runnable;Landroid/util/TimingsTraceLog;)V
PLcom/android/server/am/ActivityManagerService;->trimApplications()V
PLcom/android/server/am/ActivityManagerService;->uidOnBackgroundWhitelist(I)Z
PLcom/android/server/am/ActivityManagerService;->unbindFinished(Landroid/os/IBinder;Landroid/content/Intent;Z)V
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index 161bf9adce30..1d860d601601 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -338,7 +338,7 @@ import android.text.style.SuggestionSpan;
import android.util.ArrayMap;
import android.util.ArraySet;
import android.util.AtomicFile;
-import android.util.BootTimingsTraceLog;
+import android.util.TimingsTraceLog;
import android.util.DebugUtils;
import android.util.DisplayMetrics;
import android.util.EventLog;
@@ -14049,7 +14049,7 @@ public class ActivityManagerService extends IActivityManager.Stub
}
}
- public void systemReady(final Runnable goingCallback, BootTimingsTraceLog traceLog) {
+ public void systemReady(final Runnable goingCallback, TimingsTraceLog traceLog) {
traceLog.traceBegin("PhaseActivityManagerReady");
synchronized(this) {
if (mSystemReady) {
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index 88d7cf893184..9dec7d0ec990 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -227,7 +227,7 @@ import android.text.format.DateUtils;
import android.util.ArrayMap;
import android.util.ArraySet;
import android.util.Base64;
-import android.util.BootTimingsTraceLog;
+import android.util.TimingsTraceLog;
import android.util.DisplayMetrics;
import android.util.EventLog;
import android.util.ExceptionUtils;
@@ -2940,7 +2940,7 @@ public class PackageManagerService extends IPackageManager.Stub
UserHandle.USER_SYSTEM, storageFlags, true /* migrateAppData */,
true /* onlyCoreApps */);
mPrepareAppDataFuture = SystemServerInitThreadPool.get().submit(() -> {
- BootTimingsTraceLog traceLog = new BootTimingsTraceLog("SystemServerTimingAsync",
+ TimingsTraceLog traceLog = new TimingsTraceLog("SystemServerTimingAsync",
Trace.TRACE_TAG_PACKAGE_MANAGER);
traceLog.traceBegin("AppDataFixup");
try {
diff --git a/services/core/java/com/android/server/power/ShutdownThread.java b/services/core/java/com/android/server/power/ShutdownThread.java
index d0ca57a5073f..d1a5953ee763 100644
--- a/services/core/java/com/android/server/power/ShutdownThread.java
+++ b/services/core/java/com/android/server/power/ShutdownThread.java
@@ -45,16 +45,15 @@ import android.os.ServiceManager;
import android.os.SystemClock;
import android.os.SystemProperties;
import android.os.SystemVibrator;
+import android.os.Trace;
import android.os.UserHandle;
import android.os.UserManager;
import android.os.Vibrator;
import android.os.storage.IStorageManager;
import android.os.storage.IStorageShutdownObserver;
import android.util.Log;
-import android.view.ViewGroup;
+import android.util.TimingsTraceLog;
import android.view.WindowManager;
-import android.widget.ProgressBar;
-import android.widget.TextView;
import com.android.internal.telephony.ITelephony;
import com.android.server.RescueParty;
@@ -108,6 +107,9 @@ public final class ShutdownThread extends Thread {
.setUsage(AudioAttributes.USAGE_ASSISTANCE_SONIFICATION)
.build();
+ private static final TimingsTraceLog SHUTDOWN_TIMINGS_LOG = new TimingsTraceLog(
+ "ShutdownTiming", Trace.TRACE_TAG_SYSTEM_SERVER);
+
private final Object mActionDoneSync = new Object();
private boolean mActionDone;
private Context mContext;
@@ -346,6 +348,7 @@ public final class ShutdownThread extends Thread {
}
private static void beginShutdownSequence(Context context) {
+ SHUTDOWN_TIMINGS_LOG.traceBegin("SystemServerShutdown");
synchronized (sIsStartedGuard) {
if (sIsStarted) {
Log.d(TAG, "Shutdown sequence already running, returning.");
@@ -427,6 +430,7 @@ public final class ShutdownThread extends Thread {
SystemProperties.set(REBOOT_SAFEMODE_PROPERTY, "1");
}
+ SHUTDOWN_TIMINGS_LOG.traceBegin("SendShutdownBroadcast");
Log.i(TAG, "Sending shutdown broadcast...");
// First send the high-level shut down broadcast.
@@ -458,8 +462,10 @@ public final class ShutdownThread extends Thread {
if (mRebootHasProgressBar) {
sInstance.setRebootProgress(BROADCAST_STOP_PERCENT, null);
}
+ SHUTDOWN_TIMINGS_LOG.traceEnd(); // SendShutdownBroadcast
Log.i(TAG, "Shutting down activity manager...");
+ SHUTDOWN_TIMINGS_LOG.traceBegin("ShutdownActivityManager");
final IActivityManager am =
IActivityManager.Stub.asInterface(ServiceManager.checkService("activity"));
@@ -472,8 +478,10 @@ public final class ShutdownThread extends Thread {
if (mRebootHasProgressBar) {
sInstance.setRebootProgress(ACTIVITY_MANAGER_STOP_PERCENT, null);
}
+ SHUTDOWN_TIMINGS_LOG.traceEnd(); // ShutdownActivityManager
Log.i(TAG, "Shutting down package manager...");
+ SHUTDOWN_TIMINGS_LOG.traceBegin("ShutdownPackageManager");
final PackageManagerService pm = (PackageManagerService)
ServiceManager.getService("package");
@@ -483,12 +491,15 @@ public final class ShutdownThread extends Thread {
if (mRebootHasProgressBar) {
sInstance.setRebootProgress(PACKAGE_MANAGER_STOP_PERCENT, null);
}
+ SHUTDOWN_TIMINGS_LOG.traceEnd(); // ShutdownPackageManager
// Shutdown radios.
+ SHUTDOWN_TIMINGS_LOG.traceBegin("ShutdownRadios");
shutdownRadios(MAX_RADIO_WAIT_TIME);
if (mRebootHasProgressBar) {
sInstance.setRebootProgress(RADIO_STOP_PERCENT, null);
}
+ SHUTDOWN_TIMINGS_LOG.traceEnd(); // ShutdownRadios
// Shutdown StorageManagerService to ensure media is in a safe state
IStorageShutdownObserver observer = new IStorageShutdownObserver.Stub() {
@@ -499,6 +510,7 @@ public final class ShutdownThread extends Thread {
};
Log.i(TAG, "Shutting down StorageManagerService");
+ SHUTDOWN_TIMINGS_LOG.traceBegin("ShutdownStorageManager");
// Set initial variables and time out time.
mActionDone = false;
@@ -518,7 +530,7 @@ public final class ShutdownThread extends Thread {
while (!mActionDone) {
long delay = endShutTime - SystemClock.elapsedRealtime();
if (delay <= 0) {
- Log.w(TAG, "Shutdown wait timed out");
+ Log.w(TAG, "StorageManager shutdown wait timed out");
break;
} else if (mRebootHasProgressBar) {
int status = (int)((MAX_SHUTDOWN_WAIT_TIME - delay) * 1.0 *
@@ -533,6 +545,8 @@ public final class ShutdownThread extends Thread {
}
}
}
+ SHUTDOWN_TIMINGS_LOG.traceEnd(); // ShutdownStorageManager
+
if (mRebootHasProgressBar) {
sInstance.setRebootProgress(MOUNT_SERVICE_STOP_PERCENT, null);
@@ -576,7 +590,7 @@ public final class ShutdownThread extends Thread {
final IBluetoothManager bluetooth =
IBluetoothManager.Stub.asInterface(ServiceManager.checkService(
BluetoothAdapter.BLUETOOTH_MANAGER_SERVICE));
-
+ final long nfcShutdownStarted = SystemClock.elapsedRealtime();
try {
nfcOff = nfc == null ||
nfc.getState() == NfcAdapter.STATE_OFF;
@@ -589,6 +603,7 @@ public final class ShutdownThread extends Thread {
nfcOff = true;
}
+ final long btShutdownStarted = SystemClock.elapsedRealtime();
try {
bluetoothReadyForShutdown = bluetooth == null ||
bluetooth.getState() == BluetoothAdapter.STATE_OFF;
@@ -601,6 +616,7 @@ public final class ShutdownThread extends Thread {
bluetoothReadyForShutdown = true;
}
+ final long radioShutdownStarted = SystemClock.elapsedRealtime();
try {
radioOff = phone == null || !phone.needMobileRadioShutdown();
if (!radioOff) {
@@ -637,6 +653,8 @@ public final class ShutdownThread extends Thread {
}
if (bluetoothReadyForShutdown) {
Log.i(TAG, "Bluetooth turned off.");
+ SHUTDOWN_TIMINGS_LOG.logDuration("ShutdownBt",
+ SystemClock.elapsedRealtime() - btShutdownStarted);
}
}
if (!radioOff) {
@@ -648,6 +666,8 @@ public final class ShutdownThread extends Thread {
}
if (radioOff) {
Log.i(TAG, "Radio turned off.");
+ SHUTDOWN_TIMINGS_LOG.logDuration("ShutdownRadio",
+ SystemClock.elapsedRealtime() - radioShutdownStarted);
}
}
if (!nfcOff) {
@@ -659,6 +679,8 @@ public final class ShutdownThread extends Thread {
}
if (nfcOff) {
Log.i(TAG, "NFC turned off.");
+ SHUTDOWN_TIMINGS_LOG.logDuration("ShutdownNfc",
+ SystemClock.elapsedRealtime() - nfcShutdownStarted);
}
}
@@ -714,7 +736,7 @@ public final class ShutdownThread extends Thread {
} catch (InterruptedException unused) {
}
}
-
+ SHUTDOWN_TIMINGS_LOG.traceEnd(); // SystemServerShutdown
// Shutdown power
Log.i(TAG, "Performing low-level shutdown...");
PowerManagerService.lowLevelShutdown(reason);
diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java
index a1b9099f8bab..3c1262f089bc 100644
--- a/services/java/com/android/server/SystemServer.java
+++ b/services/java/com/android/server/SystemServer.java
@@ -45,7 +45,7 @@ import android.os.SystemProperties;
import android.os.Trace;
import android.os.UserHandle;
import android.os.storage.IStorageManager;
-import android.util.BootTimingsTraceLog;
+import android.util.TimingsTraceLog;
import android.util.DisplayMetrics;
import android.util.EventLog;
import android.util.Slog;
@@ -121,7 +121,6 @@ import java.io.File;
import java.io.IOException;
import java.util.Locale;
import java.util.Timer;
-import java.util.TimerTask;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.Future;
@@ -135,8 +134,8 @@ public final class SystemServer {
// Tag for timing measurement of non-main asynchronous operations.
private static final String SYSTEM_SERVER_TIMING_ASYNC_TAG = SYSTEM_SERVER_TIMING_TAG + "Async";
- private static final BootTimingsTraceLog BOOT_TIMINGS_TRACE_LOG
- = new BootTimingsTraceLog(SYSTEM_SERVER_TIMING_TAG, Trace.TRACE_TAG_SYSTEM_SERVER);
+ private static final TimingsTraceLog BOOT_TIMINGS_TRACE_LOG
+ = new TimingsTraceLog(SYSTEM_SERVER_TIMING_TAG, Trace.TRACE_TAG_SYSTEM_SERVER);
private static final String ENCRYPTING_STATE = "trigger_restart_min_framework";
private static final String ENCRYPTED_STATE = "1";
@@ -638,7 +637,7 @@ public final class SystemServer {
// Start sensor service in a separate thread. Completion should be checked
// before using it.
mSensorServiceStart = SystemServerInitThreadPool.get().submit(() -> {
- BootTimingsTraceLog traceLog = new BootTimingsTraceLog(
+ TimingsTraceLog traceLog = new TimingsTraceLog(
SYSTEM_SERVER_TIMING_ASYNC_TAG, Trace.TRACE_TAG_SYSTEM_SERVER);
traceLog.traceBegin(START_SENSOR_SERVICE);
startSensorService();
@@ -736,7 +735,7 @@ public final class SystemServer {
mZygotePreload = SystemServerInitThreadPool.get().submit(() -> {
try {
Slog.i(TAG, SECONDARY_ZYGOTE_PRELOAD);
- BootTimingsTraceLog traceLog = new BootTimingsTraceLog(
+ TimingsTraceLog traceLog = new TimingsTraceLog(
SYSTEM_SERVER_TIMING_ASYNC_TAG, Trace.TRACE_TAG_SYSTEM_SERVER);
traceLog.traceBegin(SECONDARY_ZYGOTE_PRELOAD);
if (!Process.zygoteProcess.preloadDefault(Build.SUPPORTED_32_BIT_ABIS[0])) {
@@ -1686,7 +1685,7 @@ public final class SystemServer {
if (!mOnlyCore) {
webviewPrep = SystemServerInitThreadPool.get().submit(() -> {
Slog.i(TAG, WEBVIEW_PREPARATION);
- BootTimingsTraceLog traceLog = new BootTimingsTraceLog(
+ TimingsTraceLog traceLog = new TimingsTraceLog(
SYSTEM_SERVER_TIMING_ASYNC_TAG, Trace.TRACE_TAG_SYSTEM_SERVER);
traceLog.traceBegin(WEBVIEW_PREPARATION);
ConcurrentUtils.waitForFutureNoInterrupt(mZygotePreload, "Zygote preload");