diff options
| author | 2022-04-05 11:32:33 +0000 | |
|---|---|---|
| committer | 2022-04-05 11:32:33 +0000 | |
| commit | 281d15d1788dca60d0052e2908e5a7d00f0d9f05 (patch) | |
| tree | 3e3cf3f88aad2e29eb887f93a2bc6d8228c42e17 | |
| parent | 034c557fb7a244f174f02e98b71fa6502bb38dc4 (diff) | |
| parent | b295d082b04de23aafb6af6b5806d7cdc1612f96 (diff) | |
Merge "Remove mInstallLock from dexopt." into tm-dev am: f5393cec0d am: b295d082b0
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17570178
Change-Id: Ibea502627334f2d8fb1d31827cf67665577cc6b0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
| -rw-r--r-- | services/core/java/com/android/server/pm/DexOptHelper.java | 26 |
1 files changed, 11 insertions, 15 deletions
diff --git a/services/core/java/com/android/server/pm/DexOptHelper.java b/services/core/java/com/android/server/pm/DexOptHelper.java index bb2ba5cc498d..249099d122a1 100644 --- a/services/core/java/com/android/server/pm/DexOptHelper.java +++ b/services/core/java/com/android/server/pm/DexOptHelper.java @@ -358,9 +358,7 @@ final class DexOptHelper { } final long callingId = Binder.clearCallingIdentity(); try { - synchronized (mPm.mInstallLock) { - return performDexOptInternalWithDependenciesLI(p, pkgSetting, options); - } + return performDexOptInternalWithDependenciesLI(p, pkgSetting, options); } finally { Binder.restoreCallingIdentity(callingId); } @@ -429,20 +427,18 @@ final class DexOptHelper { throw new IllegalArgumentException("Unknown package: " + packageName); } - synchronized (mPm.mInstallLock) { - Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "dexopt"); + Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "dexopt"); - // Whoever is calling forceDexOpt wants a compiled package. - // Don't use profiles since that may cause compilation to be skipped. - final int res = performDexOptInternalWithDependenciesLI(pkg, packageState, - new DexoptOptions(packageName, - getDefaultCompilerFilter(), - DexoptOptions.DEXOPT_FORCE | DexoptOptions.DEXOPT_BOOT_COMPLETE)); + // Whoever is calling forceDexOpt wants a compiled package. + // Don't use profiles since that may cause compilation to be skipped. + final int res = performDexOptInternalWithDependenciesLI(pkg, packageState, + new DexoptOptions(packageName, + getDefaultCompilerFilter(), + DexoptOptions.DEXOPT_FORCE | DexoptOptions.DEXOPT_BOOT_COMPLETE)); - Trace.traceEnd(TRACE_TAG_PACKAGE_MANAGER); - if (res != PackageDexOptimizer.DEX_OPT_PERFORMED) { - throw new IllegalStateException("Failed to dexopt: " + res); - } + Trace.traceEnd(TRACE_TAG_PACKAGE_MANAGER); + if (res != PackageDexOptimizer.DEX_OPT_PERFORMED) { + throw new IllegalStateException("Failed to dexopt: " + res); } } |