diff options
| author | 2022-04-04 09:46:54 -0700 | |
|---|---|---|
| committer | 2022-04-04 20:42:21 +0000 | |
| commit | 4a31aa128840e152082364b455ed5dbef4a807ff (patch) | |
| tree | e1504b53f0b01c97c7539b3e97f26fe26f262abc | |
| parent | a7b858cd2dd2c4843f24a3887d7269dbb0922b19 (diff) | |
Remove mInstallLock from dexopt.
Internal locking in installd should be sufficient.
Bug: 165026324
Fixes: 165026324
Test: presubmit
Change-Id: I6c249a2ebeb1960563f7045348d700add03712e1
| -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); } } |