| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Introduce a new device idle controller service that
monitor's the device state and determines when to go
in to idle mode. When in idle mode, all we do right
now is turn off network access the same as we do for
power save mode. Many more things should come in the
future -- stopping the alarm manager from scheduling
(most) alarms, telling GmsCore for it to stop doing
stuff, etc.
Battery stats now has state tracking for devie idle
mode, as well as events for the reasons we can come
out of idle mode (significant motion or the device
becoming active). Also added new events noting when
packages are installed.
Renamed the "low power" event in battery stats to
"power save" because the former was just way too
confusing.
Finally, fix buffer size reading kernel wake locks.
(Stupidly, just increasing the buffer size. Ideally
we should try to be smarter and grow our buffer to
fit the data available, but I'll leave that for
another time.)
Change-Id: I0be2062466c83ee9d890c6cf5a228d9cc4090eca
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Any device that supports USB OTG is capable of running Ethernet
via a USB OTG cable and Ethernet to USB adapter.
Currently, we only start the Ethernet system service if the
device has FEATURE_ETHERNET, but this requires that every device
explicitly declare FEATURE_ETHERNET, which causes bugs like
http://b/18515146 , where the L OTA broke Ethernet on nakasi.
Therefore, start the Ethernet service on all devices that have
FEATURE_USB_HOST.
Bug: 18515146
Change-Id: I3b4e85d1ad8e1aea9baa046a27f5b4dd68c42028
|
|
|
|
| |
Change-Id: I031443de83f93eb57a98863001826671b18f3b17
|
|
|
|
|
|
| |
...and a few dependencies. Move remaining shared items to AudioSystem.
Change-Id: Ib9623ff867678d34977337856bb0156e8cdaeeb5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
MIDI ports are now implemented as file descriptors directly between the sender
and receiver, so the MidiService is no longer in the message path.
To facilitate the above, each port has its own file descriptor, rather than multiplexing
all ports on a device through a single socket.
Added a new class MidiDeviceServer, which is used by implementors of MIDI devices.
This replaces the MidiVirtualDevice class (which only was included in changes that were reviewed but never submitted).
The USB MIDI implementation has moved from the MIDI service to the USB service.
The USB MIDI implementation uses MidiDeviceServer as its interface, so we now have a common
interface for all MIDI device implementations.
Change-Id: I8effd1583f344beb6c940c3a24dbf20b477a6436
|
|\
| |
| |
| |
| |
| |
| | |
Telecom Loader Service
* commit '02775fca2b78af8089e9f50575ca639898f4f21c':
(Telecom-system part 3) Adding Telecom Loader Service
|
| |\
| | |
| | |
| | |
| | | |
* commit '8dd185b08fae8d41bec558ab5a63012454cbb78e':
(Telecom-system part 3) Adding Telecom Loader Service
|
| | |
| | |
| | |
| | |
| | | |
Bug: 18112269
Change-Id: I85ab03156bf906fdc72b459c4c68240ab3bf1894
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This change is to start Mountservice before starting
performBootDexOpt, as in one case, in performBootDexOpt
when system upgrade happens, StorageManager will be started to
get the low threshold of DataDir. But, at this point, as
Mountservice is still not up, StorageManager will end up
having a null object of Mountservice.
Change-Id: I6dec474266faa5de67449c1bbe6ef30791e5ecaa
|
| |\ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
service manager."
* commit 'c25cfc57e0d863b002620f5e7dd14822418c678f':
Prevent EntropyMixer from registering with service manager.
|
| | |\ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
EntropyMixer is designed to be triggered in two ways, as either the
result of a self-set timer or of one of three system broadcasts. It is not
meant to be triggered in any other way, so exposing it via servicemanager
is undesirable.
Bug: 18106000
Cherry-pick of commit: 9287e0dd272b85b475e33bcbd7d868517a0f98f9
Change-Id: I9aeb35e7ffde75090f4234ea193514fb883b1425
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Still to do:
Add MidiInputPort and MidiOutputPort classes
Schedule sending MIDI events in the future
Security/permissions
Reconsider interface for virtual devices
Look into performance optimizations
Change-Id: I9b7d63b196996a04be0a830efa913043da1328a8
|
|\ \ \ \ \ |
|
| | |_|_|/
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Commit: e4d9a01bfc7451afff1ed399a5801c7aa2af2831 introduced an
if (true) block with the intention of changing it. Remove it.
Change-Id: Ida637cb69c57b7b676f37a3397d72e0bf010523a
|
|\ \ \ \ \
| |_|/ / /
|/| | | | |
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
EntropyMixer is designed to be triggered in two ways, as either the
result of a self-set timer or of one of three system broadcasts. It is not
meant to be triggered in any other way, so exposing it via servicemanager
is undesirable.
Bug: 18106000
Change-Id: I9aeb35e7ffde75090f4234ea193514fb883b1425
|
|\ \ \ \
| |/ / /
|/| / /
| |/ /
| | | |
* commit 'edda97c9ffc4fae08744e42fdbf60040e8f97b99':
Start MountService before performBootDexOpt
|
| |\ \
| | |/
| |/| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This change is to start Mountservice before starting
performBootDexOpt, as in one case, in performBootDexOpt
when system upgrade happens, StorageManager will be started to
get the low threshold of DataDir. But, at this point, as
Mountservice is still not up, StorageManager will end up
having a null object of Mountservice.
Change-Id: I6dec474266faa5de67449c1bbe6ef30791e5ecaa
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
installd can then clear the ".booting" marker from the dalvik-cache
(owned by root). This marker is used to detect boot loops.
bug: 18280671
(cherry picked from commit 76a748e62f354c799342044f724e1f4b80121837)
Change-Id: I2364c05837ac04d428b5a34ab1802964a11d2df4
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
installd can then clear the ".booting" marker from the dalvik-cache
(owned by root). This marker is used to detect boot loops.
bug: 18280671
Change-Id: I878f1463c7f523892605c17b980a51ac3b6645e2
|
| |
| |
| |
| |
| | |
Bug: 17191977
Change-Id: I33e18459e49afa42b8e8218574a2434e5205a6da
|
| |
| |
| |
| |
| |
| |
| | |
NetworkTimeUpdateService
Bug: 17934875
Change-Id: Ie5acf7266a5766f407db8f23d2c3d26920fa4020
|
| |
| |
| |
| |
| |
| |
| |
| | |
NetworkTimeUpdateService"
This reverts commit c597c55ffeb9debcf2dba8a77a80caa9016ea4d1.
Change-Id: Idc83e582c10dda2c6245ec19921785f361a07a68
|
|/
|
|
|
|
|
| |
NetworkTimeUpdateService
Bug: 17934875
Change-Id: Ic1acff13190f38cedb1ecf22783d4dfd3373511d
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix Slog.wtf to not acquire the activity manager lock in its code
path, so that it can never deadlock. This was the original intention
of it, but part was missed.
Now we can put back in the code to detect when strict mode data is
getting large (a little more targeted now to the actual problem),
and use Slog.wtf to report it. And as a bonus, when this happens
we will now clear all of the collected violations, to avoid getting
in to the bad case where IPCs start failing. So this should be
good enough for L to fix the problem, with wtf reports for us to
see if the underlying issue is still happening.
Finally, switch a butch of stuff in the system process from Log.wtf
to Slog.wtf, since many of those are deadlocks waiting to happen.
Oh and fix a crash in the settings provider I noticed in APR.
Change-Id: I307d51b7a4db238fd1e5fe2f3f9bf1b9c6f1c041
|
|
|
|
|
| |
Bug: 17284986
Change-Id: I5efeffecfcb771cb2e6180ccfd665464611a24fc
|
|
|
|
| |
Change-Id: Ibc6e537544c2228e8b07f734158182d1e4817d17
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The power manager disables the power button until boot completed
occurs. If there are many pending broadcasts in the queue, it
may be possible for BOOT_COMPLETED to be delayed for several
seconds after boot.
To avoid the delay, introduced a new boot phase which is
sent to system services immediately when boot completed happens.
Bug: 13398280
Change-Id: I1833d2ffb20305009dd76363b43e534034f1d0a2
|
|
|
|
|
|
|
|
|
|
|
|
| |
Issue #16739817 VIS doesn't start for non-primary user(s)
Issue #16709247 GSA is not the default voice interaction agent
These are both fixed by getting rid of the existing code for applying
the default voice recognizer, moving it in to the voice interaction
manager service, and extending it to also set up the default voice
interaction service.
Change-Id: If8d5936c28aebfa7eff77c8d99241c3a2ffdb0a4
|
|
|
|
|
|
|
|
|
|
|
| |
Migrate WebViewUpdateService to the newer SystemService approach instead
of ServiceManager.addService.
Original Bug: 16403706
Original Change-Id: I21aa67a41c22c3c20ba9e82eb87e5d610fe130e8
Bug: 16723226
Change-Id: Id276b71ee547e683f0756bcee0f4978ce342c2af
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
NOT MERGE
The new API spawns a isolated process, using a custom uid, entrypoint and
abi. Such API is used by the WebViewFactory to spawn its unpriviledged
but trusted process (hence the fixed uid) which rewrites the rerlo file
on boot / when an update occurs.
Since both the ActivityManager service and the WebViewUpdate service
live in the SystemServer their calls be dispatched locally and no
binder interface needs to be exposed for the new startIsolatedProcess API.
Original BUG:16403706
Original Change-Id: I327b59735c12698595e0dbcc4da5d759c9103b0a
Bug: 16723226
Change-Id: Iecb49888e11eec9d302d9712953fd498db5821af
|
|
|
|
|
|
| |
b/16324360
Change-Id: I41dc9823820eed60406973f5edb5a71deb4b0130
|
|
|
|
|
|
|
|
| |
This change includes various fixes to first RTT implementation and
enables RTT APIs end-to-end. Fixes include proper marshalling of
objects across API and service and JNI fixes.
Change-Id: Ie4ba1ffc6c5b42593e931438b3f03e201ff6be71
|
|
|
|
| |
Change-Id: I4518c5d3c56b3821292accb886f9fb21f3a8b25f
|
|
|
|
|
|
|
|
| |
The block condition is based on FEATURE_LEANBACK instead of
FEATURE_TELEVISION which is deprecated in favor of FEATURE_LEANBACK.
Bug: 16497355
Change-Id: I433051362fe94ea453afe9344800fb4f8c7076a9
|
|
|
|
|
|
|
|
|
|
| |
UsageStats API that allows apps to get a list of packages that have been
recently used, along with basic stats like how long they have been in
the foreground and the most recent time they were running.
Bug: 15165667
Change-Id: I2a2d1ff69bd0b5703ac3d9de1780df42ad90d439
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The new MediaProjection infrastructure allows the system to hand out
tokens granting the ability to capture the screen's contents, audio,
etc. at a granular level. It's intended to be used both for screen
casting, via the cast APIs, as well as screen sharing via third party
applications.
The screen sharing case is implemented, but all of audio capturing
is still forthcoming.
Change-Id: I4b24669bed7083e11413c10ed8d6b025f5375316
|
|/
|
|
|
|
|
|
|
| |
This allows the WebViewUpdateService to receive notifications that
an update has been installed and we need to trigger recreation of
the relro file.
bug: 16329377
Change-Id: I088e61487416add997995db304beca0cde71390c
|
|
|
|
|
|
|
|
|
|
|
|
| |
Load libwebviewchromiumloader and use it to load the real WebView
library, to enable sharing of the relro segment between different
application processes without requiring that the library be preloaded in
the zygote. A system service is added to track whether the relro segment
file has been prepared, and block loading of the library until it has
been.
Bug: 13005501
Change-Id: I846b37c7b8e2a4eb8a39e4fd455bccbb2048c173
|
|
|
|
| |
Change-Id: I2a985cedf49d50649c89f2ac5fbb80a81300156d
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Permits apps with permission
android.permission.ACCESS_PERSISTENT_PARTITION to obtain
a read and write data blocks to the PST partition.
Only one block ever exists at one time in PST. When
a client writes another block, the previous one is
overwritten.
This permits storing a block of data that will live
across factory resets.
Change-Id: I8f23df3531f3c0512118eb4b7530eff8a8e81c83
|
|
|
|
|
|
| |
BUG: 15143878
Change-Id: I6c534a28c1fcd475982ae70e7f3af69f3a219e24
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The network policy manager now monitors battery save mode and,
when in battery save, uses its facility to block access to metered
networks to block access to all networks. That is, it tells the
network management service that all networks have an (infinite)
quota, and puts various app uids to be restricted under quota
interfaces as appropriate.
This new network blocking needs a new facility to be able to white
list apps, such as GmsCore. To do this, I refactored the package
manager's permission configuration stuff into a separate SystemConfig
class that can be used by others, and it now has a new tag to
specify package names that should be white-listed for power save
mode. These are retrieved by the network policy manager and used
to build a whitelist of uids.
The new general config files can now go in system/etc/config,
though currently everything still remains in the permissions dir.
Still left to be done is changing the semantics of what uids are
allowed in this mode, to include all perceptable uids. (So that we
can still do things like background music playback.) This will be
done in a follow-on CL.
Change-Id: I9bb7029f61dae62e6236da5ca60765439f8d76d2
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
The @hide was being ignored because they were being used by the
constructor. Fixed by making the FingerprintManager constructor
hidden.
Change-Id: I3cd409df5055579f5004b08d00d5d951b8e5afd3
|
| |
| |
| |
| |
| |
| | |
Apply SystemService pattern to BatteryService.
Change-Id: I4971b2da8d2aed4d14440fb65863a8b916bab03c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change fixes a bug where native daemons may try to communicate
with the power manager before it was fully initialized due to a race
between publishing the binder service and completing init().
The solution was to simplify the dependencies related to the power
manager. It turns out that most services that were passed in
init are not actually needed until systemReady. What remained
was a dependency on the activity manager to check permissions for
incoming calls. So now we start activity manager first.
However, the activity manager also depends on power manager for
wakelocks. To break the cycle, we now defer initializing the activity
manager's wakelocks until after the power manager has been started.
Cleaned up a bunch of boot-time service dependencies so that we
can have better confidence that they are correctly maintained.
Bug: 13884219
Change-Id: If08e2d7ccd44e7026a72441bb6bd5afd7bb9fffe
|