From 960efebc877a5294650bcf6bacfa15aeec8b1f0c Mon Sep 17 00:00:00 2001 From: Piyush Mehrotra Date: Fri, 24 May 2024 17:40:44 +0000 Subject: Remove PM#getPackageInfo call in restoreAtInstall flow A previous change (ag/26748034) added this call for BMM logging. getPackageInfo is a relatively heavy binder call, which triggered performance regression alerts (b/342082681 and b/342273383). The additional getPackageInfo call resulted in 5-10% increase in latency for package commit operation. For the purposes of BMM logging in restoreAtInstall flow, we just need the name of the package. Fields like version code are already logged in subsequent BMM logging during restore. Bug: 342082681 Test: Verified that logging is correct Change-Id: I8025789b2c696eac1b7738a1ae332c67aea8ce5f --- .../android/server/backup/UserBackupManagerService.java | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) (limited to 'services/backup') diff --git a/services/backup/java/com/android/server/backup/UserBackupManagerService.java b/services/backup/java/com/android/server/backup/UserBackupManagerService.java index dc1cfb92c3b8..ddccb3731cc1 100644 --- a/services/backup/java/com/android/server/backup/UserBackupManagerService.java +++ b/services/backup/java/com/android/server/backup/UserBackupManagerService.java @@ -4008,20 +4008,10 @@ public class UserBackupManagerService { } private PackageInfo getPackageInfoForBMMLogging(String packageName) { - try { - return mPackageManager.getPackageInfoAsUser(packageName, 0, mUserId); - } catch (NameNotFoundException e) { - Slog.w( - TAG, - addUserIdToLogMessage( - mUserId, "Asked to get PackageInfo for BMM logging of nonexistent pkg " - + packageName)); - - PackageInfo packageInfo = new PackageInfo(); - packageInfo.packageName = packageName; + PackageInfo packageInfo = new PackageInfo(); + packageInfo.packageName = packageName; - return packageInfo; - } + return packageInfo; } /** Hand off a restore session. */ -- cgit v1.2.3-59-g8ed1b