Loading services/core/java/com/android/server/pm/ComputerEngine.java +28 −23 Original line number Diff line number Diff line Loading @@ -2998,6 +2998,9 @@ public class ComputerEngine implements Computer { } ipw.println("Dexopt state:"); ipw.increaseIndent(); if (DexOptHelper.useArtService()) { DexOptHelper.dumpDexoptState(ipw, packageName); } else { Collection<? extends PackageStateInternal> pkgSettings; if (setting != null) { pkgSettings = Collections.singletonList(setting); Loading Loading @@ -3028,6 +3031,8 @@ public class ComputerEngine implements Computer { ipw.increaseIndent(); mBackgroundDexOptService.dump(ipw); ipw.decreaseIndent(); } ipw.decreaseIndent(); break; } Loading services/core/java/com/android/server/pm/DexOptHelper.java +21 −0 Original line number Diff line number Diff line Loading @@ -57,6 +57,7 @@ import android.util.Log; import android.util.Slog; import com.android.internal.logging.MetricsLogger; import com.android.internal.util.IndentingPrintWriter; import com.android.server.LocalManagerRegistry; import com.android.server.art.ArtManagerLocal; import com.android.server.art.DexUseManagerLocal; Loading Loading @@ -843,6 +844,26 @@ public final class DexOptHelper { mPm.mPackageDexOptimizer.controlDexOptBlocking(block); } /** * Dumps the dexopt state for the given package, or all packages if it is null. */ public static void dumpDexoptState( @NonNull IndentingPrintWriter ipw, @Nullable String packageName) { try (PackageManagerLocal.FilteredSnapshot snapshot = getPackageManagerLocal().withFilteredSnapshot()) { if (packageName != null) { try { DexOptHelper.getArtManagerLocal().dumpPackage(ipw, snapshot, packageName); } catch (IllegalArgumentException e) { // Package isn't found, but that should only happen due to race. ipw.println(e); } } else { DexOptHelper.getArtManagerLocal().dump(ipw, snapshot); } } } /** * Returns the module names of the APEXes that contribute to bootclasspath. */ Loading Loading
services/core/java/com/android/server/pm/ComputerEngine.java +28 −23 Original line number Diff line number Diff line Loading @@ -2998,6 +2998,9 @@ public class ComputerEngine implements Computer { } ipw.println("Dexopt state:"); ipw.increaseIndent(); if (DexOptHelper.useArtService()) { DexOptHelper.dumpDexoptState(ipw, packageName); } else { Collection<? extends PackageStateInternal> pkgSettings; if (setting != null) { pkgSettings = Collections.singletonList(setting); Loading Loading @@ -3028,6 +3031,8 @@ public class ComputerEngine implements Computer { ipw.increaseIndent(); mBackgroundDexOptService.dump(ipw); ipw.decreaseIndent(); } ipw.decreaseIndent(); break; } Loading
services/core/java/com/android/server/pm/DexOptHelper.java +21 −0 Original line number Diff line number Diff line Loading @@ -57,6 +57,7 @@ import android.util.Log; import android.util.Slog; import com.android.internal.logging.MetricsLogger; import com.android.internal.util.IndentingPrintWriter; import com.android.server.LocalManagerRegistry; import com.android.server.art.ArtManagerLocal; import com.android.server.art.DexUseManagerLocal; Loading Loading @@ -843,6 +844,26 @@ public final class DexOptHelper { mPm.mPackageDexOptimizer.controlDexOptBlocking(block); } /** * Dumps the dexopt state for the given package, or all packages if it is null. */ public static void dumpDexoptState( @NonNull IndentingPrintWriter ipw, @Nullable String packageName) { try (PackageManagerLocal.FilteredSnapshot snapshot = getPackageManagerLocal().withFilteredSnapshot()) { if (packageName != null) { try { DexOptHelper.getArtManagerLocal().dumpPackage(ipw, snapshot, packageName); } catch (IllegalArgumentException e) { // Package isn't found, but that should only happen due to race. ipw.println(e); } } else { DexOptHelper.getArtManagerLocal().dump(ipw, snapshot); } } } /** * Returns the module names of the APEXes that contribute to bootclasspath. */ Loading