Commit Graph

6326 Commits

Author SHA1 Message Date
Sergio Giro
882c7d244c Merge "ZygoteInit: install AndroidKeyStoreProvider in the Zygote" into nyc-dev am: 44b9f13f9c
am: 3eb0680642

* commit '3eb06806429f444fe87b894308681e20e6871c7d':
  ZygoteInit: install AndroidKeyStoreProvider in the Zygote

Change-Id: Ia3c21577450bc028548e8427a4a0f9f552e4890f
2016-05-19 18:21:50 +00:00
Sergio Giro
3eb0680642 Merge "ZygoteInit: install AndroidKeyStoreProvider in the Zygote" into nyc-dev
am: 44b9f13f9c

* commit '44b9f13f9cfaf2e1136a1f2baab54b229d221fe4':
  ZygoteInit: install AndroidKeyStoreProvider in the Zygote

Change-Id: Ia20b312dfd8181fadd38f075817630a1c5ab518f
2016-05-19 18:09:30 +00:00
Sergio Giro
69de32071c ZygoteInit: install AndroidKeyStoreProvider in the Zygote
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
2016-05-19 16:42:19 +00:00
Andreas Gampe
f466f7bbd5 Merge "Frameworks/base: Add more systrace points" into nyc-dev am: b40bcfb6ad
am: 54748384ea

* commit '54748384ea3e001cbc97ecdf67501c8592925df7':
  Frameworks/base: Add more systrace points

Change-Id: I4a3b4143a87c5e928d7149d57a899af0c0aecb0b
2016-05-19 00:19:48 +00:00
Andreas Gampe
54748384ea Merge "Frameworks/base: Add more systrace points" into nyc-dev
am: b40bcfb6ad

* commit 'b40bcfb6ad3d60e5606f41c6628c133512e0538e':
  Frameworks/base: Add more systrace points

Change-Id: I1ede493eaab4a86c67a992c2eb4129f81d903d1c
2016-05-19 00:14:14 +00:00
Andreas Gampe
4c8e542f68 Frameworks/base: Add more systrace points
Add more systrace points for application startup.

Bug: 28625993
Change-Id: I76dca9e842fb43f1b85981ef94582074d31528c8
2016-05-18 15:43:45 -07:00
Neil Fuller
a90127dcc8 Merge "Add support for ICU data pinning in the Zygote" am: 9b1d64410d am: 8491b4c05d
am: c724f2207f

* commit 'c724f2207f9186f25eeac5b2131e469dafb3bc90':
  Add support for ICU data pinning in the Zygote

Change-Id: I2c14d6dad84ed2bf5d6186ab795d54184bb483cb
2016-05-18 12:00:34 +00:00
Neil Fuller
c724f2207f Merge "Add support for ICU data pinning in the Zygote" am: 9b1d64410d
am: 8491b4c05d

* commit '8491b4c05d35b15e0a4c1a0ef2396cbb7169698a':
  Add support for ICU data pinning in the Zygote

Change-Id: I64ba8a96ab8990a051a68cbdb35f4b1de3738d09
2016-05-18 11:55:44 +00:00
Neil Fuller
8491b4c05d Merge "Add support for ICU data pinning in the Zygote"
am: 9b1d64410d

* commit '9b1d64410dfddc38ade15d1581de2c89ad79948a':
  Add support for ICU data pinning in the Zygote

Change-Id: I53a2d5f885df5cf633a4a63cb2e3c2bc5c75959e
2016-05-18 11:51:05 +00:00
Neil Fuller
41c9dc3b69 Add support for ICU data pinning in the Zygote
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
2016-05-18 11:15:11 +01:00
Yohei Yukawa
bf4c8f730b Merge "Move LocaleList to avoid layering violation." into nyc-dev am: 31884efd13
am: ddaf3f4681

* commit 'ddaf3f468195e5aa47617317c08e9e2c35bcfeee':
  Move LocaleList to avoid layering violation.

Change-Id: I7dbe5c3d552a7350ab61c929f431e2a3cffdee5b
2016-05-18 02:22:07 +00:00
Yohei Yukawa
ddaf3f4681 Merge "Move LocaleList to avoid layering violation." into nyc-dev
am: 31884efd13

* commit '31884efd13b3ac60078edaa0b7e8a4b75d995538':
  Move LocaleList to avoid layering violation.

Change-Id: I9132fe456a8d79569c651dac0a0bce0153444767
2016-05-18 02:18:38 +00:00
Yohei Yukawa
31884efd13 Merge "Move LocaleList to avoid layering violation." into nyc-dev 2016-05-18 02:14:26 +00:00
Joe Onorato
269f64079b Merge changes If51568c3,Idd434c19 into nyc-dev am: 45165c9373
am: 6b10cec210

* commit '6b10cec2108746e15388125fdd6fa0cbfd6cb28d':
  Demote the log in ProcessState.ensureNotDead from a wtf to a warning.
  @hide SystemHealthManager.from

Change-Id: Ifc94199cc5ad69af73871cc012aa2dac31b6f67b
2016-05-18 00:52:32 +00:00
Joe Onorato
6b10cec210 Merge changes If51568c3,Idd434c19 into nyc-dev
am: 45165c9373

* commit '45165c9373f1bf2dbe0c3f11b271daa24414ea35':
  Demote the log in ProcessState.ensureNotDead from a wtf to a warning.
  @hide SystemHealthManager.from

Change-Id: Id56c7ee80254eac26132956ef62b83c405a0e2f8
2016-05-18 00:49:54 +00:00
TreeHugger Robot
45165c9373 Merge changes If51568c3,Idd434c19 into nyc-dev
* changes:
  Demote the log in ProcessState.ensureNotDead from a wtf to a warning.
  @hide SystemHealthManager.from
2016-05-18 00:46:47 +00:00
Jorim Jaggi
22507e99ff Merge "Fix threading problems with drawables" into nyc-dev am: 1e09e9826b
am: e48384c867

* commit 'e48384c8672f53b00b231a7590f45650f1e3f22e':
  Fix threading problems with drawables

Change-Id: Icad4ab1e6f497ab1c549b2d0bb1720c13f6254c2
2016-05-18 00:33:59 +00:00
Jorim Jaggi
e48384c867 Merge "Fix threading problems with drawables" into nyc-dev
am: 1e09e9826b

* commit '1e09e9826b24c6d877920b027954e0e861a336a0':
  Fix threading problems with drawables

Change-Id: I06a58a1a9454f9e9c384b9999ef6077cc45cf46f
2016-05-18 00:28:48 +00:00
Yohei Yukawa
23cbe85610 Move LocaleList to avoid layering violation.
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
2016-05-17 16:42:58 -07:00
Jorim Jaggi
ca0cf0f529 Fix threading problems with drawables
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
2016-05-17 23:05:38 +00:00
Joe Onorato
1cc1d13d6e Demote the log in ProcessState.ensureNotDead from a wtf to a warning.
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
2016-05-17 15:31:38 -07:00
Michael Kwan
4fab094b07 Merge "Modified AlertController to allow themes to specify custom implementation." into nyc-mr1-dev
am: 59bce44aaa

* commit '59bce44aaaad61c5bd57ddcc1225e69ad5d0500b':
  Modified AlertController to allow themes to specify custom implementation.

Change-Id: Ice8251602843a6a98552bcb85272d8cc9eefae2b
2016-05-17 18:14:47 +00:00
Michael Kwan
59bce44aaa Merge "Modified AlertController to allow themes to specify custom implementation." into nyc-mr1-dev 2016-05-17 18:03:38 +00:00
Sergio Giro
d498859c4a ZygoteInit: remove extra copy of method
The method warmUpJcaProviders arrived here from both nyc-dev
and aosp/master, removing duplication.

(cherry picked from commit 57b8a73d0e)

Change-Id: Idbb046ae47d608343ffb5cbf2df8e0c00920c909
2016-05-17 18:27:56 +01:00
Phil Weaver
c0a46cf445 Merge "Content description for FloatingToobar overflow." into nyc-dev am: 43141e33f7
am: bc176c4fbf

* commit 'bc176c4fbf3ab075343699f57c5fc2583549e865':
  Content description for FloatingToobar overflow.

Change-Id: Ic8ab8de6fcb433e26e811f87df3ab99e93dc054c
2016-05-17 17:22:01 +00:00
Phil Weaver
bc176c4fbf Merge "Content description for FloatingToobar overflow." into nyc-dev
am: 43141e33f7

* commit '43141e33f7e7da5b7514549cf23f5228915f11d8':
  Content description for FloatingToobar overflow.

Change-Id: I6118131870a8c3bfa51befa9973808fadfa9caf6
2016-05-17 17:16:46 +00:00
Phil Weaver
efae6e9ff1 Merge "Content description for FloatingToobar overflow." into nyc-dev
am: 43141e33f7

* commit '43141e33f7e7da5b7514549cf23f5228915f11d8':
  Content description for FloatingToobar overflow.

Change-Id: Id7656042c60e76a5afa593df1613e1a609366507
2016-05-17 17:15:25 +00:00
Phil Weaver
43141e33f7 Merge "Content description for FloatingToobar overflow." into nyc-dev 2016-05-17 17:08:29 +00:00
Sergio Giro
57b8a73d0e ZygoteInit: remove extra copy of method DO NOT MERGE ANYWHERE
The method warmUpJcaProviders arrived here from both nyc-dev
and aosp/master, removing duplication.

Change-Id: I2d91ee38fe93f600bec89651416e84ab83ef9d4a
2016-05-17 17:55:27 +01:00
Sergio Giro
093adbb330 Merge "ZygoteInit: warm up JCA providers during preload" am: aa733e0b41 am: ef42102cf8
am: 9d95ab47ff

* commit '9d95ab47ff318ebb30804dce0890b4de414d5844':
  ZygoteInit: warm up JCA providers during preload

Change-Id: I0c987173ffc212581b21958091e288de531e3e97
2016-05-17 16:06:43 +00:00
Sergio Giro
9d95ab47ff Merge "ZygoteInit: warm up JCA providers during preload" am: aa733e0b41
am: ef42102cf8

* commit 'ef42102cf8d0dd238deb1871bef07f9646622a91':
  ZygoteInit: warm up JCA providers during preload

Change-Id: I7c8ed5394af0c6e1fd25b289ca615125c4e3c38e
2016-05-17 16:01:45 +00:00
Sergio Giro
ef42102cf8 Merge "ZygoteInit: warm up JCA providers during preload"
am: aa733e0b41

* commit 'aa733e0b41e4e15908a4c89e935f824cc5908b4d':
  ZygoteInit: warm up JCA providers during preload

Change-Id: If96e2e482e3fc01c2d3be5eee6d405f9bb5a6571
2016-05-17 15:56:32 +00:00
Sergio Giro
b07595d194 ZygoteInit: warm up JCA providers during preload
This makes the time spent in the first call of an app to
SSLSocketFactory.getDefault() drop from ~240 ms to ~50 ms. In M
it was around ~6ms. This is due to the fact that, while instantiating
the default factory, all providers are initialized.

In order to obtain the timings above, I created an app calling
SSLSocketFactory.getDefault in onCreate and timed it
with System.currentTimeMillis() .

(cherry picked from commit 6cb7b1c476)

Bug: 28545496

Change-Id: Ic5aab3ece609d9fef06fee4ccb83d8371af075b2
2016-05-17 14:39:44 +01:00
Sergio Giro
975bca09fe Merge "ZygoteInit: warm up JCA providers during preload" into nyc-dev am: 5a68af3840
am: d423407254

* commit 'd423407254bcdb33e6b19239096c1d5db7d6cdd5':
  ZygoteInit: warm up JCA providers during preload

Change-Id: I2295ea88e46868ded46e276cffb57c341da88d69
2016-05-17 11:15:59 +00:00
Sergio Giro
d423407254 Merge "ZygoteInit: warm up JCA providers during preload" into nyc-dev
am: 5a68af3840

* commit '5a68af384037f2980215dd45b91c5165c779d4e8':
  ZygoteInit: warm up JCA providers during preload

Change-Id: If7879885eaefbd8499769d688eefde28edd15c87
2016-05-17 11:11:11 +00:00
Sergio Giro
a9f804bf41 Merge "ZygoteInit: warm up JCA providers during preload" into nyc-dev
am: 5a68af3840

* commit '5a68af384037f2980215dd45b91c5165c779d4e8':
  ZygoteInit: warm up JCA providers during preload

Change-Id: I3cf53b5125331fc3c59183c09c79516a98a62347
2016-05-17 11:10:54 +00:00
Sergio Giro
5a68af3840 Merge "ZygoteInit: warm up JCA providers during preload" into nyc-dev 2016-05-17 11:02:20 +00:00
Sergio Giro
6cb7b1c476 ZygoteInit: warm up JCA providers during preload
This makes the time spent in the first call of an app to
SSLSocketFactory.getDefault() drop from ~240 ms to ~50 ms. In M
it was around ~6ms. This is due to the fact that, while instantiating
the default factory, all providers are initialized.

In order to obtain the timings above, I created an app calling
SSLSocketFactory.getDefault in onCreate and timed it
with System.currentTimeMillis() .

Bug: 28545496

Change-Id: I650d4b0435e67e481a41e02b0b538ce5cc993fa3
2016-05-17 10:02:09 +00:00
Chris Tate
c4999be6e3 Merge "Sysconfig define a whitelist of permitted backup transports" into nyc-dev am: 11d9586117
am: b7ae368079

* commit 'b7ae3680798aa5dce807015a763a0d017ce7e0c1':
  Sysconfig define a whitelist of permitted backup transports

Change-Id: Idcc14b5f890497a6bf59755d91f66c27f5db3451
2016-05-17 01:09:35 +00:00
Christopher Tate
b7ae368079 Merge "Sysconfig define a whitelist of permitted backup transports" into nyc-dev
am: 11d9586117

* commit '11d9586117e983e36b2467bcb436200268cd0933':
  Sysconfig define a whitelist of permitted backup transports

Change-Id: I5987e96ea1d2668037a7f924ad3ee6b5fa96bda8
2016-05-17 01:05:23 +00:00
Christopher Tate
d4056a279d Merge "Sysconfig define a whitelist of permitted backup transports" into nyc-dev
am: 11d9586117

* commit '11d9586117e983e36b2467bcb436200268cd0933':
  Sysconfig define a whitelist of permitted backup transports

Change-Id: I7c894dd6dc494dc5c02ba9e9676b53b0acc281d4
2016-05-17 01:03:59 +00:00
Chris Tate
11d9586117 Merge "Sysconfig define a whitelist of permitted backup transports" into nyc-dev 2016-05-17 00:56:49 +00:00
Svetoslav Ganov
c653375758 Merge "Ensure app op restrictions reset when the app that set them dies." into nyc-dev am: 008d73bd5b
am: 4f968024f4

* commit '4f968024f4822155e8428b9e5d8aea3114687412':
  Ensure app op restrictions reset when the app that set them dies.

Change-Id: Ia7acd68dfd29d855e26f11a36e04dde153055d62
2016-05-16 22:55:57 +00:00
Svetoslav Ganov
4f968024f4 Merge "Ensure app op restrictions reset when the app that set them dies." into nyc-dev
am: 008d73bd5b

* commit '008d73bd5b3ca4b1b7a8af61957759d65dd67e3b':
  Ensure app op restrictions reset when the app that set them dies.

Change-Id: I177256a7f65b3f5c98e5ddc5cf57a7cb47c965ab
2016-05-16 22:51:03 +00:00
Svetoslav Ganov
5f8c5ec9a4 Merge "Ensure app op restrictions reset when the app that set them dies." into nyc-dev
am: 008d73bd5b

* commit '008d73bd5b3ca4b1b7a8af61957759d65dd67e3b':
  Ensure app op restrictions reset when the app that set them dies.

Change-Id: Iebbe27690aeac898807c13ef05c730697dbb406a
2016-05-16 22:48:35 +00:00
Svetoslav Ganov
008d73bd5b Merge "Ensure app op restrictions reset when the app that set them dies." into nyc-dev 2016-05-16 22:42:49 +00:00
Michael Kwan
cc6e6f0e0a Modified AlertController to allow themes to specify custom implementation.
Bug: 17733928
Change-Id: I0264ee8ceee09dbc33da61365c424c74d2e3c3d6
2016-05-16 15:36:22 -07:00
Svetoslav Ganov
a8bbd76d9b Ensure app op restrictions reset when the app that set them dies.
We were not keeping track when an app that set an app op restriction
dies to clean up after that. As a result we may end up with stale
restrictions that will be there until the device reoots - not cool.
This change adds remote binder death tracking and simplifies the
code as adding the formed would have made more complex.

bug:28770536

Change-Id: I7dcaafba2354843a0cdf0206ab1f96625edc5120
2016-05-16 15:34:34 -07:00
Phil Weaver
1d4e18340e Content description for FloatingToobar overflow.
Was missing a content description. The same button is used for
both opening and closing the toolbar, so it needs to be updated
dynamically.

Bug: 28750935
Change-Id: I7f75701ae6af45e5621c36b81003b658479e8b31
2016-05-16 09:41:14 -07:00
Yohei Yukawa
c7aeaff113 Merge "Make IMS#clearInsetOfPreviousIme() reliable." into nyc-dev am: cef3337cb5
am: a1c905caf3

* commit 'a1c905caf3fe89beec6df12b423c6cab33c40879':
  Make IMS#clearInsetOfPreviousIme() reliable.

Change-Id: Ifbbbd96c2453a1aa6d933dda6fbd7ebbfdf132a7
2016-05-16 15:34:19 +00:00