summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author panhaihui <panhaihui@xiaomi.com> 2024-01-05 14:53:15 +0800
committer haihui pan <panhaihui@xiaomi.com> 2024-01-05 07:45:23 +0000
commitb1776f241ab310866aedb41cd3f86dfdfec057fe (patch)
tree381a77c7a37ce37e6baec3749bcaeaa7cc09b945
parent4797fc9a04880f783d8e899e1a8f57cf62a64510 (diff)
[Bugfix] avoid deadlock caused by android.bg and RollbackManagerServiceHandler
android.bg is waiting for RollbackManagerServiceHandler to complete the actual code logic of getAvailableRollbacks, but RollbackManagerServiceHandler is waiting for the lock held by android.bg when running to PackageWatchdog.dump(). PackageWatchdog.dump() needs to be moved outside awaitResult(). Bug: 318782981 Test: Manual test Change-Id: Ibb23567401eea16567f9f68f97badfdaeff1fc27 Signed-off-by: panhaihui <panhaihui@xiaomi.com>
-rw-r--r--services/core/java/com/android/server/rollback/RollbackManagerServiceImpl.java2
1 files changed, 1 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/rollback/RollbackManagerServiceImpl.java b/services/core/java/com/android/server/rollback/RollbackManagerServiceImpl.java
index 720c773a032a..deff3d793854 100644
--- a/services/core/java/com/android/server/rollback/RollbackManagerServiceImpl.java
+++ b/services/core/java/com/android/server/rollback/RollbackManagerServiceImpl.java
@@ -1231,8 +1231,8 @@ class RollbackManagerServiceImpl extends IRollbackManager.Stub implements Rollba
ipw.println();
}
- PackageWatchdog.getInstance(mContext).dump(ipw);
});
+ PackageWatchdog.getInstance(mContext).dump(ipw);
}
@AnyThread