From fbb75b3eee7f7cc8826ddff122fb1d7cfd52450e Mon Sep 17 00:00:00 2001 From: Riddle Hsu Date: Tue, 2 Nov 2021 22:39:19 +0800 Subject: [PATCH] Remove lock for internal isGetTasksAllowed The method only checks recents and permission. The former is a field which won't change since boot. The latter doesn't involve any WM stuffs. Other places also use it without lock. This avoids unnecessary lock contention when calling ActivityManager# getRunningAppProcesses, getProcessMemoryInfo, getRunningServices. Bug: 204870457 Test: Test: CtsWindowManagerDeviceTestCases Change-Id: Ie1f1d1f58543cf25197f42caa01565039ced4b32 --- .../com/android/server/wm/ActivityTaskManagerService.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java index 690397fa3e866..5220321e4ee70 100644 --- a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java +++ b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java @@ -5488,10 +5488,8 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub { @Override public boolean isGetTasksAllowed(String caller, int callingPid, int callingUid) { - synchronized (mGlobalLock) { - return ActivityTaskManagerService.this.isGetTasksAllowed( - caller, callingPid, callingUid); - } + return ActivityTaskManagerService.this.isGetTasksAllowed( + caller, callingPid, callingUid); } @HotPath(caller = HotPath.PROCESS_CHANGE)