getFaceDaemon on FaceService's own handler
Do not block SystemServerInitThreadPool
Fixes: 133749191
Test: No observable change
Change-Id: I2b1193b9e6bb92bab9e107756c57bfc0bf924f62
diff --git a/services/core/java/com/android/server/biometrics/face/FaceService.java b/services/core/java/com/android/server/biometrics/face/FaceService.java
index 0f2b16a..bcd22d4 100644
--- a/services/core/java/com/android/server/biometrics/face/FaceService.java
+++ b/services/core/java/com/android/server/biometrics/face/FaceService.java
@@ -899,7 +899,10 @@
public void onStart() {
super.onStart();
publishBinderService(Context.FACE_SERVICE, new FaceServiceWrapper());
- SystemServerInitThreadPool.get().submit(this::getFaceDaemon, TAG + ".onStart");
+ // Get the face daemon on FaceService's on thread so SystemServerInitThreadPool isn't
+ // blocked
+ SystemServerInitThreadPool.get().submit(() -> mHandler.post(this::getFaceDaemon),
+ TAG + ".onStart");
}
@Override