From ec18adb5b5bcb1aaa4765779c58be9fbc8d2b1a2 Mon Sep 17 00:00:00 2001 From: Stefano Cianciulli Date: Wed, 9 Nov 2022 14:57:32 +0000 Subject: [PATCH] Stop reporting the duration including sleep for background DexOpt It is not needed anymore becaus the job scheduler holds a wake lock, so this duration is always the same as duration_ms. Bug: 255759883 Test: atest BackgroundDexOptServiceUnitTest Merged-In: I10313e007b987569dd67b0ab0867a52745dd6a8b Change-Id: I0461f4f65f4c0b9a4368e3e0f83050de5b6ba141 --- .../android/server/pm/BackgroundDexOptService.java | 13 +------------ .../com/android/server/pm/dex/ArtStatsLogUtils.java | 11 +++++++---- 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/services/core/java/com/android/server/pm/BackgroundDexOptService.java b/services/core/java/com/android/server/pm/BackgroundDexOptService.java index 5a01ccbb7d6fb..e41188049876c 100644 --- a/services/core/java/com/android/server/pm/BackgroundDexOptService.java +++ b/services/core/java/com/android/server/pm/BackgroundDexOptService.java @@ -149,8 +149,6 @@ public final class BackgroundDexOptService { @GuardedBy("mLock") @Status private int mLastExecutionStatus = STATUS_OK; - @GuardedBy("mLock") private long mLastExecutionStartTimeMs; - @GuardedBy("mLock") private long mLastExecutionDurationIncludingSleepMs; @GuardedBy("mLock") private long mLastExecutionStartUptimeMs; @GuardedBy("mLock") private long mLastExecutionDurationMs; @@ -229,10 +227,6 @@ public final class BackgroundDexOptService { writer.println(mFinishedPostBootUpdate); writer.print("mLastExecutionStatus:"); writer.println(mLastExecutionStatus); - writer.print("mLastExecutionStartTimeMs:"); - writer.println(mLastExecutionStartTimeMs); - writer.print("mLastExecutionDurationIncludingSleepMs:"); - writer.println(mLastExecutionDurationIncludingSleepMs); writer.print("mLastExecutionStartUptimeMs:"); writer.println(mLastExecutionStartUptimeMs); writer.print("mLastExecutionDurationMs:"); @@ -539,8 +533,6 @@ public final class BackgroundDexOptService { private boolean runIdleOptimization( PackageManagerService pm, List pkgs, boolean isPostBootUpdate) { synchronized (mLock) { - mLastExecutionStartTimeMs = SystemClock.elapsedRealtime(); - mLastExecutionDurationIncludingSleepMs = -1; mLastExecutionStartUptimeMs = SystemClock.uptimeMillis(); mLastExecutionDurationMs = -1; } @@ -549,8 +541,6 @@ public final class BackgroundDexOptService { logStatus(status); synchronized (mLock) { mLastExecutionStatus = status; - mLastExecutionDurationIncludingSleepMs = - SystemClock.elapsedRealtime() - mLastExecutionStartTimeMs; mLastExecutionDurationMs = SystemClock.uptimeMillis() - mLastExecutionStartUptimeMs; } @@ -954,10 +944,9 @@ public final class BackgroundDexOptService { synchronized (mLock) { status = mLastExecutionStatus; durationMs = mLastExecutionDurationMs; - durationIncludingSleepMs = mLastExecutionDurationIncludingSleepMs; } - mStatsLogger.write(status, params.getStopReason(), durationMs, durationIncludingSleepMs); + mStatsLogger.write(status, params.getStopReason(), durationMs); } /** Injector pattern for testing purpose */ diff --git a/services/core/java/com/android/server/pm/dex/ArtStatsLogUtils.java b/services/core/java/com/android/server/pm/dex/ArtStatsLogUtils.java index 905bcf969eaf9..14075301d523f 100644 --- a/services/core/java/com/android/server/pm/dex/ArtStatsLogUtils.java +++ b/services/core/java/com/android/server/pm/dex/ArtStatsLogUtils.java @@ -320,12 +320,15 @@ public class ArtStatsLogUtils { public static class BackgroundDexoptJobStatsLogger { /** Writes background dexopt job stats to statsd. */ public void write(@BackgroundDexOptService.Status int status, - @JobParameters.StopReason int cancellationReason, long durationMs, - long durationIncludingSleepMs) { - ArtStatsLog.write(ArtStatsLog.BACKGROUND_DEXOPT_JOB_ENDED, + @JobParameters.StopReason int cancellationReason, + long durationMs) { + ArtStatsLog.write( + ArtStatsLog.BACKGROUND_DEXOPT_JOB_ENDED, STATUS_MAP.getOrDefault(status, ArtStatsLog.BACKGROUND_DEXOPT_JOB_ENDED__STATUS__STATUS_UNKNOWN), - cancellationReason, durationMs, durationIncludingSleepMs); + cancellationReason, + durationMs, + 0); // deprecated, used to be durationIncludingSleepMs } } }