am: 1fab8d9
* commit '1fab8d995e74de2128b45d9cae294c8d5ccf2fc6':
Accommodate NaN in new context menu methods.
Change-Id: Ifaf625d13b5dc57cf69f10ef1af99aef4acfecb6
am: f71d7fe
* commit 'f71d7feef22db9e0cab2f32edc7440aedb86fdfe':
Ensure local settings caches are not stale
Change-Id: I356b9ad0b6dc1e91bfad140de1b9fc79ab6efef3
We used the system proterties as a shared memory mechanism
to propagate information to local settings caches when the
content has changed and the cache should be cleared. The
system properties are unfortunately updated asynchronously
leading to cases where clients may read stale data.
This change adds a simple int array data structure backed
by shared memory which guarantees individual values are
atomically read and updated without memory tear. Multi-
index opearations are not synchronized between each other.
The settings provider is using the new data structure to
propagate the settings generation which drives when caches
are purged.
We have a single memory array keeping the generation for
different settings tables per user. Since memory array is
not a compact data structure and the user space exceeds
the memory array size we use an in-memory map from keys
to indices in the memory array where the generation id of
a key is stored. A key is derived by the setting type in
the 4 most significant bits and the user id in the 28 least
significant bits.
The mapping from a key to an index is cleared if the user is
removed and the corresponding index in the memory arry is
reset to make it available for other users. The size of the
memory array is derived from the max user count that can be
created at the same time.
bug:18826179
Change-Id: I64009cc5105309ef9aa83aba90b82afc8ad8c659
am: 2d4a222
* commit '2d4a222de157c693b16ca2b35a264dd92ae6abee':
LoadedApk: Don't set up JIT profile support inside the system_server.
Change-Id: I52d0cb275f3d01a094aefed65e43a2882d00679c
We shouldn't profile *any* packages loaded by the system_server, not
just the system_servers own ("android") package.
bug: 28241500
Change-Id: I5f3f477b40c758030a5bdc8e97d17cab6e68e204
Changes the policy for selecting packages which will be pre-verified
during post-OTA boot animation.
For Nx to Ny, an app is pre-verified if used in the foreground in the
last 7 days, or if its APK was loaded by other apps.
For M to N (or early N builds without detailed stats), an app is
pre-verified if it has any recorded use in the last 7 days.
Bug: 27902702
Bug: 27350503
Change-Id: I2b38daf017ecd0e5aa5ed596ed9351cffa03dbcb
am: 3a10c1e
* commit '3a10c1e86db9843462660d825a9673a3c72ccdd6':
Track down Contexts without data directories.
Change-Id: Id6934369489b8a60e8d6ceb3de8f7774c5128ed6
am: 57413a7
* commit '57413a74777060d9368f89966e9abcf96e33af8e':
Make fake libart for misbehaving apps be loaded.
Change-Id: Iba15cda4cda9968dbe303919427ad192bb940f46
- Allow jank-free VR->VR activity transitions, even during
long activity transitions.
Bug: 28115931
Change-Id: I1e3fd1a5245bac3433ea6282cb1c7a71f0e0266f
am: 955009f
* commit '955009f9d384d1b19ebb441814ca0a3fac0fbc47':
Move EXTRA_SUBSTITUTE_APP_NAME to the published system api.
Show "Android System" instead of "System UI" in screenshot notifications.
Change-Id: I709f92bda6edd41abd8b22bbee2d4c887cb8dc1c
Data directories for all packages should be created and managed by
installd; if we create a Context and the data directory doesn't exist
yet, we're in trouble, since a later mkdirs() would end up creating
the directory with incorrect permissions, mode, and SELinux labels.
Bug: 28272737
Change-Id: Ie3bb884ab07748719378de5c792046a031a3f945
Place helper map for callback field names into a holder. This avoids
the reflective calls in static initialization of ConnectivityManager
in the common (non-debug) case, which means the class can be
compile-time initialized. Also saves the storage necessary (both
the storage array as well as the reflection metadata).
Follow-up to fcfa7d921a.
Bug: 27265238
Change-Id: Ib4bfaf27acd234a035a5d198458340099a156a4c
am: 096e2dc
* commit '096e2dcf855714577bb86eaa4869ff46b5980a07':
Disable StrictMode policy when setting up profile support
Change-Id: I430da856430046c5e2751232b427505962615b33
Currently the output is not very interesting, looking like:
ConnectivityMetricsEvent(1461591945223, 4, 5): Bundle[mParcelledData.dataSize=340]
ConnectivityMetricsEvent(1461591945289, 0, 2048): android.net.metrics.NetworkEvent@b76cd61
ConnectivityMetricsEvent(1461591945296, 4, 5): Bundle[mParcelledData.dataSize=340]
ConnectivityMetricsEvent(1461591945299, 0, 3072): android.net.metrics.DefaultNetworkEvent@e2f3086
ConnectivityMetricsEvent(1461591945527, 0, 2051): android.net.metrics.ValidationProbeEvent@884ad47
but at least it's better than nothing, and event logger users can
always implement a better toString method on their events.
This is only enabled if --events is passed into the dump.
Bug: 28204408
Change-Id: Ife96b8d54e5e91317d86b622d5efc29724969f63
am: 4ace836
* commit '4ace8366619d04d326505ad689c5d43707f2aaea':
Make "work mode on dialog" show personal challenge in unified work lock
Change-Id: I2b6fe365bf3556d9fba5ac3c2c7580ded28dc644