summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2012-05-24 11:42:53 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2012-05-24 11:42:53 -0700
commita3a7bcbda43ebddbf7bdd70c12258d1f1066c931 (patch)
treea758885414ab8dc4d08addcf628cf8071fd4776d /services
parent07e28d1e9bd7373c83cb66d5d9e93ae9af1f090d (diff)
parent6385ff511dd998f1fbb189621270e2c19577f66e (diff)
downloadframeworks_base-a3a7bcbda43ebddbf7bdd70c12258d1f1066c931.zip
frameworks_base-a3a7bcbda43ebddbf7bdd70c12258d1f1066c931.tar.gz
frameworks_base-a3a7bcbda43ebddbf7bdd70c12258d1f1066c931.tar.bz2
am 6385ff51: Merge "Advise persist threshold outside NPMS lock." into jb-dev
* commit '6385ff511dd998f1fbb189621270e2c19577f66e': Advise persist threshold outside NPMS lock.
Diffstat (limited to 'services')
-rw-r--r--services/java/com/android/server/net/NetworkPolicyManagerService.java24
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;