summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Shawn Willden <swillden@google.com> 2024-02-21 21:32:28 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2024-02-21 21:32:28 +0000
commiteea8aea495357b531a581a1856851778308ff00e (patch)
tree4f7519adcfb172aebb9a9f85a1473f6499223574
parentd3f718cce74bae9aafc21e4ce8dfef8b0bb9c2e8 (diff)
parentc9db4e1bb32288b2dad6d30a40fb9e2541736583 (diff)
Merge "Don't wait for init done in isFrpActive()" into main
-rw-r--r--services/core/java/com/android/server/pdb/PersistentDataBlockService.java5
1 files changed, 4 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/pdb/PersistentDataBlockService.java b/services/core/java/com/android/server/pdb/PersistentDataBlockService.java
index 59d3d1746754..5ad550722c93 100644
--- a/services/core/java/com/android/server/pdb/PersistentDataBlockService.java
+++ b/services/core/java/com/android/server/pdb/PersistentDataBlockService.java
@@ -656,8 +656,10 @@ public class PersistentDataBlockService extends SystemService {
@VisibleForTesting
boolean isFrpActive() {
- waitForInitDoneSignal();
synchronized (mLock) {
+ // mFrpActive is initialized and automatic deactivation done (if possible) before the
+ // service is published, so there's no chance that callers could ask for the state
+ // before it has settled.
return mFrpActive;
}
}
@@ -1253,6 +1255,7 @@ public class PersistentDataBlockService extends SystemService {
private void enforceFactoryResetProtectionInactive() {
if (mFrpEnforced && isFrpActive()) {
+ Slog.w(TAG, "Attempt to update PDB was blocked because FRP is active.");
throw new SecurityException("FRP is active");
}
}