am: 89046edb4d
* commit '89046edb4d64fe1c7662103cce3a82b69e05cfe4':
Fix issue where max idle time > total idle time
Change-Id: Idfbfa60ec62002712073ae9af3c3e4c0e39be1e7
If the batterystats were reset while the device was
idling (via command line most likely), then also reset the
last time the device started idling so that the max idle time
calculation is correct.
Bug:28452600
Change-Id: I8a3d5dc3081deda76356c03d891e098baa85f88a
am: d398244513
* commit 'd398244513c62c9ea14a0f1c6ffef832e803c16f':
Hide work profile key in user credentials screen
Change-Id: I5273b53b07cb80d45bac61c8dcc5cba8f6b11b3a
Before resetKeyStore(), it will back up child profile keys,
and will be restored after primary profile keystore is cleared.
Bug: 28878708
Change-Id: I0cb4a1f885d468894bc7eb95af694328bf92ce16
Read time and I/O for OTA update from last_install, and report the
statistics using MetricsLogger.histogram.
Bug: 28658632
Change-Id: I7fd06a82cbabd346d6d44f81ebad08f6baf4b8d0
am: 4dbdd5d971
* commit '4dbdd5d97155364305abf7c010c165f1a6f79edb':
Add data from /proc/pagetypeinfo to procstats.
Change-Id: Ic86eb0ad4278dc2d0b7f93148bab00a1f707dc16
This data tells us the number of pages of each type that
are available by page size. It is collected each time
the procstats snapshot is taken, and printed in the
checkin and verbose (dumpsys procstats -a) modes.
Change-Id: I14562eac15833617391c560638a9e7d239ef8db6
am: d86ac8116b
* commit 'd86ac8116bfc64c61d8124ff8d3e92be5e55cd3e':
New api in LockSettingsService to get StrongAuth synchronously
Change-Id: I3fe13c51d5d33f5689f0b4130a33cf3a2777e186
We handled stale wakelocks (wakelocks that disappear from /d/wakeup_sources)
differently in previous version of Android. They would be set stale, but still be
updated with their previous counts (they would never disappear).
The method setStale has been replaced with endSample(), which is semantically different.
Once a SamplingTimer has endSample() called, it expects any future calls to update() to
be a new sample, meaning the entire amount passed to update() is included in the kernel
wakelock's total. Since stale wakelocks were never removed from the list, this would
increase by large amounts when nothing had actually changed.
This was exacerbated by the fact that there was a bug where the last wakelock in
/d/wakeup_sources was never parsed, so if the order ever changed, this "stale" wakelock
would suddenly re-appear and the entire amount reported would be charged to the wakelock,
instead of just the difference since the last update.
All this was exposed when we added support to handle wakelocks that would disappear and
reappear with smaller values, meaning the kernel had pruned them from its accounting and
reset them.
Bug:28601080
Change-Id: Ic96027f7d580dac5e20aa73d67e5cedac4ccabeb
When a null window background is set, we want to use the
fallback drawable for resizing.
Bug: 28801472
Change-Id: Ia616d7aa18b0d7aa2c7081a85ce7551ecfeca5b3
Instead of in activity thread. That way, we can warm up (ie,
precompute cached values) this provider and AndroidBCWorkaroundProvider
(which are installed together) so that the computation doesn't
happen in the app. As a result, the time spent in the first call to
SSLSocketFactory.getDefault() decreases by ~5ms in angler userdebug.
Measured with an app calling SSLSocketFactory.getDefault in onCreate
and timed it with System.currentTimeMillis() .
Bug: 28545496
Change-Id: I73284eccdf6d51dbf55206335d759ccf795c5f41
Upstream ICU caches use SoftReferences. On Android this means
that useful cached data initialized in the Zygote are "lost" when
the Zygote GCs and cannot be shared with apps. This change makes use
of an Android patch to ICU to ensure References created during
Zygote initialization are "strong". i.e. they are never collected.
This prevents them being GCd and ensures they can be shared between
applications.
After switching ICU to use strong references, this change
also creates DecimalFormatSymbols objects for common ULocales
(ROOT, US and the user's default, if different). DecimalFormatSymbols
makes use of an ICU Reference cache and this alone has been shown to
improve the construction time of java.text.DecimalFormat by 1-1.5
milliseconds on a Seed device. This saving applies the first time one
is created in each app for each locale, and again if SoftReferences
have been cleared.
The cost to the heap size of the Zygote has been measured at ~107k.
This value will change as more caches are switched to use the new
CacheValue class.
Formatting is typically performed on the UI thread and the intention
of this change is to reduce app start up time and jank in apps like
the Dialer which do a lot of formatting when scrolling lists. The
change may also enable more virtual memory page-sharing between
apps, though this is not the specific goal.
Bug: 28326526
(cherry picked from commit 41c9dc3b69)
Change-Id: I48e4d57ecbb207b9a5e17b6caf5e7b282e4a40e3
Not all client needs to monitor the StrongAuth, e.g. ConfirmDeviceCredentialBaseFragment
Provide a quick method to get StrongAuth
Bug: 28752364
Change-Id: Iecfd217046da38e43297bdd5832cf7d637b979ed
am: 8491b4c05d
* commit '8491b4c05d35b15e0a4c1a0ef2396cbb7169698a':
Add support for ICU data pinning in the Zygote
Change-Id: I64ba8a96ab8990a051a68cbdb35f4b1de3738d09
am: 9b1d64410d
* commit '9b1d64410dfddc38ade15d1581de2c89ad79948a':
Add support for ICU data pinning in the Zygote
Change-Id: I53a2d5f885df5cf633a4a63cb2e3c2bc5c75959e
Upstream ICU caches use SoftReferences. On Android this means
that useful cached data initialized in the Zygote are "lost" when
the Zygote GCs and cannot be shared with apps. This change makes use
of an Android patch to ICU to ensure References created during
Zygote initialization are "strong". i.e. they are never collected.
This prevents them being GCd and ensures they can be shared between
applications.
After switching ICU to use strong references, this change
also creates DecimalFormatSymbols objects for common ULocales
(ROOT, US and the user's default, if different). DecimalFormatSymbols
makes use of an ICU Reference cache and this alone has been shown to
improve the construction time of java.text.DecimalFormat by 1-1.5
milliseconds on a Seed device. This saving applies the first time one
is created in each app for each locale, and again if SoftReferences
have been cleared.
The cost to the heap size of the Zygote has been measured at ~107k.
This value will change as more caches are switched to use the new
CacheValue class.
Formatting is typically performed on the UI thread and the intention
of this change is to reduce app start up time and jank in apps like
the Dialer which do a lot of formatting when scrolling lists. The
change may also enable more virtual memory page-sharing between
apps, though this is not the specific goal.
Bug: 28326526
Change-Id: Ia2c73f6525f05b1aa81e57a31eed1616decf6bb5
am: 45165c9373
* commit '45165c9373f1bf2dbe0c3f11b271daa24414ea35':
Demote the log in ProcessState.ensureNotDead from a wtf to a warning.
@hide SystemHealthManager.from
Change-Id: Id56c7ee80254eac26132956ef62b83c405a0e2f8
Since LocaleList needs to depend on android.os.Parcelable, we cannot let
that class belong to "android.util" package, which causes layering
violation.
Bug: 28819696
Change-Id: Ia8de2ee9df3dd0a42b1fe84574439519b680fe18
We can't use the same instance on both the main and the background
thread, as this will lead to problems.
Change-Id: Ieec525f028df2d0596667126d8f5004773461517
Fixes: 28745682
It's raising alarm bells but there isn't much we can do without a lot
of rewriting inside the ActivityManager. The only consequence is stats
that are off by a little bit.
Bug: 28581070
Change-Id: If51568c3a708a907ceef6452e7d45599a57454f7
The method warmUpJcaProviders arrived here from both nyc-dev
and aosp/master, removing duplication.
Change-Id: I2d91ee38fe93f600bec89651416e84ab83ef9d4a