diff options
author | Robert Greenwalt <robdroid@android.com> | 2010-04-14 20:25:51 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2010-04-14 20:25:51 -0700 |
commit | 1424d1d22e199c716c5d248611e58ce7c3f15c7e (patch) | |
tree | 9665332d124fee109cfe3160aca908e3407fb7ba /services | |
parent | 0751d1eaad55603eaeb0f035a55935f713ab0476 (diff) | |
parent | 8090edae9ed1228e8cbaa14dd94c6ce885a0b729 (diff) | |
download | frameworks_base-1424d1d22e199c716c5d248611e58ce7c3f15c7e.zip frameworks_base-1424d1d22e199c716c5d248611e58ce7c3f15c7e.tar.gz frameworks_base-1424d1d22e199c716c5d248611e58ce7c3f15c7e.tar.bz2 |
am 8090edae: Merge "Sholes mobile iface comes/goes - handle the reset" into froyo
Merge commit '8090edae9ed1228e8cbaa14dd94c6ce885a0b729' into froyo-plus-aosp
* commit '8090edae9ed1228e8cbaa14dd94c6ce885a0b729':
Sholes mobile iface comes/goes - handle the reset
Diffstat (limited to 'services')
-rw-r--r-- | services/java/com/android/server/ThrottleService.java | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/services/java/com/android/server/ThrottleService.java b/services/java/com/android/server/ThrottleService.java index 9333dd8..6ba96ae 100644 --- a/services/java/com/android/server/ThrottleService.java +++ b/services/java/com/android/server/ThrottleService.java @@ -372,6 +372,14 @@ public class ThrottleService extends IThrottleManager.Stub { try { incRead = mNMService.getInterfaceRxCounter(mIface) - mLastRead; incWrite = mNMService.getInterfaceTxCounter(mIface) - mLastWrite; + // handle iface resets - on some device the 3g iface comes and goes and gets + // totals reset to 0. Deal with it + if ((incRead < 0) || (incWrite < 0)) { + incRead += mLastRead; + incWrite += mLastWrite; + mLastRead = 0; + mLastWrite = 0; + } } catch (RemoteException e) { Slog.e(TAG, "got remoteException in onPollAlarm:" + e); } @@ -529,6 +537,8 @@ public class ThrottleService extends IThrottleManager.Stub { end.set(Calendar.DAY_OF_MONTH, mPolicyResetDay); end.set(Calendar.HOUR_OF_DAY, 0); end.set(Calendar.MINUTE, 0); + end.set(Calendar.SECOND, 0); + end.set(Calendar.MILLISECOND, 0); if (day >= mPolicyResetDay) { int month = end.get(Calendar.MONTH); if (month == Calendar.DECEMBER) { @@ -845,6 +855,8 @@ public class ThrottleService extends IThrottleManager.Stub { "and ends in " + (mRecorder.getPeriodEnd() - System.currentTimeMillis()) / 1000 + " seconds."); pw.println("Polling every " + mPolicyPollPeriodSec + " seconds"); + pw.println("Current Throttle Index is " + mThrottleIndex); + for (int i = 0; i < mRecorder.getPeriodCount(); i++) { pw.println(" Period[" + i + "] - read:" + mRecorder.getPeriodRx(i) + ", written:" + mRecorder.getPeriodTx(i)); |