Loading services/core/java/com/android/server/power/WakeLockLog.java +22 −13 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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. Loading Loading @@ -516,6 +520,10 @@ final class WakeLockLog { return; } if (tag.ownerUid == Process.SYSTEM_UID) { packageName = SYSTEM_PACKAGE_NAME; } else { String[] packages; if (uidToPackagesCache.contains(tag.ownerUid)) { packages = uidToPackagesCache.get(tag.ownerUid); Loading @@ -535,6 +543,7 @@ final class WakeLockLog { } } } } /** * Converts between a {@link LogEntry} instance and a byte sequence. Loading services/tests/powerservicetests/src/com/android/server/power/WakeLockLogTest.java +11 −2 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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 Loading @@ -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)); } Loading Loading
services/core/java/com/android/server/power/WakeLockLog.java +22 −13 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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. Loading Loading @@ -516,6 +520,10 @@ final class WakeLockLog { return; } if (tag.ownerUid == Process.SYSTEM_UID) { packageName = SYSTEM_PACKAGE_NAME; } else { String[] packages; if (uidToPackagesCache.contains(tag.ownerUid)) { packages = uidToPackagesCache.get(tag.ownerUid); Loading @@ -535,6 +543,7 @@ final class WakeLockLog { } } } } /** * Converts between a {@link LogEntry} instance and a byte sequence. Loading
services/tests/powerservicetests/src/com/android/server/power/WakeLockLogTest.java +11 −2 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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 Loading @@ -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)); } Loading