[SP19] Reduce log when set limit and request stats update

setLimit can be ignored if the quota is unlimited and not
changed, and the log could be omitted since it will still be
logged in HAL. Request stats update will print error log in
service if it is not correctly responded in time.

Test: atest TetheringTests
Test: manual
Fix: 149735152

Change-Id: I01c0191d5b89942fa69b167b8a6b40ed2821300b
This commit is contained in:
junyulai
2020-02-24 17:18:16 +08:00
parent 2f9800a47d
commit dc1cf02ac5

View File

@@ -288,10 +288,18 @@ public class OffloadController {
@Override
public void setLimit(String iface, long quotaBytes) {
mLog.i("setLimit: " + iface + "," + quotaBytes);
// Listen for all iface is necessary since upstream might be changed after limit
// is set.
mHandler.post(() -> {
final Long curIfaceQuota = mInterfaceQuotas.get(iface);
// If the quota is set to unlimited, the value set to HAL is Long.MAX_VALUE,
// which is ~8.4 x 10^6 TiB, no one can actually reach it. Thus, it is not
// useful to set it multiple times.
// Otherwise, the quota needs to be updated to tell HAL to re-count from now even
// if the quota is the same as the existing one.
if (null == curIfaceQuota && QUOTA_UNLIMITED == quotaBytes) return;
if (quotaBytes == QUOTA_UNLIMITED) {
mInterfaceQuotas.remove(iface);
} else {
@@ -323,7 +331,6 @@ public class OffloadController {
@Override
public void requestStatsUpdate(int token) {
mLog.i("requestStatsUpdate: " + token);
// Do not attempt to update stats by querying the offload HAL
// synchronously from a different thread than the Handler thread. http://b/64771555.
mHandler.post(() -> {