diff options
| author | 2024-09-02 10:46:39 +0000 | |
|---|---|---|
| committer | 2024-09-02 10:46:39 +0000 | |
| commit | 7cdebc10067da85140187e5c4f743c3714b6e3dd (patch) | |
| tree | 41efb682f60898a8fabbdcfd8509937468c554ba | |
| parent | 79675a50a38bce9c4990f60a96e5bd1943aed493 (diff) | |
Changing the packagename to SYSTEM when uid 1000 is logged in Wakelocks
Bug: 362921561
Test: atest WakeLockLogTest
Flag: EXEMPT trivial logging fix
Change-Id: I236a8a61b5bcfe735030d5c4e69e06b333ecd958
| -rw-r--r-- | services/core/java/com/android/server/power/WakeLockLog.java | 35 | ||||
| -rw-r--r-- | services/tests/powerservicetests/src/com/android/server/power/WakeLockLogTest.java | 13 |
2 files changed, 33 insertions, 15 deletions
diff --git a/services/core/java/com/android/server/power/WakeLockLog.java b/services/core/java/com/android/server/power/WakeLockLog.java index 968ff59ad8fc..eda222e71c9e 100644 --- a/services/core/java/com/android/server/power/WakeLockLog.java +++ b/services/core/java/com/android/server/power/WakeLockLog.java @@ -19,6 +19,7 @@ package com.android.server.power; import android.content.Context; import android.content.pm.PackageManager; import android.os.PowerManager; +import android.os.Process; import android.text.TextUtils; import android.util.Slog; import android.util.SparseArray; @@ -122,6 +123,9 @@ final class WakeLockLog { private static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("MM-dd HH:mm:ss.SSS"); + @VisibleForTesting + static final String SYSTEM_PACKAGE_NAME = "System"; + /** * Lock protects WakeLockLog.dump (binder thread) from conflicting with changes to the log * happening on the background thread. @@ -516,21 +520,26 @@ final class WakeLockLog { return; } - String[] packages; - if (uidToPackagesCache.contains(tag.ownerUid)) { - packages = uidToPackagesCache.get(tag.ownerUid); - } else { - packages = packageManager.getPackagesForUid(tag.ownerUid); - uidToPackagesCache.put(tag.ownerUid, packages); + if (tag.ownerUid == Process.SYSTEM_UID) { + packageName = SYSTEM_PACKAGE_NAME; } + else { + String[] packages; + if (uidToPackagesCache.contains(tag.ownerUid)) { + packages = uidToPackagesCache.get(tag.ownerUid); + } else { + packages = packageManager.getPackagesForUid(tag.ownerUid); + uidToPackagesCache.put(tag.ownerUid, packages); + } - if (packages != null && packages.length > 0) { - packageName = packages[0]; - if (packages.length > 1) { - StringBuilder sb = new StringBuilder(); - sb.append(packageName) - .append(",..."); - packageName = sb.toString(); + if (packages != null && packages.length > 0) { + packageName = packages[0]; + if (packages.length > 1) { + StringBuilder sb = new StringBuilder(); + sb.append(packageName) + .append(",..."); + packageName = sb.toString(); + } } } } diff --git a/services/tests/powerservicetests/src/com/android/server/power/WakeLockLogTest.java b/services/tests/powerservicetests/src/com/android/server/power/WakeLockLogTest.java index 1c4db6ad883b..c1d7c7b4a4c2 100644 --- a/services/tests/powerservicetests/src/com/android/server/power/WakeLockLogTest.java +++ b/services/tests/powerservicetests/src/com/android/server/power/WakeLockLogTest.java @@ -25,6 +25,7 @@ import static org.mockito.Mockito.when; import android.content.Context; import android.content.pm.PackageManager; import android.os.PowerManager; +import android.os.Process; import org.junit.Before; import org.junit.Test; @@ -54,6 +55,8 @@ public class WakeLockLogTest { when(mPackageManager.getPackagesForUid(101)).thenReturn(new String[]{ "some.package1" }); when(mPackageManager.getPackagesForUid(102)).thenReturn(new String[]{ "some.package2" }); + when(mPackageManager.getPackagesForUid(Process.SYSTEM_UID)) + .thenReturn(new String[]{ "some.package3" }); } @Test @@ -70,14 +73,20 @@ public class WakeLockLogTest { log.onWakeLockAcquired("TagFull", 102, PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, -1); + when(injectorSpy.currentTimeMillis()).thenReturn(1250L); + log.onWakeLockAcquired("TagSystem", 1000, + PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, -1); + assertEquals("Wake Lock Log\n" + " 01-01 00:00:01.000 - 101 (some.package1) - ACQ TagPartial " + "(partial,on-after-release)\n" + " 01-01 00:00:01.150 - 102 (some.package2) - ACQ TagFull " + "(full,acq-causes-wake)\n" + + " 01-01 00:00:01.250 - 1000 (" + WakeLockLog.SYSTEM_PACKAGE_NAME + ")" + + " - ACQ TagSystem (full,acq-causes-wake)\n" + " -\n" - + " Events: 2, Time-Resets: 0\n" - + " Buffer, Bytes used: 6\n", + + " Events: 3, Time-Resets: 0\n" + + " Buffer, Bytes used: 9\n", dumpLog(log, false)); } |