summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Calin Juravle <calin@google.com> 2021-05-18 08:27:06 -0700
committer Calin Juravle <calin@google.com> 2021-05-19 21:06:34 +0000
commit303a702a9c09b72f812c8880c7acd754cd4a33d1 (patch)
tree180de9ad2c7a69a6fa1d4a35079294240bfefa7a
parentbd5ef4313013f5f86818a71fa1fae14e3a430a0c (diff)
Add cmdline as a compilation reason
Set the compiler reason to 'cmdline' when the compilation was initiated from cmdline. This will effectivively eliminate the 'unknown' reason from our metrics (except in some corner cases) Test: adb shell cmd compile ... Bug: 188655918 Change-Id: I0cb6e9182530bc2d88975af185a0a8256fae2c2c
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerService.java6
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerServiceCompilerMapping.java4
-rw-r--r--services/core/java/com/android/server/pm/dex/ArtManagerService.java3
-rw-r--r--services/core/java/com/android/server/pm/dex/ArtStatsLogUtils.java4
4 files changed, 8 insertions, 9 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index 0d06426a7ab5..bcd79ffa8585 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -674,7 +674,6 @@ public class PackageManagerService extends IPackageManager.Stub
}
// Compilation reasons.
- public static final int REASON_UNKNOWN = -1;
public static final int REASON_FIRST_BOOT = 0;
public static final int REASON_BOOT_AFTER_OTA = 1;
public static final int REASON_POST_BOOT = 2;
@@ -687,7 +686,8 @@ public class PackageManagerService extends IPackageManager.Stub
public static final int REASON_BACKGROUND_DEXOPT = 9;
public static final int REASON_AB_OTA = 10;
public static final int REASON_INACTIVE_PACKAGE_DOWNGRADE = 11;
- public static final int REASON_SHARED = 12;
+ public static final int REASON_CMDLINE = 12;
+ public static final int REASON_SHARED = 13;
public static final int REASON_LAST = REASON_SHARED;
@@ -9967,7 +9967,7 @@ public class PackageManagerService extends IPackageManager.Stub
int flags = (checkProfiles ? DexoptOptions.DEXOPT_CHECK_FOR_PROFILES_UPDATES : 0) |
(force ? DexoptOptions.DEXOPT_FORCE : 0) |
(bootComplete ? DexoptOptions.DEXOPT_BOOT_COMPLETE : 0);
- return performDexOpt(new DexoptOptions(packageName, REASON_UNKNOWN,
+ return performDexOpt(new DexoptOptions(packageName, REASON_CMDLINE,
targetCompilerFilter, splitName, flags));
}
diff --git a/services/core/java/com/android/server/pm/PackageManagerServiceCompilerMapping.java b/services/core/java/com/android/server/pm/PackageManagerServiceCompilerMapping.java
index 636db111be88..7c1f054a8fec 100644
--- a/services/core/java/com/android/server/pm/PackageManagerServiceCompilerMapping.java
+++ b/services/core/java/com/android/server/pm/PackageManagerServiceCompilerMapping.java
@@ -40,6 +40,7 @@ public class PackageManagerServiceCompilerMapping {
"bg-dexopt",
"ab-ota",
"inactive",
+ "cmdline",
// "shared" must be the last entry
"shared"
};
@@ -141,9 +142,6 @@ public class PackageManagerServiceCompilerMapping {
}
public static String getReasonName(int reason) {
- if (reason == PackageManagerService.REASON_UNKNOWN) {
- return "unknown";
- }
if (reason < 0 || reason >= REASON_STRINGS.length) {
throw new IllegalArgumentException("reason " + reason + " invalid");
}
diff --git a/services/core/java/com/android/server/pm/dex/ArtManagerService.java b/services/core/java/com/android/server/pm/dex/ArtManagerService.java
index f8dee441d251..42b40e5a991e 100644
--- a/services/core/java/com/android/server/pm/dex/ArtManagerService.java
+++ b/services/core/java/com/android/server/pm/dex/ArtManagerService.java
@@ -607,6 +607,7 @@ public class ArtManagerService extends android.content.pm.dex.IArtManager.Stub {
TRON_COMPILATION_REASON_INSTALL_BULK_SECONDARY_DOWNGRADED_WITH_DM = 19;
private static final int TRON_COMPILATION_REASON_BOOT_AFTER_OTA = 20;
private static final int TRON_COMPILATION_REASON_POST_BOOT = 21;
+ private static final int TRON_COMPILATION_REASON_CMDLINE = 22;
// The annotation to add as a suffix to the compilation reason when dexopt was
// performed with dex metadata.
@@ -617,7 +618,7 @@ public class ArtManagerService extends android.content.pm.dex.IArtManager.Stub {
*/
private static int getCompilationReasonTronValue(String compilationReason) {
switch (compilationReason) {
- case "unknown" : return TRON_COMPILATION_REASON_UNKNOWN;
+ case "cmdline" : return TRON_COMPILATION_REASON_CMDLINE;
case "error" : return TRON_COMPILATION_REASON_ERROR;
case "first-boot" : return TRON_COMPILATION_REASON_FIRST_BOOT;
case "boot-after-ota": return TRON_COMPILATION_REASON_BOOT_AFTER_OTA;
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 d67796b4e5f5..c72820e2838d 100644
--- a/services/core/java/com/android/server/pm/dex/ArtStatsLogUtils.java
+++ b/services/core/java/com/android/server/pm/dex/ArtStatsLogUtils.java
@@ -59,8 +59,6 @@ public class ArtStatsLogUtils {
private static final Map<Integer, Integer> COMPILATION_REASON_MAP = new HashMap();
static {
- COMPILATION_REASON_MAP.put(PackageManagerService.REASON_UNKNOWN, ArtStatsLog.
- ART_DATUM_REPORTED__COMPILATION_REASON__ART_COMPILATION_REASON_UNKNOWN);
COMPILATION_REASON_MAP.put(PackageManagerService.REASON_FIRST_BOOT, ArtStatsLog.
ART_DATUM_REPORTED__COMPILATION_REASON__ART_COMPILATION_REASON_FIRST_BOOT);
COMPILATION_REASON_MAP.put(PackageManagerService.REASON_BOOT_AFTER_OTA, ArtStatsLog.
@@ -86,6 +84,8 @@ public class ArtStatsLogUtils {
COMPILATION_REASON_MAP.put(PackageManagerService.REASON_INACTIVE_PACKAGE_DOWNGRADE,
ArtStatsLog.
ART_DATUM_REPORTED__COMPILATION_REASON__ART_COMPILATION_REASON_INACTIVE);
+ COMPILATION_REASON_MAP.put(PackageManagerService.REASON_CMDLINE,
+ ArtStatsLog.ART_DATUM_REPORTED__COMPILATION_REASON__ART_COMPILATION_REASON_CMDLINE);
COMPILATION_REASON_MAP.put(PackageManagerService.REASON_SHARED,
ArtStatsLog.ART_DATUM_REPORTED__COMPILATION_REASON__ART_COMPILATION_REASON_SHARED);
}