Loading core/java/android/os/Binder.java +15 −2 Original line number Diff line number Diff line Loading @@ -296,7 +296,21 @@ public class Binder implements IBinder { disabled = sDumpDisabled; } if (disabled == null) { try { dump(fd, pw, args); } catch (SecurityException e) { pw.println(); pw.println("Security exception: " + e.getMessage()); throw e; } catch (Throwable e) { // Unlike usual calls, in this case if an exception gets thrown // back to us we want to print it back in to the dump data, since // that is where the caller expects all interesting information to // go. pw.println(); pw.println("Exception occurred while dumping:"); e.printStackTrace(pw); } } else { pw.println(sDumpDisabled); } Loading Loading @@ -443,7 +457,6 @@ final class BinderProxy implements IBinder { data.writeStringArray(args); try { transact(DUMP_TRANSACTION, data, reply, FLAG_ONEWAY); reply.readException(); } finally { data.recycle(); reply.recycle(); Loading core/java/com/android/internal/os/ProcessStats.java→core/java/com/android/internal/os/ProcessCpuTracker.java +39 −39 Original line number Diff line number Diff line Loading @@ -34,7 +34,7 @@ import java.util.Collections; import java.util.Comparator; import java.util.StringTokenizer; public class ProcessStats { public class ProcessCpuTracker { private static final String TAG = "ProcessStats"; private static final boolean DEBUG = false; private static final boolean localLOGV = DEBUG || false; Loading Loading @@ -256,7 +256,7 @@ public class ProcessStats { }; public ProcessStats(boolean includeThreads) { public ProcessCpuTracker(boolean includeThreads) { mIncludeThreads = includeThreads; } Loading packages/SystemUI/src/com/android/systemui/LoadAverageService.java +9 −9 Original line number Diff line number Diff line Loading @@ -29,18 +29,18 @@ import android.view.Gravity; import android.view.View; import android.view.WindowManager; import com.android.internal.os.ProcessStats; import com.android.internal.os.ProcessCpuTracker; public class LoadAverageService extends Service { private View mView; private static final class Stats extends ProcessStats { private static final class CpuTracker extends ProcessCpuTracker { String mLoadText; int mLoadWidth; private final Paint mPaint; Stats(Paint paint) { CpuTracker(Paint paint) { super(false); mPaint = paint; } Loading Loading @@ -70,7 +70,7 @@ public class LoadAverageService extends Service { } }; private final Stats mStats; private final CpuTracker mStats; private Paint mLoadPaint; private Paint mAddedPaint; Loading Loading @@ -150,7 +150,7 @@ public class LoadAverageService extends Service { float descent = mLoadPaint.descent(); mFH = (int)(descent - mAscent + .5f); mStats = new Stats(mLoadPaint); mStats = new CpuTracker(mLoadPaint); mStats.init(); updateDisplay(); } Loading Loading @@ -179,7 +179,7 @@ public class LoadAverageService extends Service { final int W = mNeededWidth; final int RIGHT = getWidth()-1; final Stats stats = mStats; final CpuTracker stats = mStats; final int userTime = stats.getLastUserTime(); final int systemTime = stats.getLastSystemTime(); final int iowaitTime = stats.getLastIoWaitTime(); Loading Loading @@ -226,7 +226,7 @@ public class LoadAverageService extends Service { int N = stats.countWorkingStats(); for (int i=0; i<N; i++) { Stats.Stats st = stats.getWorkingStats(i); CpuTracker.Stats st = stats.getWorkingStats(i); y += mFH; top += mFH; bottom += mFH; Loading Loading @@ -259,12 +259,12 @@ public class LoadAverageService extends Service { } void updateDisplay() { final Stats stats = mStats; final CpuTracker stats = mStats; final int NW = stats.countWorkingStats(); int maxWidth = stats.mLoadWidth; for (int i=0; i<NW; i++) { Stats.Stats st = stats.getWorkingStats(i); CpuTracker.Stats st = stats.getWorkingStats(i); if (st.nameWidth > maxWidth) { maxWidth = st.nameWidth; } Loading services/java/com/android/server/am/ProcessTracker.java→services/java/com/android/internal/app/ProcessStats.java +2437 −0 File changed and moved.Preview size limit exceeded, changes collapsed. Show changes services/java/com/android/server/am/ActiveServices.java +16 −15 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import java.util.HashSet; import java.util.Iterator; import java.util.List; import com.android.internal.app.ProcessStats; import com.android.internal.os.BatteryStatsImpl; import com.android.internal.os.TransferPipe; import com.android.server.am.ActivityManagerService.ItemMatcher; Loading Loading @@ -251,9 +252,9 @@ public final class ActiveServices { } r.lastActivity = SystemClock.uptimeMillis(); r.startRequested = true; ProcessTracker.ServiceState stracker = r.getTracker(); ProcessStats.ServiceState stracker = r.getTracker(); if (stracker != null) { stracker.setStarted(true, mAm.mProcessTracker.getMemFactorLocked(), r.lastActivity); stracker.setStarted(true, mAm.mProcessStats.getMemFactorLocked(), r.lastActivity); } r.callStart = false; r.pendingStarts.add(new ServiceRecord.StartItem(r, false, r.makeNextStartId(), Loading @@ -274,7 +275,7 @@ public final class ActiveServices { } service.startRequested = false; if (service.tracker != null) { service.tracker.setStarted(false, mAm.mProcessTracker.getMemFactorLocked(), service.tracker.setStarted(false, mAm.mProcessStats.getMemFactorLocked(), SystemClock.uptimeMillis()); } service.callStart = false; Loading Loading @@ -374,7 +375,7 @@ public final class ActiveServices { } r.startRequested = false; if (r.tracker != null) { r.tracker.setStarted(false, mAm.mProcessTracker.getMemFactorLocked(), r.tracker.setStarted(false, mAm.mProcessStats.getMemFactorLocked(), SystemClock.uptimeMillis()); } r.callStart = false; Loading Loading @@ -516,9 +517,9 @@ public final class ActiveServices { s.lastActivity = SystemClock.uptimeMillis(); if (!s.hasAutoCreateConnections()) { // This is the first binding, let the tracker know. ProcessTracker.ServiceState stracker = s.getTracker(); ProcessStats.ServiceState stracker = s.getTracker(); if (stracker != null) { stracker.setBound(true, mAm.mProcessTracker.getMemFactorLocked(), stracker.setBound(true, mAm.mProcessStats.getMemFactorLocked(), s.lastActivity); } } Loading Loading @@ -844,9 +845,9 @@ public final class ActiveServices { long now = SystemClock.uptimeMillis(); if (r.executeNesting == 0) { r.executeFg = fg; ProcessTracker.ServiceState stracker = r.getTracker(); ProcessStats.ServiceState stracker = r.getTracker(); if (stracker != null) { stracker.setExecuting(true, mAm.mProcessTracker.getMemFactorLocked(), now); stracker.setExecuting(true, mAm.mProcessStats.getMemFactorLocked(), now); } if (r.app != null) { if (r.app.executingServices.size() == 0) { Loading Loading @@ -1079,7 +1080,7 @@ public final class ActiveServices { Slog.v(TAG_MU, "bringUpServiceLocked: appInfo.uid=" + r.appInfo.uid + " app=" + app); if (app != null && app.thread != null) { try { app.addPackage(r.appInfo.packageName, mAm.mProcessTracker); app.addPackage(r.appInfo.packageName, mAm.mProcessStats); realStartServiceLocked(r, app, execInFg); return null; } catch (RemoteException e) { Loading Loading @@ -1364,7 +1365,7 @@ public final class ActiveServices { ((ServiceRestarter)r.restarter).setService(null); } int memFactor = mAm.mProcessTracker.getMemFactorLocked(); int memFactor = mAm.mProcessStats.getMemFactorLocked(); long now = SystemClock.uptimeMillis(); if (r.tracker != null) { r.tracker.setStarted(false, memFactor, now); Loading Loading @@ -1435,7 +1436,7 @@ public final class ActiveServices { boolean hasAutoCreate = s.hasAutoCreateConnections(); if (!hasAutoCreate) { if (s.tracker != null) { s.tracker.setBound(false, mAm.mProcessTracker.getMemFactorLocked(), s.tracker.setBound(false, mAm.mProcessStats.getMemFactorLocked(), SystemClock.uptimeMillis()); } } Loading Loading @@ -1541,7 +1542,7 @@ public final class ActiveServices { } r.executeFg = false; if (r.tracker != null) { r.tracker.setExecuting(false, mAm.mProcessTracker.getMemFactorLocked(), r.tracker.setExecuting(false, mAm.mProcessStats.getMemFactorLocked(), SystemClock.uptimeMillis()); if (inStopping) { r.tracker.makeInactive(); Loading @@ -1566,7 +1567,7 @@ public final class ActiveServices { mPendingServices.remove(i); i--; proc.addPackage(sr.appInfo.packageName, mAm.mProcessTracker); proc.addPackage(sr.appInfo.packageName, mAm.mProcessStats); realStartServiceLocked(sr, proc, sr.createdFromFg); didSomething = true; } Loading Loading @@ -1737,7 +1738,7 @@ public final class ActiveServices { sr.isolatedProc = null; sr.executeNesting = 0; if (sr.tracker != null) { sr.tracker.setExecuting(false, mAm.mProcessTracker.getMemFactorLocked(), sr.tracker.setExecuting(false, mAm.mProcessStats.getMemFactorLocked(), SystemClock.uptimeMillis()); } if (mStoppingServices.remove(sr)) { Loading Loading @@ -1772,7 +1773,7 @@ public final class ActiveServices { if (sr.pendingStarts.size() == 0) { sr.startRequested = false; if (sr.tracker != null) { sr.tracker.setStarted(false, mAm.mProcessTracker.getMemFactorLocked(), sr.tracker.setStarted(false, mAm.mProcessStats.getMemFactorLocked(), SystemClock.uptimeMillis()); } if (!sr.hasAutoCreateConnections()) { Loading Loading
core/java/android/os/Binder.java +15 −2 Original line number Diff line number Diff line Loading @@ -296,7 +296,21 @@ public class Binder implements IBinder { disabled = sDumpDisabled; } if (disabled == null) { try { dump(fd, pw, args); } catch (SecurityException e) { pw.println(); pw.println("Security exception: " + e.getMessage()); throw e; } catch (Throwable e) { // Unlike usual calls, in this case if an exception gets thrown // back to us we want to print it back in to the dump data, since // that is where the caller expects all interesting information to // go. pw.println(); pw.println("Exception occurred while dumping:"); e.printStackTrace(pw); } } else { pw.println(sDumpDisabled); } Loading Loading @@ -443,7 +457,6 @@ final class BinderProxy implements IBinder { data.writeStringArray(args); try { transact(DUMP_TRANSACTION, data, reply, FLAG_ONEWAY); reply.readException(); } finally { data.recycle(); reply.recycle(); Loading
core/java/com/android/internal/os/ProcessStats.java→core/java/com/android/internal/os/ProcessCpuTracker.java +39 −39 Original line number Diff line number Diff line Loading @@ -34,7 +34,7 @@ import java.util.Collections; import java.util.Comparator; import java.util.StringTokenizer; public class ProcessStats { public class ProcessCpuTracker { private static final String TAG = "ProcessStats"; private static final boolean DEBUG = false; private static final boolean localLOGV = DEBUG || false; Loading Loading @@ -256,7 +256,7 @@ public class ProcessStats { }; public ProcessStats(boolean includeThreads) { public ProcessCpuTracker(boolean includeThreads) { mIncludeThreads = includeThreads; } Loading
packages/SystemUI/src/com/android/systemui/LoadAverageService.java +9 −9 Original line number Diff line number Diff line Loading @@ -29,18 +29,18 @@ import android.view.Gravity; import android.view.View; import android.view.WindowManager; import com.android.internal.os.ProcessStats; import com.android.internal.os.ProcessCpuTracker; public class LoadAverageService extends Service { private View mView; private static final class Stats extends ProcessStats { private static final class CpuTracker extends ProcessCpuTracker { String mLoadText; int mLoadWidth; private final Paint mPaint; Stats(Paint paint) { CpuTracker(Paint paint) { super(false); mPaint = paint; } Loading Loading @@ -70,7 +70,7 @@ public class LoadAverageService extends Service { } }; private final Stats mStats; private final CpuTracker mStats; private Paint mLoadPaint; private Paint mAddedPaint; Loading Loading @@ -150,7 +150,7 @@ public class LoadAverageService extends Service { float descent = mLoadPaint.descent(); mFH = (int)(descent - mAscent + .5f); mStats = new Stats(mLoadPaint); mStats = new CpuTracker(mLoadPaint); mStats.init(); updateDisplay(); } Loading Loading @@ -179,7 +179,7 @@ public class LoadAverageService extends Service { final int W = mNeededWidth; final int RIGHT = getWidth()-1; final Stats stats = mStats; final CpuTracker stats = mStats; final int userTime = stats.getLastUserTime(); final int systemTime = stats.getLastSystemTime(); final int iowaitTime = stats.getLastIoWaitTime(); Loading Loading @@ -226,7 +226,7 @@ public class LoadAverageService extends Service { int N = stats.countWorkingStats(); for (int i=0; i<N; i++) { Stats.Stats st = stats.getWorkingStats(i); CpuTracker.Stats st = stats.getWorkingStats(i); y += mFH; top += mFH; bottom += mFH; Loading Loading @@ -259,12 +259,12 @@ public class LoadAverageService extends Service { } void updateDisplay() { final Stats stats = mStats; final CpuTracker stats = mStats; final int NW = stats.countWorkingStats(); int maxWidth = stats.mLoadWidth; for (int i=0; i<NW; i++) { Stats.Stats st = stats.getWorkingStats(i); CpuTracker.Stats st = stats.getWorkingStats(i); if (st.nameWidth > maxWidth) { maxWidth = st.nameWidth; } Loading
services/java/com/android/server/am/ProcessTracker.java→services/java/com/android/internal/app/ProcessStats.java +2437 −0 File changed and moved.Preview size limit exceeded, changes collapsed. Show changes
services/java/com/android/server/am/ActiveServices.java +16 −15 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import java.util.HashSet; import java.util.Iterator; import java.util.List; import com.android.internal.app.ProcessStats; import com.android.internal.os.BatteryStatsImpl; import com.android.internal.os.TransferPipe; import com.android.server.am.ActivityManagerService.ItemMatcher; Loading Loading @@ -251,9 +252,9 @@ public final class ActiveServices { } r.lastActivity = SystemClock.uptimeMillis(); r.startRequested = true; ProcessTracker.ServiceState stracker = r.getTracker(); ProcessStats.ServiceState stracker = r.getTracker(); if (stracker != null) { stracker.setStarted(true, mAm.mProcessTracker.getMemFactorLocked(), r.lastActivity); stracker.setStarted(true, mAm.mProcessStats.getMemFactorLocked(), r.lastActivity); } r.callStart = false; r.pendingStarts.add(new ServiceRecord.StartItem(r, false, r.makeNextStartId(), Loading @@ -274,7 +275,7 @@ public final class ActiveServices { } service.startRequested = false; if (service.tracker != null) { service.tracker.setStarted(false, mAm.mProcessTracker.getMemFactorLocked(), service.tracker.setStarted(false, mAm.mProcessStats.getMemFactorLocked(), SystemClock.uptimeMillis()); } service.callStart = false; Loading Loading @@ -374,7 +375,7 @@ public final class ActiveServices { } r.startRequested = false; if (r.tracker != null) { r.tracker.setStarted(false, mAm.mProcessTracker.getMemFactorLocked(), r.tracker.setStarted(false, mAm.mProcessStats.getMemFactorLocked(), SystemClock.uptimeMillis()); } r.callStart = false; Loading Loading @@ -516,9 +517,9 @@ public final class ActiveServices { s.lastActivity = SystemClock.uptimeMillis(); if (!s.hasAutoCreateConnections()) { // This is the first binding, let the tracker know. ProcessTracker.ServiceState stracker = s.getTracker(); ProcessStats.ServiceState stracker = s.getTracker(); if (stracker != null) { stracker.setBound(true, mAm.mProcessTracker.getMemFactorLocked(), stracker.setBound(true, mAm.mProcessStats.getMemFactorLocked(), s.lastActivity); } } Loading Loading @@ -844,9 +845,9 @@ public final class ActiveServices { long now = SystemClock.uptimeMillis(); if (r.executeNesting == 0) { r.executeFg = fg; ProcessTracker.ServiceState stracker = r.getTracker(); ProcessStats.ServiceState stracker = r.getTracker(); if (stracker != null) { stracker.setExecuting(true, mAm.mProcessTracker.getMemFactorLocked(), now); stracker.setExecuting(true, mAm.mProcessStats.getMemFactorLocked(), now); } if (r.app != null) { if (r.app.executingServices.size() == 0) { Loading Loading @@ -1079,7 +1080,7 @@ public final class ActiveServices { Slog.v(TAG_MU, "bringUpServiceLocked: appInfo.uid=" + r.appInfo.uid + " app=" + app); if (app != null && app.thread != null) { try { app.addPackage(r.appInfo.packageName, mAm.mProcessTracker); app.addPackage(r.appInfo.packageName, mAm.mProcessStats); realStartServiceLocked(r, app, execInFg); return null; } catch (RemoteException e) { Loading Loading @@ -1364,7 +1365,7 @@ public final class ActiveServices { ((ServiceRestarter)r.restarter).setService(null); } int memFactor = mAm.mProcessTracker.getMemFactorLocked(); int memFactor = mAm.mProcessStats.getMemFactorLocked(); long now = SystemClock.uptimeMillis(); if (r.tracker != null) { r.tracker.setStarted(false, memFactor, now); Loading Loading @@ -1435,7 +1436,7 @@ public final class ActiveServices { boolean hasAutoCreate = s.hasAutoCreateConnections(); if (!hasAutoCreate) { if (s.tracker != null) { s.tracker.setBound(false, mAm.mProcessTracker.getMemFactorLocked(), s.tracker.setBound(false, mAm.mProcessStats.getMemFactorLocked(), SystemClock.uptimeMillis()); } } Loading Loading @@ -1541,7 +1542,7 @@ public final class ActiveServices { } r.executeFg = false; if (r.tracker != null) { r.tracker.setExecuting(false, mAm.mProcessTracker.getMemFactorLocked(), r.tracker.setExecuting(false, mAm.mProcessStats.getMemFactorLocked(), SystemClock.uptimeMillis()); if (inStopping) { r.tracker.makeInactive(); Loading @@ -1566,7 +1567,7 @@ public final class ActiveServices { mPendingServices.remove(i); i--; proc.addPackage(sr.appInfo.packageName, mAm.mProcessTracker); proc.addPackage(sr.appInfo.packageName, mAm.mProcessStats); realStartServiceLocked(sr, proc, sr.createdFromFg); didSomething = true; } Loading Loading @@ -1737,7 +1738,7 @@ public final class ActiveServices { sr.isolatedProc = null; sr.executeNesting = 0; if (sr.tracker != null) { sr.tracker.setExecuting(false, mAm.mProcessTracker.getMemFactorLocked(), sr.tracker.setExecuting(false, mAm.mProcessStats.getMemFactorLocked(), SystemClock.uptimeMillis()); } if (mStoppingServices.remove(sr)) { Loading Loading @@ -1772,7 +1773,7 @@ public final class ActiveServices { if (sr.pendingStarts.size() == 0) { sr.startRequested = false; if (sr.tracker != null) { sr.tracker.setStarted(false, mAm.mProcessTracker.getMemFactorLocked(), sr.tracker.setStarted(false, mAm.mProcessStats.getMemFactorLocked(), SystemClock.uptimeMillis()); } if (!sr.hasAutoCreateConnections()) { Loading