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

Commit eb1fbf7a authored by Kazuhiro Ondo's avatar Kazuhiro Ondo Committed by Android Git Automerger
Browse files

am 8e1f6ece: am 4c88be65: GSM DCT: Update poll stats to support multi-links

* commit '8e1f6ece':
  GSM DCT: Update poll stats to support multi-links
parents cb3fad5c 8e1f6ece
Loading
Loading
Loading
Loading
+23 −3
Original line number Diff line number Diff line
@@ -1232,10 +1232,30 @@ public final class GsmDataConnectionTracker extends DataConnectionTracker {
            preTxPkts = mTxPkts;
            preRxPkts = mRxPkts;

            mTxPkts = TrafficStats.getMobileTxPackets();
            mRxPkts = TrafficStats.getMobileRxPackets();
            long txSum = 0, rxSum = 0;
            for (ApnContext apnContext : mApnContexts.values()) {
                if (apnContext.getState() == State.CONNECTED) {
                    DataConnectionAc dcac = apnContext.getDataConnectionAc();
                    if (dcac == null) continue;

                    LinkProperties linkProp = dcac.getLinkPropertiesSync();
                    if (linkProp == null) continue;

                    String iface = linkProp.getInterfaceName();

                    if (iface != null) {
                        long stats = TrafficStats.getTxPackets(iface);
                        if (stats > 0) txSum += stats;
                        stats = TrafficStats.getRxPackets(iface);
                        if (stats > 0) rxSum += stats;
                    }
                }
            }

            mTxPkts = txSum;
            mRxPkts = rxSum;

            //log("rx " + String.valueOf(rxPkts) + " tx " + String.valueOf(txPkts));
            // log("tx " + mTxPkts + " rx " + mRxPkts);

            if (mNetStatPollEnabled && (preTxPkts > 0 || preRxPkts > 0)) {
                sent = mTxPkts - preTxPkts;