Commit Graph

1676 Commits

Author SHA1 Message Date
Narayan Kamath
10bdb4b9e9 am 769a2475: am b6ab8c17: am a6f5e79d: Merge "Allow connections to multiple zygotes."
* commit '769a247595cb78536fa159e8f5d54191a4ef90c6':
  Allow connections to multiple zygotes.
2014-04-09 14:24:56 +00:00
Narayan Kamath
769a247595 am b6ab8c17: am a6f5e79d: Merge "Allow connections to multiple zygotes."
* commit 'b6ab8c17bd0163bf07ff3dbe03ab352d58b61cb3':
  Allow connections to multiple zygotes.
2014-04-09 14:19:46 +00:00
Narayan Kamath
4444dcd0ad Allow connections to multiple zygotes.
Adds a new String argument "abi" to Process.start.
This method will now query the zygotes to
determine what ABIs the primary and the secondary
zygote support (the secondary is optional) and dispatch
a fork request over the right zygote connection.

Both zygotes are assumed to be active at all points.

Change-Id: I460319b4481ff1c1666e8172223691820658a35c
2014-04-09 15:07:10 +01:00
Narayan Kamath
33ea32fd4e am dc7eb9c9: am 00cfbe82: am a5608acb: Merge "Don\'t allow MemoryFiles of negative length."
* commit 'dc7eb9c947f36cbd34021663845bcbb090c3169d':
  Don't allow MemoryFiles of negative length.
2014-04-09 12:20:01 +00:00
Kenny Guy
9d43dc5e4e Merge "Finish rename of related users to profiles." 2014-04-09 11:42:40 +00:00
Narayan Kamath
dc7eb9c947 am 00cfbe82: am a5608acb: Merge "Don\'t allow MemoryFiles of negative length."
* commit '00cfbe82fa80ef57f3b1c34e47836d3e28c381b8':
  Don't allow MemoryFiles of negative length.
2014-04-09 11:33:20 +00:00
Amith Yamasani
5abdbb6560 Avoid security exception when requesting badging
When requesting badged icons, use APIs that don't require the caller
to have MANAGE_USERS permission.

Change-Id: I218cdf5194f38f4affa1874a6fcb43a040ed5295
2014-04-08 17:23:46 -07:00
Amith Yamasani
4f58263d02 Launcher APIs and broadcasts for managed profiles
UserManager
- Corp badging
- Querying list of managed profiles

Launcher API
- LauncherApps and Service to proxy changes in managed profile
  to the launcher in the primary profile
- Querying and launching launchable apps across profiles

Change-Id: Id8f7b4201afdfb5f414d04156d7b81300119289e
2014-04-08 10:51:05 -07:00
Narayan Kamath
f626ca2c96 Don't allow MemoryFiles of negative length.
Prevents us from converting a (signed) jint into an
(unsigned) size_t and having horrible things happen.

Change-Id: I0f04e2eb9852ae7fc49b435fd0974f56e86751a4
2014-04-08 16:14:10 +01:00
Ruchi Kandoi
f20a5eb279 PowerManager: add powerHint method
Add powerHint method to IPowerManager for passing power hints from other
processes.

Change-Id: Ic596ace2ed1796a6da4cddb2163dcc4536115e55
2014-04-04 20:24:16 +00:00
Paul Lawrence
f17f0e0eb0 Merge "Save OwnerInfo so CryptKeeper can display at boot time" 2014-04-04 14:05:56 +00:00
Kenny Guy
abf564ac9c Finish rename of related users to profiles.
Clean up methods left to avoid multi project commit.

Change-Id: Ibf506af2a4bcbbd7c8044b3f62a68761451242c7
2014-04-02 16:50:37 +01:00
Paul Lawrence
e51dcf98a4 Save OwnerInfo so CryptKeeper can display at boot time
Requires vold change from
  https://googleplex-android-review.git.corp.google.com/#/c/435164/

Bug: 13526708
Change-Id: I33153df9961832f72c3b8103bd5e1d3a17e77df3
2014-04-02 07:16:05 -07:00
Kenny Guy
1ccace916c Merge "Rename related users to profiles." 2014-04-02 13:06:28 +00:00
Kenny Guy
2a764949c9 Rename related users to profiles.
Rename the related user concept as profiles.
When returning profiles of a user include the
user as a profile of itself.

Change-Id: Id5d4f29017b7ca6844632ce643f10331ad733e1d
2014-04-02 13:44:50 +01:00
Narayan Kamath
b69bb44558 resolved conflicts for merge of 71ab4f4f to master
Change-Id: I888c231f7579523e12fbd68f820f0775019e51e0
2014-04-02 11:52:07 +01:00
Narayan Kamath
71ab4f4f48 am ea9e5eca: am 17b1b8fe: Merge "Move zygote startup logic to the frameworks."
* commit 'ea9e5ecac1e5240370f0e3f998b9c8b159ee9320':
  Move zygote startup logic to the frameworks.
2014-04-02 10:41:24 +00:00
Narayan Kamath
973b4663b0 Move zygote startup logic to the frameworks.
The Zygote class is now in com.android.internal.os. It is
responsible for the vast majority of work before and after
the call to fork(). It calls back into the Runtime via
the new dalvik.system.ZygoteHooks class to allow the Runtime
to perform pre fork cleanup and post fork initialization.

The native code in Zygote.cpp is a direct and straightforward
port of the existing code in art. Most differences are
superficial, for example :
- We use C style logging (ALOGE) instead of stream based
  logging.
- We call env->FatalError() instead of using LOG(FATAL)

Change-Id: Ia101fb2af12d23894fe57e4134d2bc6d142e5059
2014-04-02 10:18:43 +01:00
Paul Lawrence
945490c12e Don't double prompt on booting encrypted device
vold will store password securely until KeyGuard requests it
and hands it on to KeyStore.

This is a revision of

https://googleplex-android-review.git.corp.google.com/#/c/418123/

which was reverted. It had two bugs in LockSettingsService.checkVoldPassword.
1) We were not checking password for null, which caused an exception
2) checkPattern/checkPassword return true if there is no saved pattern or password.
   This leads to situations where we get true returned even when the password
   doesn't match. Call the correct one based on what is there, not what vold
   thinks ought to be there.

Bug: 12990752
Change-Id: I05315753387b1e508de5aa79b5a68ad7315791d4
2014-03-28 10:35:44 -07:00
Paul Lawrence
6ee7d25010 Revert "Don't prompt at boot if we already did that when decrypting"
This reverts commit 493e3e7e65.

Should fixes

Bug: 13611885
Bug: 13656830
Change-Id: I117c988bb6679f44f8add4fcc18f45cb8238dfb4
2014-03-26 22:31:04 +00:00
Dianne Hackborn
43111e897b Merge "Battery stats: wake locks, radio active, cleanup." 2014-03-24 20:42:31 +00:00
Dianne Hackborn
4590e52f3d Battery stats: wake locks, radio active, cleanup.
- Improve wake lock work source updates to also update the current
  history tag, in case the new work source gets recorded in the
  history.

- Fix bug in recording radio active time that was not distributing
  any time to apps.

- No longer hold a wake lock while dispatching data conn active call,
  since it comes with its own timestamp.

- Fix issue where the top app was not being cleared while the screen
  was off.

- Remove obsolete STATS_LAST stats type.

- Fix bug that was not clearing the total run time when resetting
  the stats.

Change-Id: Iabe17a9edf34f762374ae09fcffb8a819cf72e30
2014-03-24 13:36:46 -07:00
Chad Brubaker
ff3bb2fe95 am 7f623d6b: am 9506e84b: am c7726147: am 1fce89d9: am de4e7b49: Merge "Include the interface for clearDnsInterfaceForUidRange" into klp-dev
* commit '7f623d6b9459bc982c49f0a74aa2c9911f8e1dd8':
  Include the interface for clearDnsInterfaceForUidRange
2014-03-24 19:35:20 +00:00
Mark Renouf
3796594cd7 am a63cd9f4: Merge "Run finalizers before counting for StrictMode." into klp-modular-dev
* commit 'a63cd9f424d70a3f8ca059aa8f76b28be1f9fa07':
  Run finalizers before counting for StrictMode.
2014-03-24 15:27:45 +00:00
Mark Renouf
a63cd9f424 Merge "Run finalizers before counting for StrictMode." into klp-modular-dev 2014-03-24 15:22:55 +00:00
Dianne Hackborn
a1bd79268b Battery stats: track actually running time
Use the uptime while creating the battery stats history to
generate a new event indicating when the CPU is actually running.
We can do this in combination with the new event reporting when
the CPU comes awake, looking at the difference between the
uptime and elapsed time at that point to determine when it last
when to sleep.

Also use this information to generate a new set of aggregated
states, the uptime caused by each wake reason.

Finally use new radio down timestamp to adjust the times we
compute for radio use.  Note that this information is not (yet)
being used to adjust how these are recorded in the history.

Change-Id: I723b3b526c8e7d64de0cac9d1193e04132d5a3e4
2014-03-21 16:14:59 -07:00
Chad Brubaker
9506e84b6f am c7726147: am 1fce89d9: am de4e7b49: Merge "Include the interface for clearDnsInterfaceForUidRange" into klp-dev
* commit 'c77261471432e1577586395dd0a6a481ef7431b5':
  Include the interface for clearDnsInterfaceForUidRange
2014-03-21 21:09:41 +00:00
Chad Brubaker
c772614714 am 1fce89d9: am de4e7b49: Merge "Include the interface for clearDnsInterfaceForUidRange" into klp-dev
* commit '1fce89d946760a1bcf3a733f55494f963eab00c2':
  Include the interface for clearDnsInterfaceForUidRange
2014-03-21 21:02:43 +00:00
Chad Brubaker
1fce89d946 am de4e7b49: Merge "Include the interface for clearDnsInterfaceForUidRange" into klp-dev
* commit 'de4e7b4947998638e0345ab9a181bf35a8827bef':
  Include the interface for clearDnsInterfaceForUidRange
2014-03-21 20:56:37 +00:00
Paul Lawrence
717e0f5db7 Merge "Don't prompt at boot if we already did that when decrypting" 2014-03-21 20:40:46 +00:00
Paul Lawrence
8f1b194887 Merge "BatteryProperty: Add battery capacity property" 2014-03-20 18:11:29 +00:00
Paul Lawrence
5a43cc6ddd BatteryProperty: Add battery capacity property
Match change in native code
  https://googleplex-android-review.git.corp.google.com/#/c/427553/

Change-Id: I0049ccbbef59fbbc0e14b50b9af7481d87a6d48c
2014-03-20 18:10:06 +00:00
Dianne Hackborn
40c8725804 batstats: fix wake lock tracking, service bug
- Fix bug I introduced in handling wake lock changes where
  we weren't iterating over the new work sources correctly.
- Fix bug in ActiveServices that would wtf too much.
- Prepare to start tracking uptime in the battery history.

Change-Id: Ia94316be51bc6eab7b02f214a5c40c08e99cc3b1
2014-03-19 17:13:43 -07:00
John Spurlock
a1bfe65daa Fix javadoc @links in Vibrator.
Change-Id: I5143334735a1bcdf8252687e703c74656ff9d126
2014-03-19 19:29:34 -04:00
John Spurlock
07cf4da1d0 Merge "Add stream-level suppression to vibrate/audio services." 2014-03-19 21:58:19 +00:00
Jeff Sharkey
1be762c1ba Define an OEM directory, scan features and APKs.
To support OEM customizations, define a new top-level directory
that roughly mirrors the layout of the system partition.  Scan this
location for (non-privileged) apps, and for additional features.

Bug: 13340779
Change-Id: Idb6d6626655061ee31ad952cab734d30ea6130b9
2014-03-19 12:44:48 -07:00
John Spurlock
1af30c7ac4 Add stream-level suppression to vibrate/audio services.
- Add new audio restriction layer to app-ops.  Restrictions add
additional constraints to audio operations at a stream-level.
Restrictions do not affect the persistable state, and are purely
additive: that is, they can only impose additional contstraints, not
enable something that has already been disabled.  Restrictions
also support a whitelisted set of exempt package names.

- Add new audio stream-level checks to app-ops.

- Implement a provisional OP_PLAY_AUDIO suppression to three
java entry points MediaPlayer, AudioTrack, & SoundPool.

- Enhance vibrator api to take stream information as an optional
hint - the constants correspond to AudioManager stream types.
OP_VIBRATE now supports the stream-level restriction check.

- Simplify Vibrator subclasses by adding default implementations
for two .vibrate calls.

- Migrate NoMan's zen-mode control to use the new app-ops
stream-level restriction mechanism.

Change-Id: Ifae8952647202f728cf1c73e881452660c704678
2014-03-19 15:32:51 -04:00
Doug Zongker
dd23853e63 am 06fe82d8: am 2e6d960c: am cdf00888: add option to shutdown after factory reset
* commit '06fe82d8e01780b7b6c16364f81f8dd75d467420':
  add option to shutdown after factory reset
2014-03-18 21:00:04 +00:00
Doug Zongker
2e6d960c85 am cdf00888: add option to shutdown after factory reset
* commit 'cdf008883921c2eb7daf10c82687e9a36461eb16':
  add option to shutdown after factory reset
2014-03-18 20:49:12 +00:00
Doug Zongker
cdf0088839 add option to shutdown after factory reset
Add a new hidden method to recovery system to trigger a factory reset
followed by a shutdown, rather than a reboot back to the regular
system.  Use this flag when the MASTER_CLEAR intent is broadcast with
a boolean extra "shutdown" set to true.

Change-Id: I2ceb25b715d9f0ef492a75b3d287d1e17cec89ef
2014-03-18 12:52:04 -07:00
Dianne Hackborn
10ad98223f Start enforcing explicit intents for Context.bindService()
No longer prints a warning, now throws an exception.

Also fix a bug in UserManagerService that was causing an
exception while booting.

Change-Id: I3b43cfe08067da840b6850b9bed58664d36d34f1
2014-03-17 11:28:36 -07:00
Chad Brubaker
1b66923148 Include the interface for clearDnsInterfaceForUidRange
With netd allowing overlapping rules for uid range rules the interface
name is needed to make sure only the correct rule is removed.

Bug: 12134439
Change-Id: I94f77f154f49ca8d5f6cf49683a4473cc92c3eb7
2014-03-15 15:31:47 -07:00
Paul Lawrence
493e3e7e65 Don't prompt at boot if we already did that when decrypting
vold will store password securely until KeyGuard requests it
and hands it on to KeyStore.

Needs matching vold changes from
 https://googleplex-android-review.git.corp.google.com/#/c/432050/

Bug: 12990752
Change-Id: I930ed8180cf0b8feb1e58db043d5fb6dff1bab20
2014-03-13 13:48:19 -07:00
Jeff Sharkey
9c5c56eb51 Run finalizers before counting for StrictMode.
Otherwise we sometimes end up counting objects strongly referenced
by the finalizer queue, and falsely detecting an instance leak.

Bug: 12533002
Change-Id: I144c941a3dfb0cbb837b98e80d2f49ffc9ca13c7
(cherry picked from commit 6f3a38f3af)
2014-03-13 16:07:17 +00:00
John Spurlock
f0b56b5805 am 2fcac8ba: am b41c951f: am cb5f813b: am 0a3cb2ce: am b2bd63f0: Merge "Fix doc typos in Vibrator.java" into klp-docs
* commit '2fcac8ba6fe870d78eca7b75c0e846a229f08819':
  Fix doc typos in Vibrator.java
2014-03-12 15:19:23 +00:00
John Spurlock
b41c951fb1 am cb5f813b: am 0a3cb2ce: am b2bd63f0: Merge "Fix doc typos in Vibrator.java" into klp-docs
* commit 'cb5f813bb642e72777643dcd2bcbd92cc2039388':
  Fix doc typos in Vibrator.java
2014-03-11 19:18:59 +00:00
John Spurlock
cb5f813bb6 am 0a3cb2ce: am b2bd63f0: Merge "Fix doc typos in Vibrator.java" into klp-docs
* commit '0a3cb2ce1b2472b7e4ca6739eaeaa50975abf6ab':
  Fix doc typos in Vibrator.java
2014-03-11 17:43:46 +00:00
Dianne Hackborn
e5167ca61e Reduce wake lock noise in battery history.
When the work source of a wake lock was changed, this would
cause the old wake lock to be released in battery stats before
the new one was acquired (the power manager would correctly
keep holding the associated wake lock).  This resulted in a
pointless entry in the battery history showing the last wake
lock being released and a new one acquired.

This change adds a new path in to battery stats to report
when a wake lock has changed, allowing it to acquire the
new wake locks first before the old ones, so it can't drop
down to zero wake locks.  This also provides better timing
information, as the same current time can be used for both
operations.

In addition, added a new kind of history entry for the
current time, so you can tell when in actual world clock
time the battery data is happening.

Change-Id: Ibbf2eed83bb93f31f60267889b7bc5b9e71e355f
2014-03-11 10:02:40 -07:00
Paul Lawrence
2bc6857532 Merge "Clean up a few minor issues" 2014-03-10 16:41:22 +00:00
John Spurlock
0a3cb2ce1b am b2bd63f0: Merge "Fix doc typos in Vibrator.java" into klp-docs
* commit 'b2bd63f00631b68df3595a4369ec4802e6443bc7':
  Fix doc typos in Vibrator.java
2014-03-10 16:24:31 +00:00