diff options
| author | 2021-02-28 06:01:04 +0000 | |
|---|---|---|
| committer | 2021-02-28 06:01:04 +0000 | |
| commit | 7fa1f6129ec82c1ae03d613344ee7056a5ec33c2 (patch) | |
| tree | b2bbc9b2e6d1d90f16f0a8b4cdc4fba6eaa62607 | |
| parent | 0bfe15b58c9ec0641a670f553367aa36aec50c74 (diff) | |
| parent | 3539f8eea215926b50e38198b60b7653f6823fe1 (diff) | |
Merge "Remove support for OLD_HISTORY" into sc-dev
| -rw-r--r-- | core/java/android/os/BatteryStats.java | 24 | ||||
| -rw-r--r-- | core/java/com/android/internal/os/BatteryStatsImpl.java | 158 |
2 files changed, 9 insertions, 173 deletions
diff --git a/core/java/android/os/BatteryStats.java b/core/java/android/os/BatteryStats.java index cf9b534fc29f..6901df7508ab 100644 --- a/core/java/android/os/BatteryStats.java +++ b/core/java/android/os/BatteryStats.java @@ -2179,12 +2179,6 @@ public abstract class BatteryStats implements Parcelable { public abstract void finishIteratingHistoryLocked(); - public abstract boolean startIteratingOldHistoryLocked(); - - public abstract boolean getNextOldHistoryLocked(HistoryItem out); - - public abstract void finishIteratingOldHistoryLocked(); - /** * Return the base time offset for the battery history. */ @@ -7061,24 +7055,6 @@ public abstract class BatteryStats implements Parcelable { finishIteratingHistoryLocked(); } } - - if (startIteratingOldHistoryLocked()) { - try { - final HistoryItem rec = new HistoryItem(); - pw.println("Old battery History:"); - HistoryPrinter hprinter = new HistoryPrinter(); - long baseTime = -1; - while (getNextOldHistoryLocked(rec)) { - if (baseTime < 0) { - baseTime = rec.time; - } - hprinter.printNextItem(pw, rec, baseTime, false, (flags&DUMP_VERBOSE) != 0); - } - pw.println(); - } finally { - finishIteratingOldHistoryLocked(); - } - } } if (filtering && (flags&(DUMP_CHARGED_ONLY|DUMP_DAILY_ONLY)) == 0) { diff --git a/core/java/com/android/internal/os/BatteryStatsImpl.java b/core/java/com/android/internal/os/BatteryStatsImpl.java index 62e1ee19b25e..e4c8ddbbd256 100644 --- a/core/java/com/android/internal/os/BatteryStatsImpl.java +++ b/core/java/com/android/internal/os/BatteryStatsImpl.java @@ -81,7 +81,6 @@ import android.util.IndentingPrintWriter; import android.util.IntArray; import android.util.KeyValueListParser; import android.util.Log; -import android.util.LogWriter; import android.util.LongSparseArray; import android.util.LongSparseLongArray; import android.util.MutableInt; @@ -108,7 +107,6 @@ import com.android.internal.os.SystemServerCpuThreadReader.SystemServiceCpuThrea import com.android.internal.power.MeasuredEnergyStats; import com.android.internal.power.MeasuredEnergyStats.StandardEnergyBucket; import com.android.internal.util.ArrayUtils; -import com.android.internal.util.FastPrintWriter; import com.android.internal.util.FrameworkStatsLog; import com.android.internal.util.XmlUtils; import com.android.net.module.util.NetworkCapabilitiesUtils; @@ -164,7 +162,6 @@ public class BatteryStatsImpl extends BatteryStats { private static final boolean DEBUG_BINDER_STATS = false; private static final boolean DEBUG_MEMORY = false; private static final boolean DEBUG_HISTORY = false; - private static final boolean USE_OLD_HISTORY = false; // for debugging. // TODO: remove "tcp" from network methods, since we measure total stats. @@ -172,7 +169,7 @@ public class BatteryStatsImpl extends BatteryStats { private static final int MAGIC = 0xBA757475; // 'BATSTATS' // Current on-disk Parcel version - static final int VERSION = 193 + (USE_OLD_HISTORY ? 1000 : 0); + static final int VERSION = 193; // The maximum number of names wakelocks we will keep track of // per uid; once the limit is reached, we batch the remaining wakelocks @@ -743,7 +740,6 @@ public class BatteryStatsImpl extends BatteryStats { final Parcel mHistoryBuffer = Parcel.obtain(); final HistoryItem mHistoryLastWritten = new HistoryItem(); final HistoryItem mHistoryLastLastWritten = new HistoryItem(); - final HistoryItem mHistoryReadTmp = new HistoryItem(); final HistoryItem mHistoryAddTmp = new HistoryItem(); final HashMap<HistoryTag, Integer> mHistoryTagPool = new HashMap<>(); String[] mReadHistoryStrings; @@ -3917,44 +3913,6 @@ public class BatteryStatsImpl extends BatteryStats { void addHistoryRecordInnerLocked(long elapsedRealtimeMs, long uptimeMs, HistoryItem cur) { addHistoryBufferLocked(elapsedRealtimeMs, uptimeMs, cur); - - if (!USE_OLD_HISTORY) { - return; - } - - if (!mHaveBatteryLevel || !mRecordingHistory) { - return; - } - - // If the current time is basically the same as the last time, - // and no states have since the last recorded entry changed and - // are now resetting back to their original value, then just collapse - // into one record. - if (mHistoryEnd != null && mHistoryEnd.cmd == HistoryItem.CMD_UPDATE - && (mHistoryBaseTimeMs + elapsedRealtimeMs) < (mHistoryEnd.time + 1000) - && ((mHistoryEnd.states^cur.states)&mChangedStates&mActiveHistoryStates) == 0 - && ((mHistoryEnd.states2^cur.states2)&mChangedStates2&mActiveHistoryStates2) == 0) { - // If the current is the same as the one before, then we no - // longer need the entry. - if (mHistoryLastEnd != null && mHistoryLastEnd.cmd == HistoryItem.CMD_UPDATE - && (mHistoryBaseTimeMs + elapsedRealtimeMs) < (mHistoryEnd.time + 500) - && mHistoryLastEnd.sameNonEvent(cur)) { - mHistoryLastEnd.next = null; - mHistoryEnd.next = mHistoryCache; - mHistoryCache = mHistoryEnd; - mHistoryEnd = mHistoryLastEnd; - mHistoryLastEnd = null; - } else { - mChangedStates |= mHistoryEnd.states^(cur.states&mActiveHistoryStates); - mChangedStates2 |= mHistoryEnd.states^(cur.states2&mActiveHistoryStates2); - mHistoryEnd.setTo(mHistoryEnd.time, HistoryItem.CMD_UPDATE, cur); - } - return; - } - - mChangedStates = 0; - mChangedStates2 = 0; - addHistoryBufferLocked(elapsedRealtimeMs, HistoryItem.CMD_UPDATE, cur); } public void addHistoryEventLocked(long elapsedRealtimeMs, long uptimeMs, int code, @@ -3992,15 +3950,6 @@ public class BatteryStatsImpl extends BatteryStats { void clearHistoryLocked() { if (DEBUG_HISTORY) Slog.i(TAG, "********** CLEARING HISTORY!"); - if (USE_OLD_HISTORY) { - if (mHistory != null) { - mHistoryEnd.next = mHistoryCache; - mHistoryCache = mHistory; - mHistory = mHistoryLastEnd = mHistoryEnd = null; - } - mNumHistoryItems = 0; - } - mHistoryBaseTimeMs = 0; mLastHistoryElapsedRealtimeMs = 0; mTrackRunningHistoryElapsedRealtimeMs = 0; @@ -11220,60 +11169,6 @@ public class BatteryStatsImpl extends BatteryStats { return mNextMaxDailyDeadlineMs; } - @Override - public boolean startIteratingOldHistoryLocked() { - if (DEBUG_HISTORY) Slog.i(TAG, "ITERATING: buff size=" + mHistoryBuffer.dataSize() - + " pos=" + mHistoryBuffer.dataPosition()); - if ((mHistoryIterator = mHistory) == null) { - return false; - } - mHistoryBuffer.setDataPosition(0); - mHistoryReadTmp.clear(); - mReadOverflow = false; - mIteratingHistory = true; - return true; - } - - @Override - public boolean getNextOldHistoryLocked(HistoryItem out) { - boolean end = mHistoryBuffer.dataPosition() >= mHistoryBuffer.dataSize(); - if (!end) { - readHistoryDelta(mHistoryBuffer, mHistoryReadTmp); - mReadOverflow |= mHistoryReadTmp.cmd == HistoryItem.CMD_OVERFLOW; - } - HistoryItem cur = mHistoryIterator; - if (cur == null) { - if (!mReadOverflow && !end) { - Slog.w(TAG, "Old history ends before new history!"); - } - return false; - } - out.setTo(cur); - mHistoryIterator = cur.next; - if (!mReadOverflow) { - if (end) { - Slog.w(TAG, "New history ends before old history!"); - } else if (!out.same(mHistoryReadTmp)) { - PrintWriter pw = new FastPrintWriter(new LogWriter(android.util.Log.WARN, TAG)); - pw.println("Histories differ!"); - pw.println("Old history:"); - (new HistoryPrinter()).printNextItem(pw, out, 0, false, true); - pw.println("New history:"); - (new HistoryPrinter()).printNextItem(pw, mHistoryReadTmp, 0, false, - true); - pw.flush(); - } - } - return true; - } - - @Override - public void finishIteratingOldHistoryLocked() { - mIteratingHistory = false; - mHistoryBuffer.setDataPosition(mHistoryBuffer.dataSize()); - mHistoryIterator = null; - } - public int getHistoryTotalSize() { return mConstants.MAX_HISTORY_BUFFER * mConstants.MAX_HISTORY_FILES; } @@ -14635,7 +14530,7 @@ public class BatteryStatsImpl extends BatteryStats { Parcel p = Parcel.obtain(); final long start = SystemClock.uptimeMillis(); - writeHistoryBuffer(p, true, true); + writeHistoryBuffer(p, true); if (DEBUG) { Slog.d(TAG, "writeHistoryBuffer duration ms:" + (SystemClock.uptimeMillis() - start) + " bytes:" + p.dataSize()); @@ -14729,7 +14624,7 @@ public class BatteryStatsImpl extends BatteryStats { if (raw.length > 0) { history.unmarshall(raw, 0, raw.length); history.setDataPosition(0); - readHistoryBuffer(history, true); + readHistoryBuffer(history); } if (DEBUG) { Slog.d(TAG, "readLocked history file::" @@ -14753,10 +14648,6 @@ public class BatteryStatsImpl extends BatteryStats { mRecordingHistory = true; final long elapsedRealtimeMs = mClocks.elapsedRealtime(); final long uptimeMs = mClocks.uptimeMillis(); - if (USE_OLD_HISTORY) { - addHistoryRecordLocked(elapsedRealtimeMs, uptimeMs, - HistoryItem.CMD_START, mHistoryCur); - } addHistoryBufferLocked(elapsedRealtimeMs, HistoryItem.CMD_START, mHistoryCur); startRecordingHistory(elapsedRealtimeMs, uptimeMs, false); } @@ -14768,7 +14659,7 @@ public class BatteryStatsImpl extends BatteryStats { return 0; } - void readHistoryBuffer(Parcel in, boolean andOldHistory) throws ParcelFormatException { + void readHistoryBuffer(Parcel in) throws ParcelFormatException { final int version = in.readInt(); if (version != VERSION) { Slog.w("BatteryStats", "readHistoryBuffer: version got " + version @@ -14796,10 +14687,6 @@ public class BatteryStatsImpl extends BatteryStats { in.setDataPosition(curPos + bufSize); } - if (andOldHistory) { - readOldHistory(in); - } - if (DEBUG_HISTORY) { StringBuilder sb = new StringBuilder(128); sb.append("****************** OLD mHistoryBaseTimeMs: "); @@ -14828,18 +14715,7 @@ public class BatteryStatsImpl extends BatteryStats { } } - void readOldHistory(Parcel in) { - if (!USE_OLD_HISTORY) { - return; - } - mHistory = mHistoryEnd = mHistoryCache = null; - while (in.dataAvail() > 0) { - HistoryItem rec = new HistoryItem(in); - addHistoryRecordLocked(rec); - } - } - - void writeHistoryBuffer(Parcel out, boolean inclData, boolean andOldHistory) { + void writeHistoryBuffer(Parcel out, boolean inclData) { if (DEBUG_HISTORY) { StringBuilder sb = new StringBuilder(128); sb.append("****************** WRITING mHistoryBaseTimeMs: "); @@ -14860,22 +14736,6 @@ public class BatteryStatsImpl extends BatteryStats { if (DEBUG_HISTORY) Slog.i(TAG, "***************** WRITING HISTORY: " + mHistoryBuffer.dataSize() + " bytes at " + out.dataPosition()); out.appendFrom(mHistoryBuffer, 0, mHistoryBuffer.dataSize()); - - if (andOldHistory) { - writeOldHistory(out); - } - } - - void writeOldHistory(Parcel out) { - if (!USE_OLD_HISTORY) { - return; - } - HistoryItem rec = mHistory; - while (rec != null) { - if (rec.time >= 0) rec.writeToParcel(out, 0); - rec = rec.next; - } - out.writeLong(-1); } public void readSummaryFromParcel(Parcel in) throws ParcelFormatException { @@ -14888,7 +14748,7 @@ public class BatteryStatsImpl extends BatteryStats { boolean inclHistory = in.readBoolean(); if (inclHistory) { - readHistoryBuffer(in, true); + readHistoryBuffer(in); mBatteryStatsHistory.readFromParcel(in); } @@ -15407,7 +15267,7 @@ public class BatteryStatsImpl extends BatteryStats { out.writeBoolean(inclHistory); if (inclHistory) { - writeHistoryBuffer(out, true, true); + writeHistoryBuffer(out, true); mBatteryStatsHistory.writeToParcel(out); } @@ -15920,7 +15780,7 @@ public class BatteryStatsImpl extends BatteryStats { throw new ParcelFormatException("Bad magic number: #" + Integer.toHexString(magic)); } - readHistoryBuffer(in, false); + readHistoryBuffer(in); mBatteryStatsHistory.readFromParcel(in); mStartCount = in.readInt(); @@ -16159,7 +16019,7 @@ public class BatteryStatsImpl extends BatteryStats { out.writeInt(MAGIC); - writeHistoryBuffer(out, true, false); + writeHistoryBuffer(out, true); mBatteryStatsHistory.writeToParcel(out); out.writeInt(mStartCount); |