Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7cdebc10 authored by Rupesh Bansal's avatar Rupesh Bansal
Browse files

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
parent 79675a50
Loading
Loading
Loading
Loading
+22 −13
Original line number Diff line number Diff line
@@ -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,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);
@@ -535,6 +543,7 @@ final class WakeLockLog {
                }
            }
        }
    }

    /**
     * Converts between a {@link LogEntry} instance and a byte sequence.
+11 −2
Original line number Diff line number Diff line
@@ -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));
    }