Loading services/core/java/com/android/server/am/BatteryStatsService.java +5 −0 Original line number Diff line number Diff line Loading @@ -124,6 +124,7 @@ import com.android.server.LocalServices; import com.android.server.Watchdog; import com.android.server.net.BaseNetworkObserver; import com.android.server.pm.UserManagerInternal; import com.android.server.power.feature.PowerManagerFlags; import com.android.server.power.optimization.Flags; import com.android.server.power.stats.BatteryExternalStatsWorker; import com.android.server.power.stats.BatteryStatsDumpHelperImpl; Loading Loading @@ -195,6 +196,7 @@ public final class BatteryStatsService extends IBatteryStats.Stub private final BatteryStats.BatteryStatsDumpHelper mDumpHelper; private final PowerStatsUidResolver mPowerStatsUidResolver = new PowerStatsUidResolver(); private final PowerAttributor mPowerAttributor; private final PowerManagerFlags mPowerManagerFlags = new PowerManagerFlags(); private volatile boolean mMonitorEnabled = true; private boolean mRailsStatsCollectionEnabled = true; Loading Loading @@ -617,6 +619,9 @@ public final class BatteryStatsService extends IBatteryStats.Stub BatteryConsumer.POWER_COMPONENT_ANY, Flags.streamlinedMiscBatteryStats()); mStats.setMoveWscLoggingToNotifierEnabled( mPowerManagerFlags.isMoveWscLoggingToNotifierEnabled()); mWorker.systemServicesReady(); mStats.systemServicesReady(mContext); mCpuWakeupStats.systemServicesReady(); Loading services/core/java/com/android/server/power/stats/BatteryStatsImpl.java +13 −2 Original line number Diff line number Diff line Loading @@ -303,6 +303,8 @@ public class BatteryStatsImpl extends BatteryStats { private final GnssPowerStatsCollector mGnssPowerStatsCollector; private final CustomEnergyConsumerPowerStatsCollector mCustomEnergyConsumerPowerStatsCollector; private final SparseBooleanArray mPowerStatsCollectorEnabled = new SparseBooleanArray(); private boolean mMoveWscLoggingToNotifierEnabled = false; private ScreenPowerStatsCollector.ScreenUsageTimeRetriever mScreenUsageTimeRetriever = new ScreenPowerStatsCollector.ScreenUsageTimeRetriever() { Loading Loading @@ -5155,7 +5157,7 @@ public class BatteryStatsImpl extends BatteryStats { Uid uidStats = getUidStatsLocked(mappedUid, elapsedRealtimeMs, uptimeMs); uidStats.noteStartWakeLocked(pid, name, type, elapsedRealtimeMs); if (!mPowerManagerFlags.isMoveWscLoggingToNotifierEnabled()) { if (!mMoveWscLoggingToNotifierEnabled) { mFrameworkStatsLogger.wakelockStateChanged(mapIsolatedUid(uid), wc, name, uidStats.mProcessState, true /* acquired */, getPowerManagerWakeLockLevel(type)); Loading Loading @@ -5206,7 +5208,7 @@ public class BatteryStatsImpl extends BatteryStats { Uid uidStats = getUidStatsLocked(mappedUid, elapsedRealtimeMs, uptimeMs); uidStats.noteStopWakeLocked(pid, name, type, elapsedRealtimeMs); if (!mPowerManagerFlags.isMoveWscLoggingToNotifierEnabled()) { if (!mMoveWscLoggingToNotifierEnabled) { mFrameworkStatsLogger.wakelockStateChanged(mapIsolatedUid(uid), wc, name, uidStats.mProcessState, false/* acquired */, getPowerManagerWakeLockLevel(type)); Loading Loading @@ -15975,6 +15977,15 @@ public class BatteryStatsImpl extends BatteryStats { } } /** * Controls where the logging of the WakelockStateChanged atom occurs: * true = Notifier, false = BatteryStatsImpl. */ public void setMoveWscLoggingToNotifierEnabled(boolean enabled) { synchronized (this) { mMoveWscLoggingToNotifierEnabled = enabled; } } @GuardedBy("this") public void systemServicesReady(Context context) { mConstants.startObserving(context.getContentResolver()); Loading
services/core/java/com/android/server/am/BatteryStatsService.java +5 −0 Original line number Diff line number Diff line Loading @@ -124,6 +124,7 @@ import com.android.server.LocalServices; import com.android.server.Watchdog; import com.android.server.net.BaseNetworkObserver; import com.android.server.pm.UserManagerInternal; import com.android.server.power.feature.PowerManagerFlags; import com.android.server.power.optimization.Flags; import com.android.server.power.stats.BatteryExternalStatsWorker; import com.android.server.power.stats.BatteryStatsDumpHelperImpl; Loading Loading @@ -195,6 +196,7 @@ public final class BatteryStatsService extends IBatteryStats.Stub private final BatteryStats.BatteryStatsDumpHelper mDumpHelper; private final PowerStatsUidResolver mPowerStatsUidResolver = new PowerStatsUidResolver(); private final PowerAttributor mPowerAttributor; private final PowerManagerFlags mPowerManagerFlags = new PowerManagerFlags(); private volatile boolean mMonitorEnabled = true; private boolean mRailsStatsCollectionEnabled = true; Loading Loading @@ -617,6 +619,9 @@ public final class BatteryStatsService extends IBatteryStats.Stub BatteryConsumer.POWER_COMPONENT_ANY, Flags.streamlinedMiscBatteryStats()); mStats.setMoveWscLoggingToNotifierEnabled( mPowerManagerFlags.isMoveWscLoggingToNotifierEnabled()); mWorker.systemServicesReady(); mStats.systemServicesReady(mContext); mCpuWakeupStats.systemServicesReady(); Loading
services/core/java/com/android/server/power/stats/BatteryStatsImpl.java +13 −2 Original line number Diff line number Diff line Loading @@ -303,6 +303,8 @@ public class BatteryStatsImpl extends BatteryStats { private final GnssPowerStatsCollector mGnssPowerStatsCollector; private final CustomEnergyConsumerPowerStatsCollector mCustomEnergyConsumerPowerStatsCollector; private final SparseBooleanArray mPowerStatsCollectorEnabled = new SparseBooleanArray(); private boolean mMoveWscLoggingToNotifierEnabled = false; private ScreenPowerStatsCollector.ScreenUsageTimeRetriever mScreenUsageTimeRetriever = new ScreenPowerStatsCollector.ScreenUsageTimeRetriever() { Loading Loading @@ -5155,7 +5157,7 @@ public class BatteryStatsImpl extends BatteryStats { Uid uidStats = getUidStatsLocked(mappedUid, elapsedRealtimeMs, uptimeMs); uidStats.noteStartWakeLocked(pid, name, type, elapsedRealtimeMs); if (!mPowerManagerFlags.isMoveWscLoggingToNotifierEnabled()) { if (!mMoveWscLoggingToNotifierEnabled) { mFrameworkStatsLogger.wakelockStateChanged(mapIsolatedUid(uid), wc, name, uidStats.mProcessState, true /* acquired */, getPowerManagerWakeLockLevel(type)); Loading Loading @@ -5206,7 +5208,7 @@ public class BatteryStatsImpl extends BatteryStats { Uid uidStats = getUidStatsLocked(mappedUid, elapsedRealtimeMs, uptimeMs); uidStats.noteStopWakeLocked(pid, name, type, elapsedRealtimeMs); if (!mPowerManagerFlags.isMoveWscLoggingToNotifierEnabled()) { if (!mMoveWscLoggingToNotifierEnabled) { mFrameworkStatsLogger.wakelockStateChanged(mapIsolatedUid(uid), wc, name, uidStats.mProcessState, false/* acquired */, getPowerManagerWakeLockLevel(type)); Loading Loading @@ -15975,6 +15977,15 @@ public class BatteryStatsImpl extends BatteryStats { } } /** * Controls where the logging of the WakelockStateChanged atom occurs: * true = Notifier, false = BatteryStatsImpl. */ public void setMoveWscLoggingToNotifierEnabled(boolean enabled) { synchronized (this) { mMoveWscLoggingToNotifierEnabled = enabled; } } @GuardedBy("this") public void systemServicesReady(Context context) { mConstants.startObserving(context.getContentResolver());