diff options
| author | Jeff Sharkey <jsharkey@android.com> | 2012-05-24 11:38:12 -0700 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-05-24 11:38:12 -0700 |
| commit | 6385ff511dd998f1fbb189621270e2c19577f66e (patch) | |
| tree | 57395fc2bcf9aca4757ad4aebeb3ae34f576aa3e /services | |
| parent | 0100625bb316ecbd99873b72756ffba8613c3456 (diff) | |
| parent | e19f39b79c831aea4d51a3309025acdf69d1e609 (diff) | |
| download | frameworks_base-6385ff511dd998f1fbb189621270e2c19577f66e.zip frameworks_base-6385ff511dd998f1fbb189621270e2c19577f66e.tar.gz frameworks_base-6385ff511dd998f1fbb189621270e2c19577f66e.tar.bz2 | |
Merge "Advise persist threshold outside NPMS lock." into jb-dev
Diffstat (limited to 'services')
| -rw-r--r-- | services/java/com/android/server/net/NetworkPolicyManagerService.java | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/services/java/com/android/server/net/NetworkPolicyManagerService.java b/services/java/com/android/server/net/NetworkPolicyManagerService.java index 1b8c9cb..c82f37c 100644 --- a/services/java/com/android/server/net/NetworkPolicyManagerService.java +++ b/services/java/com/android/server/net/NetworkPolicyManagerService.java @@ -118,7 +118,6 @@ import android.telephony.TelephonyManager; import android.text.format.Formatter; import android.text.format.Time; import android.util.Log; -import android.util.MathUtils; import android.util.NtpTrustedTime; import android.util.Slog; import android.util.SparseArray; @@ -225,6 +224,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { private static final int MSG_PROCESS_DIED = 4; private static final int MSG_LIMIT_REACHED = 5; private static final int MSG_RESTRICT_BACKGROUND_CHANGED = 6; + private static final int MSG_ADVISE_PERSIST_THRESHOLD = 7; private final Context mContext; private final IActivityManager mActivityManager; @@ -1032,14 +1032,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { } } - try { - // make sure stats are recorded frequently enough; we aim for 2MB - // threshold for 2GB/month rules. - final long persistThreshold = lowestRule / 1000; - mNetworkStats.advisePersistThreshold(persistThreshold); - } catch (RemoteException e) { - // ignored; service lives in system_server - } + mHandler.obtainMessage(MSG_ADVISE_PERSIST_THRESHOLD, lowestRule).sendToTarget(); // remove quota on any trailing interfaces for (String iface : mMeteredIfaces) { @@ -1861,6 +1854,19 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { } } mListeners.finishBroadcast(); + return true; + } + case MSG_ADVISE_PERSIST_THRESHOLD: { + final long lowestRule = (Long) msg.obj; + try { + // make sure stats are recorded frequently enough; we aim + // for 2MB threshold for 2GB/month rules. + final long persistThreshold = lowestRule / 1000; + mNetworkStats.advisePersistThreshold(persistThreshold); + } catch (RemoteException e) { + // ignored; service lives in system_server + } + return true; } default: { return false; |
