diff options
| author | 2023-09-06 11:56:25 +0000 | |
|---|---|---|
| committer | 2023-09-06 11:56:25 +0000 | |
| commit | c9d1b984ea41d5e05c1907e17702ef375328fbab (patch) | |
| tree | a2cb297b6ce6a58a9595bfd7f63fa23626a87a9c | |
| parent | 25d0ee94cc40fe287f39153a3276cd178df09c2b (diff) | |
| parent | 0a40bc7e77bdb38c7fd68cf00f74a60c5c4a3c69 (diff) | |
Merge "Fix deadlock between DPMS and AMS" into udc-qpr-dev am: 0a40bc7e77
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/24446636
Change-Id: I2918eaf283c527c7ec7954fc1b550c832023beee
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
| -rw-r--r-- | services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java | 23 |
1 files changed, 9 insertions, 14 deletions
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java index b1041855a2dc..9515b7958355 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java @@ -241,6 +241,7 @@ import static android.provider.Telephony.Carriers.ENFORCE_KEY; import static android.provider.Telephony.Carriers.ENFORCE_MANAGED_URI; import static android.provider.Telephony.Carriers.INVALID_APN_ID; import static android.security.keystore.AttestationUtils.USE_INDIVIDUAL_ATTESTATION; + import static com.android.internal.logging.nano.MetricsProto.MetricsEvent.PROVISIONING_ENTRY_POINT_ADB; import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_NONE; import static com.android.internal.widget.LockPatternUtils.StrongAuthTracker.STRONG_AUTH_REQUIRED_AFTER_DPM_LOCK_NOW; @@ -11279,25 +11280,18 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { } } - private void dumpPerUserData(IndentingPrintWriter pw) { + private void dumpPersonalAppInfoForSystemUserNoLock(IndentingPrintWriter pw) { + wtfIfInLock(); + PersonalAppsSuspensionHelper.forUser(mContext, UserHandle.USER_SYSTEM).dump(pw); + } + + private void dumpPerUserPolicyData(IndentingPrintWriter pw) { int userCount = mUserData.size(); for (int i = 0; i < userCount; i++) { int userId = mUserData.keyAt(i); DevicePolicyData policy = getUserData(userId); policy.dump(pw); pw.println(); - - if (userId == UserHandle.USER_SYSTEM) { - pw.increaseIndent(); - PersonalAppsSuspensionHelper.forUser(mContext, userId).dump(pw); - pw.decreaseIndent(); - pw.println(); - } else { - // pm.getUnsuspendablePackages() will fail if it's called for a different user; - // as this dump is mostly useful for system user anyways, we can just ignore the - // others (rather than changing the permission check in the PM method) - Slogf.d(LOG_TAG, "skipping PersonalAppsSuspensionHelper.dump() for user " + userId); - } } } @@ -11315,7 +11309,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { pw.println(); mDeviceAdminServiceController.dump(pw); pw.println(); - dumpPerUserData(pw); + dumpPerUserPolicyData(pw); pw.println(); mConstants.dump(pw); pw.println(); @@ -11342,6 +11336,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { mStateCache.dump(pw); pw.println(); } + dumpPersonalAppInfoForSystemUserNoLock(pw); synchronized (mSubscriptionsChangedListenerLock) { pw.println("Subscription changed listener : " + mSubscriptionsChangedListener); |