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

Commit 091ca2d5 authored by Jeff Sharkey's avatar Jeff Sharkey Committed by Android (Google) Code Review
Browse files

Merge "Avoid updating network stats after shutdown."

parents 5eb37241 6341fcec
Loading
Loading
Loading
Loading
+9 −0
Original line number Original line Diff line number Diff line
@@ -212,6 +212,8 @@ public class NetworkStatsService extends INetworkStatsService.Stub {
    private final HandlerThread mHandlerThread;
    private final HandlerThread mHandlerThread;
    private final Handler mHandler;
    private final Handler mHandler;


    private boolean mSystemReady;

    public NetworkStatsService(
    public NetworkStatsService(
            Context context, INetworkManagementService networkManager, IAlarmManager alarmManager) {
            Context context, INetworkManagementService networkManager, IAlarmManager alarmManager) {
        this(context, networkManager, alarmManager, NtpTrustedTime.getInstance(context),
        this(context, networkManager, alarmManager, NtpTrustedTime.getInstance(context),
@@ -250,6 +252,8 @@ public class NetworkStatsService extends INetworkStatsService.Stub {
    }
    }


    public void systemReady() {
    public void systemReady() {
        mSystemReady = true;

        if (!isBandwidthControlEnabled()) {
        if (!isBandwidthControlEnabled()) {
            Slog.w(TAG, "bandwidth controls disabled, unable to track stats");
            Slog.w(TAG, "bandwidth controls disabled, unable to track stats");
            return;
            return;
@@ -336,6 +340,8 @@ public class NetworkStatsService extends INetworkStatsService.Stub {
        mUidTagRecorder = null;
        mUidTagRecorder = null;


        mDevStatsCached = null;
        mDevStatsCached = null;

        mSystemReady = false;
    }
    }


    private void maybeUpgradeLegacyStatsLocked() {
    private void maybeUpgradeLegacyStatsLocked() {
@@ -649,6 +655,7 @@ public class NetworkStatsService extends INetworkStatsService.Stub {
     * {@link NetworkIdentitySet}.
     * {@link NetworkIdentitySet}.
     */
     */
    private void updateIfacesLocked() {
    private void updateIfacesLocked() {
        if (!mSystemReady) return;
        if (LOGV) Slog.v(TAG, "updateIfacesLocked()");
        if (LOGV) Slog.v(TAG, "updateIfacesLocked()");


        // take one last stats snapshot before updating iface mapping. this
        // take one last stats snapshot before updating iface mapping. this
@@ -737,7 +744,9 @@ public class NetworkStatsService extends INetworkStatsService.Stub {
     * {@link NetworkStatsHistory}.
     * {@link NetworkStatsHistory}.
     */
     */
    private void performPollLocked(int flags) {
    private void performPollLocked(int flags) {
        if (!mSystemReady) return;
        if (LOGV) Slog.v(TAG, "performPollLocked(flags=0x" + Integer.toHexString(flags) + ")");
        if (LOGV) Slog.v(TAG, "performPollLocked(flags=0x" + Integer.toHexString(flags) + ")");

        final long startRealtime = SystemClock.elapsedRealtime();
        final long startRealtime = SystemClock.elapsedRealtime();


        final boolean persistNetwork = (flags & FLAG_PERSIST_NETWORK) != 0;
        final boolean persistNetwork = (flags & FLAG_PERSIST_NETWORK) != 0;