Commit Graph

104149 Commits

Author SHA1 Message Date
Treehugger Robot
417aed2c61 Merge changes from topics "dsu_ashmem", "dsu_clean_up"
* changes:
  Use Ashmem to reduce buffer copies
  Clean up usage on deprecated GSID methods
2019-09-28 11:45:28 +00:00
atrost
a8f3c48495 Rate limit non statsd logs.
Limit 1 log per app launch as the statd logs as this is spamming logs.
Consider increasing in the future to once every x minutes/seconds if
needed.

Bug: 138374585
Bug: 141714588
Test: flash device
Change-Id: I3ed696fb557527d807d03aecc64c0207d7b93f08
2019-09-27 11:25:06 +00:00
Treehugger Robot
a828ee6442 Merge changes from topic "system_ext"
* changes:
  Consider overlay in system_ext as system's
  Support /system_ext partition
2019-09-26 22:18:07 +00:00
Tobias Thierer
52efd46075 Merge "Introduce ZygoteInit.preForkInit()." 2019-09-26 18:38:39 +00:00
Tobias Thierer
a45917eb77 Introduce ZygoteInit.preForkInit().
Until recently, I and apparently some others were under the assumption
that RuntimeInit.commonInit() runs before the Zygote fork. Actually, it
does not.

This CL introduces a method ZygoteInit.preForkInit() which runs before
the Zygote fork. For now, only enableDdms() moves into it and can become
private. This should not alter behavior since enableDdms() is called
from the same places as before, and because enableDdms() (now private)
was already not part of any API surface.

The CL also removes the qualifier "final" from the (static) method
enableDdms(), because it is redundant.

Note: This CL was uploaded with --no-verify because of preexisting
import ordering issues in RuntimeInit.java

Test: Treehugger
Change-Id: I8f637e160a2d7810feb43b6a43ec7d628af18fb8
2019-09-26 16:08:59 +01:00
atrost
6624ffa207 Refactor ChangeReporter and rate limit stats logging.
Only log once per change-package-state(resets every app launch if used
from within the app process).

Next: reset every app launch for server usage as well.

Test: using the test app.
Bug: 138374585
Change-Id: I5587f7138cf2cd8d144e88cf294e65c14bb32bfb
2019-09-26 12:59:19 +01:00
Anna Trostanetski
ef530d9fa4 Merge "Add package name based APIs to PlatformCompat." 2019-09-25 18:31:49 +00:00
atrost
12d0da3179 Add package name based APIs to PlatformCompat.
The APIs behave the same as the AppInfo APIs, and returns the change is
enabled if there is no installed package with the provided name.

Test: flashed device, used the test app, and made the API use the new
      per-package API.
Bug: 138275545

Change-Id: Ic925751dddc6c2e0996fe195a208f5c689554839
2019-09-25 16:32:07 +01:00
Treehugger Robot
1ae4c5b781 Merge "Add documentation for *.sysprop" 2019-09-25 03:01:21 +00:00
Oscar Shu
54bb8a1625 Merge "Followup to CL 1103896" 2019-09-24 22:06:27 +00:00
Jiyong Park
09c730b197 Add documentation for *.sysprop
Bug: 141246285
Test: N/A
Change-Id: Ia90dd8fc75a9caa3b90c4e3adfb1252a5b1c19c4
2019-09-24 14:52:36 +09:00
Mike Ma
a11beeca12 Merge "Add an API to dump incident report for dumpstate" 2019-09-24 01:07:25 +00:00
Mike Ma
15f83a3118 Add an API to dump incident report for dumpstate
Instead of just relying on the regular iteration through the system
services inside dumpstate, add another API to IIncidentManager
dedicated for dumpstate.

- It is only callable by dumpstate() (check the calling uid)
- It has the same behavior as the current call inside dump()

Advantages:
- More explicit function name, right next to takeIncidentReport will
  make it easier to keep them in sync.
- Nobody else can call it, make security easier.
- If dumpstate calls it explicitly, it can skip the 10 second timeout
- The regular dump() call should provide debugging data about
  incidentd itself, for example timestamps for the most recent N
  incident reports taken and the current state of the work directory,
  allowing us to debug incidentd itself.

Bug: 137493082
Test: Manually trigger a bug report, and verify
      /proto/incident_log.proto in the zip file.

Change-Id: I19139c765b53ede63d3beb3ea3ac40ada1aba42d
Merged-In: I19139c765b53ede63d3beb3ea3ac40ada1aba42d
2019-09-23 16:20:53 -07:00
Jeongik Cha
f6629839d1 Support /system_ext partition
This commit is mainly from I7a6a30bf8e8db9f2738594d187bb9148f138b8da, so
test cases and features are mostly same.

We change product_services partition name to "system_ext" because this
partition's purpose changes.

 - installing a RRO package for framework from /system_ext/overlay
 - installing apps from /system_ext/app
 - installing priv-apps from /system_ext/priv-app
 - installing permissions from
   /system_ext/etc/[default-permissions|permissions|sysconfig]

Bug: 134359158
Test: `mma` under frameworks/base/tests/[libs|privapp]-permissions
      adb sync && adb reboot
      adb shell cmd package list libraries
        => confirmed com.android.test.libs.system_ext library
      adb shell cmd package dump \
        com.android.framework.permission.privapp.tests.system_ext
        => confirmed that the package is a priv-app

Change-Id: Ibbccbba64156a7bc464ffb3785fb8fe69ebb973c
Merged-In: Ibbccbba64156a7bc464ffb3785fb8fe69ebb973c
(cherry picked from commit 9ec059ac1d)
2019-09-23 22:00:50 +00:00
xshu
b483607abe Followup to CL 1103896
Optimizes the logic that ensures the default randomized MAC is not
returned.

Bug: 137796328
Test: atest MacAddressTest
Change-Id: Ie95d7a020bfac8850b8a67e4d396de77db22e1db
2019-09-20 16:56:54 -07:00
Treehugger Robot
6265eea819 Merge "Document that SystemProperties.set() can throw RuntimeException" 2019-09-20 05:53:03 +00:00
Tom Cherry
39373b2e81 Document that SystemProperties.set() can throw RuntimeException
Bug: 140148206
Test: n/a
Change-Id: I32df2ed4979edcc0d9abc46830ebd3defc431c57
2019-09-19 08:41:44 -07:00
Treehugger Robot
e25075b2fb Merge "Exposing flickerlib classes and layer tracing to sysui" 2019-09-19 13:42:49 +00:00
Victor Hsieh
3c68afee05 Mirror fs-verity ownership UID to Java
This has been done in system/core, so mirroring for later use.
https://android-review.googlesource.com/c/platform/system/core/+/1115493

Test: compile
Bug: 112038744
Change-Id: I2d7f5d38caae0b6ada1f208b3d71d937d527716e
2019-09-18 14:33:54 -07:00
Anna Trostanetski
3cadf0d9ea Merge "Implement stats logging for Compatibility API." 2019-09-18 12:25:47 +00:00
Amit Mahajan
eeeb74a093 Merge "Fix descriptions for default SIM in global preferences" 2019-09-17 17:18:04 +00:00
Taesu Lee
0399854df0 Fix descriptions for default SIM in global preferences
Test: Not required.

Change-Id: I7f32eb495b53d13aba50b07d86e63f0549e9e6bb
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
2019-09-17 13:45:54 +09:00
Yifan Hong
bc45ac13ef Merge "VintfObject: Fix getHalNamesAndVersions doc" 2019-09-16 23:58:51 +00:00
Winson Chung
0d4ac4ec1c Exposing flickerlib classes and layer tracing to sysui
- Allow recents component to enable/disable layer tracing
- Expose flickerlib classes for use with sysui/launcher tests
- Allow trace files to be moved to a path that the client can read
- Ensure layers are flattened with depth traversal to encode ordering

Bug: 140244969
Test: atest FlickerTests
Change-Id: I7af5699ff5b8a4bc62c1a8105c67b31bc45a2236
Merged-In: Ia0934ec7c2b9484fa6c85f5aa8d9b2e5e6f7dc0f
2019-09-16 18:08:13 +00:00
atrost
e36b1a142f Implement stats logging for Compatibility API.
Add a new atom and log from both the app process API and the system server API
Bug: 136794938
Bug: 138378110
Test: statsd_testdrive 228

Change-Id: I80f07d0beb30c779c4bce70bebf2bb4ab22f6bfe
Merged-In: I80f07d0beb30c779c4bce70bebf2bb4ab22f6bfe
2019-09-16 14:55:53 +01:00
Tao Bao
7e3b406f26 Merge "Add nullability anotations" 2019-09-13 17:04:12 +00:00
Treehugger Robot
4efb0c510d Merge "Honor HDMI_CONTROL_ENABLED setting in AudioService" 2019-09-13 16:58:19 +00:00
Madhava Srinivasan
154e0193ce Honor HDMI_CONTROL_ENABLED setting in AudioService
This change updates how AudioService is updated of changes to Hdmi Cec
status (enable/disable) and availablity.

Bug: 138956107
Bug: 138373017
Test: Android TV STB: make; flashall;Volume -/+; HDMI control enable/disable.
Change-Id: Iaf83a45206be076858e13d113ba772ed5c59ef60
Merged-In: Iaf83a45206be076858e13d113ba772ed5c59ef60
2019-09-12 22:14:59 +00:00
Kyeongkab.Nam
77f1aac15d Add nullability anotations
Add missing nullability for applyPayload.

Test: manual
Change-Id: Iafce9091767bd7a31937b0be329ede6639239d73
2019-09-12 11:33:39 +09:00
Christian Wailes
d9bce3cfff Merge "Revert "Revert "Remove a misleading "flush" function.""" 2019-09-11 18:23:50 +00:00
Yifan Hong
0cdba3256c VintfObject: Fix getHalNamesAndVersions doc
Test: CTS device info collect
Bug: 140832836
Change-Id: Iddc3c36d15370baa661e485b76c490a5d2b7815c
2019-09-11 11:07:43 -07:00
Neil Fuller
28b12c347c Merge "Track changes to CountryTimeZones API" 2019-09-11 10:58:38 +00:00
Treehugger Robot
3a49014ca0 Merge "Add uhid group to system_server" 2019-09-11 09:31:23 +00:00
Treehugger Robot
980681e525 Merge "Reconcile Zygote process name code with Q release." 2019-09-10 18:48:31 +00:00
Mathieu Chartier
f7335ffb9a Merge "Rename profileSystemServer to shouldProfileSystemServer" 2019-09-10 15:34:18 +00:00
Neil Fuller
1fb1a378d1 Track changes to CountryTimeZones API
Track changes to CountryTimeZones.lookupByOffsetWithBias()
API: the method now takes an extra argument: dstOffsetMillis,
which is unused in this case.

This commit also improves the parameter names to be more descriptive.

Bug: 139091367
Test: treehugger
Change-Id: I2090965640bb389ea41bde460f380f9ea8a6b176
2019-09-10 11:57:48 +01:00
Neil Fuller
07dcc4bc0f Merge "Simplify APIs exposed for time zone lookups" 2019-09-10 10:49:27 +00:00
Neil Fuller
21316e0b65 Simplify APIs exposed for time zone lookups
The libcore.timezone APIs may form the basis for some
new SystemApis. Before starting that process the API
surface is being rationalized to establish the core
use cases.

Test: Treehugger
Bug: 139091367
Change-Id: I6c8b791524d16223c414612913b22f4d70c27d61
Merged-In: I6c8b791524d16223c414612913b22f4d70c27d61
(cherry picked from commit 400efa36ef)
2019-09-10 10:08:19 +01:00
Jiyong Park
bc099b6d59 Revert "Fix: vendor public libraries are accessible via System.loadLibrary"
This reverts commit cfe38cdb1c.

The CL 8f712189dfc02285573337e2b4ab17678011db14 in libcore project avoids
the need for adding the new paths in LoadedApk. With the CL, a classloader
does not give up even when loader.findLibrary() has failed due to some
paths are not added to it. Instead, the classloader converts the given
libname into a filename (e.g. foo -> libfoo.so) then calls dlopen()
with the filename. The classloader reports failure only when the dlopen()
call has failed. Therefore, manually adding these paths to the classloader
is no longer needed and thus removed.

Bug: 109720125
Test: System.loadLibrary("adsprpc") is successful in Pixel (because
libadsprpc.so is in Pixel's vendor public lib list)
Test: atest cts/tests/tests/jni

Merged-In: I1970eba7e732728699042a36b89571915ec81451
(cherry picked from commit 37131e1ee6)
Change-Id: I1970eba7e732728699042a36b89571915ec81451
2019-09-10 12:51:26 +09:00
Mathieu Chartier
3b05e4d74c Rename profileSystemServer to shouldProfileSystemServer
Makes it clearer and addresses previous CR comment.

Bug: 139883463
Test: make
Change-Id: I7c1a1d99cf307b89ee8f2c5c906168d196b35d0e
2019-09-09 13:05:31 -07:00
Mathieu Chartier
62b8a2a216 Merge "Add phenotype property for profiling system server" 2019-09-09 19:47:55 +00:00
Treehugger Robot
59566aba2e Merge "Fix regression in PFD#fromData" 2019-09-09 19:21:04 +00:00
Mathieu Chartier
77aca50b6f Add phenotype property for profiling system server
Added the property profilesystemserver in the RUNTIME_NATIVE_BOOT
namespace. This property is overrides the system one if it is
present.

Bug: 139883463
Test: set the property manually and verify that system server is started
Test: with profiling

(cherry picked from commit 7b31c74ddb)

Merged-In: Ifd69530e52a717a381b3f91b15a74329614906f2
Change-Id: I00594949b845a75152c7ab3c94aa84a55b072776
2019-09-09 16:25:35 +00:00
Howard Chen
ae615b32cd Use Ashmem to reduce buffer copies
Use android.os.MemoryFile to allocate Ashmem and use gsid.setAshmem and
gsid.commitGsiChunkFromAshmem to submit data.

Bug: 138976291
Test: adb shell am start-activity \
    -n com.android.dynsystem/com.android.dynsystem.VerificationActivity \
    -a android.os.image.action.START_INSTALL \
    -d file:///storage/emulated/0/Download/system.raw.gz \
    --el KEY_SYSTEM_SIZE $(du -b system.raw|cut -f1) \
    --el KEY_USERDATA_SIZE 8589934592

Change-Id: I6df718a8cc3f4e5835c9d20d0bf5bf8bb0daee22
Merged-In: I6df718a8cc3f4e5835c9d20d0bf5bf8bb0daee22
2019-09-09 18:14:48 +08:00
Howard Chen
c44ee158b9 Clean up usage on deprecated GSID methods
change: Add a oneShot argument to setEnable

remove: commit() and replace it with enableGsi

rename: removeGsiInstall -> removeGsi
rename: disableGsiInstall -> disableGsi

Bug: 138969329
Test: adb shell am start-activity \
    -n com.android.dynsystem/com.android.dynsystem.VerificationActivity \
    -a android.os.image.action.START_INSTALL \
    -d file:///storage/emulated/0/Download/system.raw.gz \
    --el KEY_SYSTEM_SIZE $(du -b system.raw|cut -f1) \
    --el KEY_USERDATA_SIZE 8589934592

Change-Id: I680013c8b1181599f0b858222bd92e31c5f085fd
Merged-In: I680013c8b1181599f0b858222bd92e31c5f085fd
2019-09-09 18:14:29 +08:00
Martijn Coenen
3b8ca2e7ac Reconcile Zygote process name code with Q release.
Some Zygote code that was pushed to AOSP master is different from the
pushed Q release. In particular, a call to set the process name for a
Zygote child was missing, causing an app zygote test to fail.

Bug: 139535125
Test: atest android.app.cts.ServiceTest#testAppZygoteServices
Change-Id: I53b0bc0116f1573cb1e52a998e10346bd5601f67
Merged-In: I2bce277ff8f2de4614e19d5385fe6712b076f9c9
2019-09-09 02:39:26 +00:00
Christian Wailes
647fee87dc Revert "Revert "Remove a misleading "flush" function.""
This reverts commit 47da177405.

Reason for revert: Fixed the test broken by the original commit

Bug: 139192244
Bug: 140336855

Test: m -> flash -> boot
Test: atest CtsJvmtiAttachingHostTestCases

Change-Id: I4c67ad8709652c4710ef24564e0240f74f817f8c
2019-09-04 23:37:32 +00:00
Ian Kasprzak
783313acbf Merge "Revert "Remove a misleading "flush" function.""
am: 9fcf8b7cae

Change-Id: Ic6fafd4ed9bf6dfc001120dced903b14cf907d1d
2019-09-02 08:47:30 -07:00
Ian Kasprzak
9fcf8b7cae Merge "Revert "Remove a misleading "flush" function."" 2019-09-02 15:28:20 +00:00
Martin Stjernholm
ca19446d9a Merge "Update path to the new ART APEX."
am: 0a4cf715f6

Change-Id: I7ab8cd227ce571041293880dfaca4e2ebb68e536
2019-09-02 03:44:58 -07:00