Commit Graph

4519 Commits

Author SHA1 Message Date
Makoto Onuki
c7421baee7 Merge "Reduce duplicate strings due to the package cache." into oc-mr1-dev am: ce3e863f31
am: a0518fb7ac

Change-Id: I02cfeba937fac4815c55ea158dfdc9723a2a2031
2017-08-07 21:41:12 +00:00
Makoto Onuki
a0518fb7ac Merge "Reduce duplicate strings due to the package cache." into oc-mr1-dev
am: ce3e863f31

Change-Id: I67798ee72499d25bed4fc902baf7e92909dffdca
2017-08-07 21:24:33 +00:00
TreeHugger Robot
ce3e863f31 Merge "Reduce duplicate strings due to the package cache." into oc-mr1-dev 2017-08-07 21:05:42 +00:00
Jeff Sharkey
1fb3a312e7 Merge "Fix broken javadocs." into oc-mr1-dev am: b79eb54d36
am: 1ad38fe278

Change-Id: I21266d20be036196dbeddb9c4366d641ab1b68a8
2017-08-06 17:00:09 +00:00
Jeff Sharkey
1ad38fe278 Merge "Fix broken javadocs." into oc-mr1-dev
am: b79eb54d36

Change-Id: I283e3914833b01969308afbd2fad1889e0497338
2017-08-06 16:45:10 +00:00
Jeff Sharkey
67f9d5070a Fix broken javadocs.
Bug: 64337634
Test: make -j32 doc-comment-check-docs
Change-Id: I20fdd3dcddef09111d35946c41c596c7689effa6
2017-08-06 07:37:08 -06:00
Makoto Onuki
4501c61d65 Reduce duplicate strings due to the package cache.
Change from the previous attempt:
- Fixed the helper class.  The original version had a few bugs.
- Bundle.readFromParcel() now handles a Parcel with a read-write helper
properly.

** Comparison **
The following charts are the actual measurement with and without the fix,
using "dumpsys system".
- The red bar is "total private dirty".
- The X axsis is time since boot.

Without fix:
- #1 First boot:
-- https://docs.google.com/spreadsheets/d/1CbmU8cQQQw7n7tyqbZi3beRHNuzqcmJgdvzDpi40Q1I/edit#gid=1971317391
-- Private dirty stabilizes at ~16.8M.
-- Loading system packages took 1.8 seconds.

- #2 Second boot:
-- https://docs.google.com/spreadsheets/d/1CbmU8cQQQw7n7tyqbZi3beRHNuzqcmJgdvzDpi40Q1I/edit#gid=982210726
-- Private dirty stabilizes at ~17.5M.
-- Loading system packages took 0.5 seconds.

With fix:
- #3 First boot:
-- https://docs.google.com/spreadsheets/d/1R6lL0AnAp93HnrqWujJFNgOjj6wvGicgDlbDAevbc3g/edit#gid=791764875
-- Private dirty stabilizes at around the same level as #1.
-- Loading system packages took 1.9 seconds.

- #4 Second boot:
-- https://docs.google.com/spreadsheets/d/1CbmU8cQQQw7n7tyqbZi3beRHNuzqcmJgdvzDpi40Q1I/edit#gid=1820894299
-- Private dirty stabilizes at around the same level as #1.
-- Loading system packages took 0.7 seconds.

Package manager start up time with and without the fix:
- (Ignored ones that are too fast; probably the thermal throttling didn't kick in.)
- https://docs.google.com/spreadsheets/d/1CbmU8cQQQw7n7tyqbZi3beRHNuzqcmJgdvzDpi40Q1I/edit#gid=499396796
- Before: 3.5 seconds (average of 5 reboots)
- After: 3.6 seconds (average of 5 reboots)

Package scan speed comparison:
- With the fix, first boot.
08-03 08:49:56.851  1000   779   779 I PackageManager: Finished scanning system apps. Time: 2133 ms, packageCount: 143 , timePerPackage: 14 , cached: 0
08-03 08:49:56.971  1000   779   779 I PackageManager: Finished scanning non-system apps. Time: 121 ms, packageCount: 11 , timePerPackage: 11 , cached: 0

- With the fix, second boot.
08-03 08:53:29.387  1000   779   779 I PackageManager: Finished scanning system apps. Time: 484 ms, packageCount: 143 , timePerPackage: 3 , cached: 143
08-03 08:53:29.424  1000   779   779 I PackageManager: Finished scanning non-system apps. Time: 37 ms, packageCount: 11 , timePerPackage: 3 , cached: 11

** Conclusion **
- This CL wil slightly slow down the boot time (0.2 seconds on a thermal-throttled bullhead), but
the system server's ram consumption will go down to the no-cache level.

- Using the package cache is still faster than not using it.

Test: build, boot, reboot, adb-install, reboot
Test: bit FrameworksCoreTests:android.content.pm.PackageParserTest
Test: bit FrameworksServicesTests:com.android.server.pm.PackageParserTest
Test: cts-tradefed run cts-dev --skip-device-info --skip-preconditions --skip-system-status-check com.android.compatibility.common.tradefed.targetprep.NetworkConnectivityChecker -a armeabi-v7a -l INFO -m CtsOsTestCases -t android.os.cts.BundleTest

Bug: 64112468
Change-Id: I30691a032cb1dd1c7f6c1966a096c2f0d07a09cb
2017-08-04 14:19:32 -07:00
Yi Jin
8529150860 Only replace new line characters if the wakelock name contains one
The original operation creates new string everytime which is expensive

Bug: 64272195
Test: NA
Change-Id: Id93d588a7d5a6b6c192a057fcd4296bd1c508516
2017-08-04 13:27:20 -07:00
Yi Jin
a92f00b750 Merge "There must not have newline character in wakelock name" into oc-mr1-dev
am: 10841a9670

Change-Id: I832c6e037d74d44de610facc58ed4e0deda6c667
2017-08-04 02:27:58 +00:00
Yi Jin
1533ffdc3e There must not have newline character in wakelock name
Bug: 64272195
Test: N/A
Change-Id: I07a7d9b9dfbf69acba0123bf4ec6e309c2a5a359
(cherry picked from commit dd214c2d36)
2017-08-03 22:56:15 +00:00
Yi Jin
be738c5a28 Merge "There must not have newline character in wakelock name" 2017-08-03 22:53:10 +00:00
Yi Jin
dd214c2d36 There must not have newline character in wakelock name
Bug: 64272195
Test: N/A
Change-Id: I07a7d9b9dfbf69acba0123bf4ec6e309c2a5a359
2017-08-03 11:29:49 -07:00
John Reck
ccf8aa5e61 Merge "Address API review comments" into oc-mr1-dev am: dd5afab0d4
am: 639afe25f3

Change-Id: Ieb559e57ffa2cd99de05757b4e9b7a3f9ce26ceb
2017-08-03 02:28:44 +00:00
John Reck
639afe25f3 Merge "Address API review comments" into oc-mr1-dev
am: dd5afab0d4

Change-Id: Ia6f1c19275c2a06d35a344bb2e14c376c9794088
2017-08-03 02:18:54 +00:00
TreeHugger Robot
dd5afab0d4 Merge "Address API review comments" into oc-mr1-dev 2017-08-03 02:10:16 +00:00
Dianne Hackborn
84e328c9f8 Merge "Improve docs about exceptions through Binder." into oc-mr1-dev am: 6e3af279ab
am: 5a0d703564

Change-Id: I45a971a83f6431e3d9b00c83a2abfd734d3f547f
2017-08-02 18:14:26 +00:00
Dianne Hackborn
5a0d703564 Merge "Improve docs about exceptions through Binder." into oc-mr1-dev
am: 6e3af279ab

Change-Id: Ia69e8ed7db5210284fbfea95be2a2b0a7c6e3052
2017-08-02 17:59:17 +00:00
Sundong Ahn
bae17bc4e5 Merge "Merge "Merge "Add hwbinder library" am: 49e2a9a612 am: 811027ede7 am: 2785be7572" into oc-dr1-dev-plus-aosp am: a4fb234a4c" into oc-mr1-dev-plus-aosp
am: 577653628b

Change-Id: Iea878b7dd7873e5c818afd34b0a035b38cc44db9
2017-08-02 17:43:02 +00:00
Sundong Ahn
014ca608c7 Merge "Merge "Add hwbinder library" am: 49e2a9a612 am: 811027ede7 am: 2785be7572" into oc-dr1-dev-plus-aosp
am: a4fb234a4c

Change-Id: I026ca8c33ef2fce7d40e2daec8db970d6b578f25
2017-08-02 17:27:38 +00:00
John Reck
f995f9a87a Address API review comments
Also make it less error-prone to use unmap() incorrectly.
Bug: 64264008
Test: CTS tests pass

Change-Id: I21559676e7a850b76db4b61a31e43833396c6087
2017-08-02 10:24:18 -07:00
Sundong Ahn
30538850f2 Merge "Add hwbinder library" am: 49e2a9a612 am: 811027ede7
am: 2785be7572

Change-Id: Ia545b163166465cafa3d4ecbb0a5d0d911224b22
2017-08-02 17:14:55 +00:00
Sundong Ahn
2785be7572 Merge "Add hwbinder library" am: 49e2a9a612
am: 811027ede7

Change-Id: Idec0d080a65d96ff866969f47e9902e40e800fdf
2017-08-02 17:05:56 +00:00
Sundong Ahn
811027ede7 Merge "Add hwbinder library"
am: 49e2a9a612

Change-Id: I3c7528dcf98bf3b92843594172531fd30a5f29d4
2017-08-02 16:57:50 +00:00
Dianne Hackborn
18482aef9e Improve docs about exceptions through Binder.
Test: built

Change-Id: I5b6af61daa373c92f7d7b3b341a20fbd9e691da9
2017-08-01 17:46:23 -07:00
Dianne Hackborn
fe05f9e390 Merge "Fix issue #64224738: Document return value of IBinder.transact()" into oc-mr1-dev am: 47e6cc34bb
am: e4a04e87d1

Change-Id: I16ef18b31ad25254dd2009a04ffc7e532d5e2694
2017-08-01 20:58:43 +00:00
Dianne Hackborn
47e6cc34bb Merge "Fix issue #64224738: Document return value of IBinder.transact()" into oc-mr1-dev 2017-08-01 20:01:32 +00:00
Makoto Onuki
443d9cacfe Merge "Revert "Reduce duplicate strings due to the package cache."" into oc-mr1-dev am: f6764fb7f7
am: a843ab3727

Change-Id: I3fd60202b73e6905e14f908f739cb53a8fe722db
2017-08-01 16:37:17 +00:00
Makoto Onuki
f6764fb7f7 Merge "Revert "Reduce duplicate strings due to the package cache."" into oc-mr1-dev 2017-08-01 16:11:27 +00:00
Dianne Hackborn
0785389f81 Merge "Add documentation on oneway transaction ordering." into oc-mr1-dev am: 0b8f281637
am: dae5beb369

Change-Id: Ib82d76693497fd08f293d523edb5f84fb14bc815
2017-08-01 02:49:33 +00:00
Sundong Ahn
28cc6e88fd Add hwbinder library
HAL impls will depend hwbinder.jar instead of framework.jar on
build-time, but on runtime framework.jar will be used.

This is to cut the circular dependency when using configstore from
Android framework. Also added JNI call to HwBinder.java to cut
configstore's dependency on systemproperty in framework.jar.

Note that hwbinder.jar is LOCAL_UNINSTALLABLE_MODULE and so it won't be
installed in an actual image.

Bug: 35771640
Test: build & run
Change-Id: I2420298cf9df5d6bbcead3e4451b703ce9bc3e29
2017-08-01 11:26:18 +09:00
TreeHugger Robot
0b8f281637 Merge "Add documentation on oneway transaction ordering." into oc-mr1-dev 2017-08-01 02:21:21 +00:00
Makoto Onuki
63e624a61e Revert "Reduce duplicate strings due to the package cache."
The pool is just broken.... I need to fix it and re-evaluate.

This reverts commit e86a29c6e6.

Change-Id: I296df71e76ffff1d1d0fc8a50e3493e20c124a7b
2017-08-01 00:42:33 +00:00
Dianne Hackborn
4cd650c008 Fix issue #64224738: Document return value of IBinder.transact()
Also add appropriate @NonNull and @Nullable annotations.

Test: built

Change-Id: I22de48105ef685baf594cfc004dd3e27e2ba09e9
2017-07-31 17:39:17 -07:00
Dianne Hackborn
6f12f2233e Add documentation on oneway transaction ordering.
Test: built
Change-Id: I4d2e336327a4ce9c8f76d49037c894e981bdf571
2017-07-31 17:02:51 -07:00
Makoto Onuki
6afc3001b9 Merge "Reduce duplicate strings due to the package cache." into oc-mr1-dev am: bb77e6c689
am: bc939bbe7c

Change-Id: I33e1627e178ec4933c973767caada906c0a7f2e7
2017-07-31 18:12:08 +00:00
TreeHugger Robot
bb77e6c689 Merge "Reduce duplicate strings due to the package cache." into oc-mr1-dev 2017-07-31 17:52:41 +00:00
Jeff Sharkey
e2c0f95a43 Merge "Migrate plans to @SystemApi, evolve permissions." into oc-mr1-dev am: 2c131cafae
am: 284eab179c

Change-Id: Ib3f18cb1a0d92e54b4cfe3ab0e51d5364f64d547
2017-07-30 00:27:17 +00:00
Jeff Sharkey
b7479988d2 Migrate plans to @SystemApi, evolve permissions.
We're not yet ready to commit to SubscriptionPlan as public API, so
relax to be @SystemApi instead.  Add a new MANAGE_SUBSCRIPTION_PLANS
permission that we require apps to hold, unless they've been
delegated access via a trusted CarrierService.

Since several apps have the ability to provide plans for a single
subId, we now remember the "owner" who set the current plan
information, and we refuse to leak plan information beyond the app
that originally set it.

Relax permissions check to not require READ_PHONE_STATE, since we're
only returning data that an app provided to us earlier.  Also fix
NPE when SubscriptionInfo is missing.

Test: bit FrameworksServicesTests:com.android.server.NetworkPolicyManagerServiceTest
Bug: 63997177, 63928277, 64156138, 63903381
Change-Id: If503378ef406dcaec438c9b41e837e0a821a3ef4
2017-07-28 16:59:14 -06:00
Makoto Onuki
e86a29c6e6 Reduce duplicate strings due to the package cache.
The following charts are the actual measurement with and without the fix,
using "dumpsys system".
- The red bar is "total private dirty".
- The X axsis is time since boot.

Without fix:
- First boot:
https://docs.google.com/spreadsheets/d/1R6lL0AnAp93HnrqWujJFNgOjj6wvGicgDlbDAevbc3g/edit#gid=0
Private dirty stabilizes at ~16.8M.

- Second boot:
https://docs.google.com/spreadsheets/d/1R6lL0AnAp93HnrqWujJFNgOjj6wvGicgDlbDAevbc3g/edit#gid=1918404197
Private dirty stabilizes at ~17.8M.

With fix:
- First boot:
https://docs.google.com/spreadsheets/d/1R6lL0AnAp93HnrqWujJFNgOjj6wvGicgDlbDAevbc3g/edit#gid=791764875
Private dirty stabilizes at ~17.0M.

- Second boot:
https://docs.google.com/spreadsheets/d/1R6lL0AnAp93HnrqWujJFNgOjj6wvGicgDlbDAevbc3g/edit#gid=1820894299
Private dirty stabilizes at ~17.0M.

Test: build, boot, reboot, adb-install, reboot
bit FrameworksCoreTests:android.content.pm.PackageParserTest

Bug: 64112468
Change-Id: I5ae9c1b2d021fe62526d4e0dd1a52a962b48206e
2017-07-28 15:09:13 -07:00
Benjamin Miller
ae4b64ab41 Merge "Docs: Note that DISALLOW_CONFIG_VPN stops VPNs from starting" into oc-dev am: 91f16ace4f
am: 5934ae605a

Change-Id: Ia4c07afe64fd3a0a743790f1e1284bdc1db0f4c5
2017-07-28 21:15:41 +00:00
Benjamin Miller
2c2d19504c Merge "Docs: Note that DISALLOW_CONFIG_VPN stops VPNs from starting" into oc-dev am: 91f16ace4f
am: c058675b80

Change-Id: Ib052cafb46a2e7830a7573c8a112147bc821cf0c
2017-07-28 17:39:42 +00:00
Benjamin Miller
5934ae605a Merge "Docs: Note that DISALLOW_CONFIG_VPN stops VPNs from starting" into oc-dev
am: 91f16ace4f

Change-Id: Id7d2c62577e0b534a7dd6605f722e7c5639e46b7
2017-07-28 17:30:18 +00:00
Benjamin Miller
c058675b80 Merge "Docs: Note that DISALLOW_CONFIG_VPN stops VPNs from starting" into oc-dev
am: 91f16ace4f

Change-Id: I9dd5d6641307589250d781dce11c4f2186b3c8fb
2017-07-28 17:30:16 +00:00
Benjamin Miller
05fef7ed69 Docs: Note that DISALLOW_CONFIG_VPN stops VPNs from starting
VPNs don't start except a DPC's configured always-on VPN. Clarified version behaviors.
Staged at: go/dac-stage/reference/android/os/UserManager.html#DISALLOW_CONFIG_VPN

Test: make ds-docs and output staged UserManager page
Bug: 63582789
Change-Id: I83c0c6cc580b9d1d224a94e073f559f23cf4d672
(cherry picked from commit 1f83e4d498)
2017-07-28 09:56:24 +00:00
Todd Poynor
dd05582eab thermalservice: Add ThermalService java interfaces
Binder service ThermalService broadcasts thermal events to registered
listeners.

Test: manual: marlin with modified thermal-engine.conf and temporary
      java thermal event listener
Bug: 30982366
Change-Id: I11f7fd18feff3b9af0eecc3fd3a13d54c0b97ff0
2017-07-28 02:22:42 +00:00
Sudheer Shanka
a5e36b158f Merge "Track per-cluster times of each uid in microsec." 2017-07-25 20:51:24 +00:00
Makoto Onuki
a1422523bc Merge "Don't keep parceled extras for history broadcasts." into oc-mr1-dev am: 4fdefef7a1
am: f880d1f9af

Change-Id: I269a85d171d636c4286b6ed4fdc3393e09c8162b
2017-07-24 18:07:58 +00:00
Makoto Onuki
4fdefef7a1 Merge "Don't keep parceled extras for history broadcasts." into oc-mr1-dev 2017-07-24 17:42:31 +00:00
TreeHugger Robot
a404b8ad84 Merge "Docs: Note that DISALLOW_CONFIG_VPN stops VPNs from starting" 2017-07-24 17:38:47 +00:00
Benjamin Miller
1f83e4d498 Docs: Note that DISALLOW_CONFIG_VPN stops VPNs from starting
VPNs don't start except a DPC's configured always-on VPN. Clarified version behaviors.
Staged at: go/dac-stage/reference/android/os/UserManager.html#DISALLOW_CONFIG_VPN

Test: make ds-docs and output staged UserManager page
Bug: 63582789
Change-Id: I83c0c6cc580b9d1d224a94e073f559f23cf4d672
2017-07-24 12:59:42 +02:00