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

Commit d6f6ff30 authored by Nathan Harold's avatar Nathan Harold Committed by android-build-merger
Browse files

Merge "Count and Report Bandwidth Requests by UID" am: e1d14061 am: 270e4bb2

am: 36d40b0d

Change-Id: I354ed7669f4c37842798a2ef8287a1b9132b8b89
parents f649569d 36d40b0d
Loading
Loading
Loading
Loading
+24 −1
Original line number Diff line number Diff line
@@ -500,6 +500,9 @@ public class ConnectivityService extends IConnectivityManager.Stub

    private final IpConnectivityLog mMetricsLog;

    @GuardedBy("mBandwidthRequests")
    private final SparseArray<Integer> mBandwidthRequests = new SparseArray(10);

    @VisibleForTesting
    final MultinetworkPolicyTracker mMultinetworkPolicyTracker;

@@ -2107,6 +2110,18 @@ public class ConnectivityService extends IConnectivityManager.Stub
                pw.println("currently holding WakeLock for: " + (duration / 1000) + "s");
            }
            mWakelockLogs.reverseDump(fd, pw, args);

            pw.println();
            pw.println("bandwidth update requests (by uid):");
            pw.increaseIndent();
            synchronized (mBandwidthRequests) {
                for (int i = 0; i < mBandwidthRequests.size(); i++) {
                    pw.println("[" + mBandwidthRequests.keyAt(i)
                            + "]: " + mBandwidthRequests.valueAt(i));
                }
            }
            pw.decreaseIndent();

            pw.decreaseIndent();
        }
    }
@@ -4267,6 +4282,14 @@ public class ConnectivityService extends IConnectivityManager.Stub
        }
        if (nai != null) {
            nai.asyncChannel.sendMessage(android.net.NetworkAgent.CMD_REQUEST_BANDWIDTH_UPDATE);
            synchronized (mBandwidthRequests) {
                final int uid = Binder.getCallingUid();
                Integer uidReqs = mBandwidthRequests.get(uid);
                if (uidReqs == null) {
                    uidReqs = new Integer(0);
                }
                mBandwidthRequests.put(uid, ++uidReqs);
            }
            return true;
        }
        return false;